Реализация под Битрикс была сделана на основе информации из этой статьи.
Функционал потребовался для создании ссылки для оплаты в мобильном приложении. Мобильное приложение обращается к сайту на платформе Битрикса.
- Получим ссылку на оплату заказа, для этого вызовем
$response = (new PaySystem\Sber())->registerOrder($orderId);
- В ответе будет formUrl, это поле с ссылкой на оплату в системе Сбера, она то нам и понадобится
- Перейдём по ссылке, оплатим (есть тестовые карты), произойдет редирект обратно на сайт - по той ссылке, которую указали в методе getReturnUrl().
- На странице, куда нас перекинуло после оплаты, необходимо добавить проверку статуса оплаты.
PaySystem\Sber::getOrderStatus($orderId);
При регистрации заказа используется идентификатор заказа на сайте, а при проверке необходим идентификатор заказа из системы Сбера.
Как вариант, можно создать новый HL-блок, который будет хранить оба идентификатора и на странице с проверкой статуса будет удаление этой записи, в случае получения успешной оплаты со стороны Сбера.
Рекомендую к прочтению документацию от Сбера.