Доступные события

beforeProcessRequest Вызывается перед обработкой нотификации при оплате через интернет-магазин. Если обработчик события вернёт ошибочный результат, то дальнейшая обработка нотификаций не производится.
onNotification Вызывается при получении нотификации при оплате через компонент без использования модуля "Интернет-магазин".
afterGetInitParams Позволяет модифицировать параметры перед формированием ссылки на оплату.
afterBuildReceipt Вызывается после создания массива чека.
onBeforeActionAuthorize Перед обработкой авторизованной оплаты
onBeforeActionRefund Перед запуском логики обработки оплаты, по которой сделали возврат.
onBeforeActionPay Перед обработкой подтверждённой оплаты оплаты.
onBeforeActionFail Перед обработкой оплаты, платеж по которой не прошёл.

Пример кастомизации данных, передаваемых для печати чека

Заменяем все позиции на одну общую.

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler('rover.tinkoff', 'afterBuildReceipt', array('RoverReceipt', 'fix'));

class RoverReceipt
{
    /**
     * @param \Bitrix\Main\Event $event
     * @return \Bitrix\Main\EventResult
     */
    function fix(Bitrix\Main\Event $event)
    {
        /** @var \Bitrix\Sale\Order $order */
        $parameters = $event->getParameters();
        $order      = $parameters[0];
        $fields     = $parameters[1];
        $items      = $fields['Items'];

        $fields['Items'] =  [
            [
                'Name'      => 'Гайки и болты',
                'Price'     => $order->getPrice() * 100,
                'Quantity'  => 1,
                'Amount'    => $order->getPrice() * 100,
                'Tax'       => $items[0]['Tax']
            ]
        ];

        $parameters[1] = $fields;

        return new Bitrix\Main\EventResult(Bitrix\Main\EventResult::SUCCESS, $parameters, 'rover.tinkoff');
    }
}

Пример обработчика для смены статуса заказа при оплате, если он находится в статусе "новый"

\Bitrix\Main\EventManager::getInstance()->addEventHandler('rover.tinkoff', 'onBeforeActionPay', function (\Bitrix\Main\Event $event){
    $params     = $event->getParameters();
    $payment    = $params[1];
    $order      = $payment->getOrder();

    // если заказ не в статусе "новый", возвращаем свой статус и стандартная обработка не производится
    // иначе после обработчика продолжится выполнение стандартной логики
    if ($order->getField('STATUS_ID') != 'N')
        $params[2] = \Bitrix\Sale\PaySystem\ServiceResult::MONEY_COMING;

    return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, $params);
});

Пример обработчика для получения нотификаций в младших редакциях

\Bitrix\Main\EventManager::getInstance()->addEventHandler('rover.tinkoff', 'onNotification', function (\Bitrix\Main\Event $event){
    $request     = $event->getParameter('request');
    
    ...

});