Skip to Content

Данные QR по счёту

POST /Card/Handlers/{invoiceId}/sbp

Возвращает данные QR для оплаты счёта. Идемпотентно по построению: QR собирается из существующей checkout-сессии счёта, повторный вызов отдаёт тот же — новая сессия оставила бы плательщика с двумя QR, из которых работает чужой.

Токен проверяется до обращения к БД: пока он не подошёл, о существовании счёта сообщать нельзя — иначе по ответам перебираются идентификаторы.

⚠️ Тела запроса и ответа — контракт песочницы (документы платформы описывают только адреса и смысл). Конверт взят от JSON v3. sandbox_confirm_url существует только в песочнице: настоящего СБП здесь нет, и без перехода по этому адресу виджет не довести до paid.

Параметры запроса

ПолеТипОбяз.Описание
invoiceIdstringдаИдентификатор счёта
Пример ответа
{ "success": true, "data": { "reference": "0d0f3c58-9b1e-4a77-9a0c-000000000001", "method": "sbp", "screen": "qr", "deeplink_url": "https://pay-sandbox.digitalspb.com/checkout/0d0f3c58-9b1e-4a77-9a0c-000000000003/sbp/confirm", "qr_payload": "https://pay-sandbox.digitalspb.com/checkout/0d0f3c58-9b1e-4a77-9a0c-000000000003/sbp/confirm", "price": { "amount": "100.00", "currency": "RUB", "vat_included": true }, "merchant_order_id": "ORDER-000000001", "expires_at": "2026-09-21T12:00:00Z", "poll_interval_seconds": 5, "sandbox_confirm_url": "https://pay-sandbox.digitalspb.com/checkout/0d0f3c58-9b1e-4a77-9a0c-000000000003/sbp/confirm" } }

Коды ответов

КодОписание
201Данные QR
401Токен не подошёл
404Счёт не найден либо у него нет сессии оплаты