• Почему может не выполняться метод refund кастомной платёжной системы в 1С-Битрикс?

    @by_ruiner Автор вопроса
    После долгого дебага и танцев с бубном, вернул код обработчика в исходное состояние и всё заработало. Вообще не понял как это дело пофиксилось.

    Возвраты по факту работают даже если они не настроены на странице "Настройки возвратов" в админке. Как я понял, имплементация методов интерфейса IRefundExtended используется, если возвраты как-то нужно тюнить и настраивать под себя (как в примере с обработчиком yandex - они там какие-то сертификаты загружают), но у меня была простая логика с запросом в банк, поэтому интерфейса IRefund и его метода refund хватило.

    В итоге реализация следующего вида получилась:
    namespace Sale\Handlers\PaySystem;
    
    class BCCHandler extends PaySystem\ServiceHandler implements PaySystem\IRefund
    {
    
        // стандартные методы для оплаты...
    
        /**
         * Обработчик возврата в админ-панели
         * @param Payment $payment
         * @param $refundableSum
         * @return PaySystem\ServiceResult
         */
        public function refund(Payment $payment, $refundableSum)
        {
            $result = new PaySystem\ServiceResult();
            // логика возврата....
            return $result;
        }
    }


    На странице "Настройки возвратов" моя платёжка не светится, но для решения моей задачи оказалось, что это и не требуется.
    Написано
  • Почему может не выполняться метод refund кастомной платёжной системы в 1С-Битрикс?

    @by_ruiner Автор вопроса
    PetrPo, спасибо! Теперь хотя бы появились идеи куда можно копать)
    Написано
  • Почему может не выполняться метод refund кастомной платёжной системы в 1С-Битрикс?

    @by_ruiner Автор вопроса
    PetrPo, а что вы имели ввиду под "если возврат настроен правильно". Вижу рядом с "Платёжными системами" в админке раздел "Настройка возвратов", но там пусто. В документации написано "запись на странице появляется в том случае, если обработчик платежной системы поддерживает настройку возврата и для него выполнены настройки подключения" - но как эти настройки выполнить и где они вообще выполняются не нашёл. Не подскажете куда посмотреть / почитать о настройке возвратов?
    Написано