@alexgodman

Как правильно написать обработчик оплаты в битриксе?

Пишу обработчик оплаты для кредитования. Нашел ссылки как его надо писать.
курс
документация
Так понял что старый вариант обработчиков
d7

В итоге написал такую байду
<?php

namespace Sale\Handlers\PaySystem;

use Bitrix\Main\Request;
use Bitrix\Sale\PaySystem;
use Bitrix\Sale\Payment;
use Bitrix\Sale;
use Bitrix\Sale\PaySystem\ServiceResult;

class tcreditHandler extends PaySystem\ServiceHandler
{
    public function initiatePay(Payment $payment, Request $request = null)
    {
        AddMessage2Log('TcreditHandler initiatePay()');
        $params = array('URL' => $this->getUrl($payment, 'pay'));
        $this->setExtraParams($params);

        return $this->showTemplate($payment, "template");
    }

    public static function getIndicativeFields()
    {
        AddMessage2Log('TcreditHandler getIndicativeFields()');
        return array('BX_HANDLER' => 'CREDIT');
    }

    public function getCurrencyList()
    {
        AddMessage2Log('TcreditHandler getCurrencyList()');
    }

    public function processRequest(Payment $payment, Request $request)
    {
        AddMessage2Log('TcreditHandler processRequest()');
    }

    public function getPaymentIdFromRequest(Request $request)
    {
        AddMessage2Log('TcreditHandler  getPaymentIdFromRequest()');
    }
}

закинул данную структуру в bitrix/php_interface/include/sale_payment
609289e843f82480427283.png

Насколько я понял после создания заказа на странице должен отрабатывать метод initiatePay и отдавать html из шаблона template.php, однако этого почему-то не происходит. По логам отрабатывает только getCurrencyList();
60928afa541a9137270463.png

Посмотрел как это сделано у модуля эквайринга от тинкоффа, там обработчик лежит в payment.php и отовсюду к нему подключаются другие файлы, однако если скопировать структуру и просто переименовать папку и классы все также не работает.
Может обработчик зарегистрировать как-то нужно?

Заранее благодарю за помощь.
  • Вопрос задан
  • 1077 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы