Оплата Цифровым рублем через редирект
Платежный сервис Роутер поддерживает оплату Цифровым рублем с платежной страницы.
Оплата с помощью Цифрового рубля всегда производится в определенный (целевой) банк. При этом платежи с использованием цифровых рублей происходят через универсальный QR-код сети Системы быстрых платежей (СБП). Таким образом для платежей цифровым рублем и СБП-платежей в настройках партнера в Платежном сервисе должен быть указан один и тот же банк. Для изменения этого банка необходимо обратиться в техподдержку. Текущие настройки можно узнать, отправив запрос /settings/getRouterParams.do.
Схема интеграции

Включение способа оплаты Цифровым рублем на платежной странице
Чтобы оплата Цифровым рублем была доступна на платежной странице Платежного сервиса, необходимо в запросе регистрации заказа указать в параметре allowedPaymentWays среди прочих способов оплаты значение "UNIQR_C2B". Ниже приведен пример запроса.
1. Клиент инициирует покупку товара или услуги на сайте Партнера.
2. Партнер отправляет в Платежный сервис Роутер запрос на регистрацию заказа: register.do для одностадийной оплаты или registerPreAuth.do для двухстадийной оплаты. Подробнее об этих видах оплаты см. в разделе Двухстадийные платежи.
Для того чтобы на платежной странице появилась кнопка для оплаты Цифровым рублем, при регистрации заказа в параметре allowedPaymentWays среди прочих способов оплаты должен быть добавлен способ оплаты "UNIQR_C2B".
Пример запроса:
curl -X POST 'https://api.router.rbsuat.com/v1/register.do' -H 'Content-Type: application/json' \
--data-raw '{
"orderNumber": "order_123508",
"amount": 10000,
"currency": "643",
"language": "ru",
"returnUrl": "https://mybestmerchantreturnurl.com/success",
"failUrl": "https://mybestmerchantreturnurl.com/fail",
"userName": "test_user",
"password": "test_user_password",
"allowedPaymentWays": [
"UNIQR_C2B",
"CARD_BINDING",
"CARD"
]
}'3. Платежный сервис Роутер проверяет данные Партнера и регистрирует заказ.
Перенаправление на платежную страницу
4. Платежный сервис Роутер передает Партнеру ссылку на платежную страницу.
Пример ответа:
{
"errorCode": "0",
"formUrl": "https://router.rbsuat.com/wl/payment.html?mdOrder=f9584546-2613-4a0d-896f-0194d243865f&language=ru",
"orderId": "f9584546-2613-4a0d-896f-0194d243865f",
"orderNumber": "order_123508"
}5. Партнер перенаправляет Клиента на платежную страницу.
Выбор оплаты Цифровым рублем
6. Клиент переходит на платежную страницу.
7. Клиент (платежная страница) запрашивает в Платежном сервисе параметры платежа.
8. Платежный сервис Роутер передает на платежную страницу данные о доступных способах оплаты.
9. Клиент выбирает платежный инструмент СБП - Универсальный QR.

Оплата Цифровым рублем
10. Клиент запрашивает в Платежном сервисе QR код.
11. Платежный сервис Роутер осуществляет выбор банка, в котором у Партнера настроен прием СБП платежей.
12. Платежный сервис Роутер отправляет в выбранный банк запрос на регистрацию заказа.
13. Банк передает в Платежный сервис Роутер результат регистрации заказа.
14. Платежный сервис Роутер отправляет в выбранный банк запрос на генерацию QR кода.
15. Выбранный банк генерирует одноразовый динамический QR код и отправляет результат в Платежный сервис Роутер.
16. Платежный сервис Роутер отправляет QR код на платежную страницу Клиента.

17. Клиент (платежная страница) периодически запрашивает статус QR кода в Платежном сервисе.
18. Платежный сервис Роутер запрашивает статус QR кода в банке.
19. Банк возвращает статус QR кода в Платежный сервис Роутер.
20. Платежный сервис Роутер отправляет статус QR кода на платежную страницу Клиента. Если статус не изменен, возвращение на шаг 18. Если изменен — переход на шаг 21.
21. После изменения статуса QR кода Платежный сервис Роутер перенаправляет Клиента на финальную страницу в зависимости от результата платежа: в случае ошибки на failUrl, а в случае успешной оплаты на returnUrl. При этом к URL адресу будет добавлен query-параметр orderId=[идентификатора заказа в Платежном сервисе].
Финальный статус заказа
22. Клиент (финальная страница) запрашивает в Платежном сервисе финальный статус операции методом getOrderStatusExtended.do.
23-25. Платежный сервис Роутер запрашивает в банке статус заказа и отправляет его на финальную страницу Клиента.