СБП
Введение
Вы можете принимать платежи через СБП (Систему Быстрых Платежей) Национальной Системы Платежных Карт (НСПК). В этом случае вместо ввода карточных данных на платежной странице в браузере клиент сканирует динамический QR-код и производит оплату. Если используется мобильное приложение, клиент нажимает на кнопку оплаты СБП и переходит по ссылке, выбирая приложение банка для оплаты.
Чтобы включить возможность принимать платежи через СБП, обратитесь в службу технической поддержки.
Схемы интеграции
Оплата на платёжной странице
- Клиент оформляет заказ и переходит к оплате.
- Мерчант отправляет в Платежный шлюз запрос на регистрацию заказа register.do.
- В ответе на запрос регистрации Платежный шлюз возвращает уникальный идентификатор заказа в платёжной системе (в параметре
orderId
) и URL, на который необходимо перенаправить Клиента для получения платёжной формы (в параметреformUrl
). - Система Мерчанта передаёт браузеру Клиента redirect на URL (см. Шаг 3).
- Браузер Клиента запрашивает платёжную форму по указанному URL.
- Браузер отображает платёжную страницу, где Клиент выбирает оплату через СБП.
- Платёжная страница запрашивает у Платежного шлюза QR-код.
- Платежный шлюз отправляет в НСПК запрос QR-кода.
- НСПК возвращает ответ на запрос QR-кода.
- Клиенту на платёжной странице отображается QR-код или (в случае мобильного приложения) кнопка для оплаты.
- Клиент считывает QR-код при помощи специализированного ПО или (в случае мобильного приложения) нажимает кнопку, после чего производит оплату.
- Платежный шлюз получает ответ с результатом оплаты.
-
Если оплата прошла неуспешно, то уменьшается количество попыток оплаты и Платежный шлюз направляет callback о неуспешной оплате системе Мерчанта.
Если оплата прошла успешно, Шаги 13–14 пропускаются и выполняется переход на Шаг 15.
Если у Мерчанта настроена отправка уведомлений (callbacks, email), то отправляется уведомление Клиенту о неуспешной оплате заказа. Процесс останавливается.
Платежный шлюз направляет в НСПК запрос о конечном статусе платежа.
НСПК возвращает callback со статусом платежа.
Платежный шлюз переводит заказ в состояние "Завершен".
Платежный шлюз направляет callback об успешной оплате системе Мерчанта.
Если у Мерчанта настроена отправка уведомлений (callbacks, email), то отправляется уведомление Клиенту об успешной оплате заказа.
Оплата с вводом данных на стороне Мерчанта
- Клиент оформляет заказ и переходит к оплате.
- Мерчант отправляет в Платежный шлюз запрос на регистрацию заказа register.do.
- В ответе на запрос регистрации Платежный шлюз возвращает уникальный идентификатор заказа в платежной системе (в параметре
orderId
). - Мерчант перенаправляет Клиента на свою платёжную форму.
- Клиент выбирает оплату через СБП.
- Мерчант направляет в Платежный шлюз запрос на получение QR-кода sbp/c2b/qr/dynamic/get.do
- Платежный шлюз отправляет в НСПК запрос QR-кода.
- НСПК возвращает ответ на запрос QR-кода.
- Платежный шлюз возвращает в систему Мерчанта ответ на запрос QR-кода.
- Клиенту отображается QR-код или (в случае мобильного приложения) кнопка для оплаты.
- Клиент считывает QR-код при помощи специализированного ПО или (в случае мобильного приложения) нажимает кнопку, после чего производит оплату.
- Платёжный шлюз получает ответ c результатом оплаты.
-
Если оплата прошла не успешно, то уменьшается количество попыток оплаты и Платежный шлюз направляет callback о неуспешной оплате системе Мерчанта.
Если оплата прошла успешно, Шаги 13–14 пропускаются и выполняется переход на Шаг 15.
Если у Мерчанта настроена отправка уведомлений (callbacks, email), то отправляется уведомление Клиенту о неуспешной оплате заказа.
Мерчант запрашивает у Платёжного шлюза статус платежа sbp/c2b/qr/dynamic/status.do.
Платежный шлюз возвращает callback со статусом платежа.
Если у Мерчанта настроена отправка уведомлений (callbacks, email), то отправляется уведомление Клиенту об успешной оплате заказа.
Отмена запроса на оплату
- Клиент желает отменить заказ/оплату по уже созданному QR-коду.
- Мерчант отправляет в Платежный шлюз запрос на отмену QR-кода sbp/c2b/qr/dynamic/reject.do, передавая
mdOrder
иqrId
. - Платежный шлюз проверяет возможность отмены QR-кода.
- Платежный шлюз запрашивает статус QR-кода.
-
НСПК присылает ответ: Статус QR = ACWP (см. Статусы заказа).
Если в ответе пришел другой статус, переход на Шаг 8.
Платежный шлюз присваивает заказу статус = Завершен.
Платежный шлюз отправляет ответ с ошибкой отмены.
-
НСПК присылает ответ: Статус QR = RCVD (см. Статусы заказа).
Если в ответе пришел другой статус, переход на Шаг 10.
Платежный шлюз отправляет ответ с ошибкой отмены.
НСПК присылает ответ: Статус QR = RJCT или NTST (см. Статусы заказа).
Платежный шлюз обновляет статус QR-кода: Статус QR=REJECTED_BY_USER.
Платежный шлюз отправляет ответ с успешной отменой.
НСПК присылает уведомление об успешной оплате
НСПК присылает ответ со статусом QR = ACWP (см. Статусы заказа).
Платежный шлюз запрашивает автовозврат.
НСПК уведомляет Платежный шлюз об успешном возврате.
После отмены QR-кода заказ снова можно оплачивать любыми, ранее доступными способами оплаты, в том числе вновь начать СБП C2B оплату регистрацией нового QR-кода.
Статус | Описание |
---|---|
NTST | NOT STARTED. Выставляется при создании QR-кода |
RCVD | RECIEVED. Операция в обработке, Клиент отсканировал QR-код |
ACWP | ACCEPTED. Операция завершена, оплата прошла успешно |
RJCT | REJECTED. Операция отклонена. Считается как попытка оплаты |
Возврат денежных средств
- Мерчант отправляет в Платежный шлюз запрос на возврат денежных средств refund.do.
- Платежный шлюз отправляет в НСПК запрос возможности возврата оплаты.
- НСПК отправляет ответ на запрос.
- Платежный шлюз обновляет историю транзакции.
- В случае успешного ответа на запрос возможности возврата Платежный шлюз отправляет в НСПК запрос возврата денежных средств.
- НСПК отправляет ответ на запрос.
- Платежный шлюз обновляет историю транзакции.
- Платежный шлюз возвращает результат выполнения операции возврата.
Если на Шаге 2 или Шаге 5 будет получена ошибка, то после обновления истории транзакции Платежный шлюз отправляет в систему Мерчанта errorCode=7 - "Системная ошибка".
API методы
Получить QR-код для оплаты по СБП
Для получения динамического QR-кода для оплаты через СБП используется запрос https://vtb.rbsuat.com/payment/rest/sbp/c2b/qr/dynamic/get.do
.
При выполнении запроса необходимо использовать заголовок:
Content-Type: application/json
Параметры запроса
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | userName |
String [1..100] | Логин учетной записи API продавца. |
Обязательно | password |
String [1..200] | Пароль учетной записи API продавца. |
Обязательно | mdOrder |
String [1..36] | Номер заказа в платежном шлюзе. Уникален в пределах платежного шлюза. |
Необязательно | account |
String | Счет юридического лица. |
Необязательно | memberId |
String | Идентификатор банка-участника СБП. |
Необязательно | tspMerchantId |
String | Идентификатор ТСП. |
Необязательно | paymentPurpose |
String [1..140] | Дополнительная информация от мерчанта. Если не заполнено, то по умолчанию будет подставлено описание заказа, если оно присутствует. |
Необязательно | redirectUrl |
String [1..1024] | Cсылка для автоматического возврата из приложения банка в приложение или на сайт мерчанта. При некорректном заполнении параметр передаётся в значении "null". Пример корректного заполнения: "redirectUrl"="http(s)://test.ru/", "redirectUrl"="mybee://finance.com?sbpId=123123/", "redirectUrl"="mybee://finance?sbpId=1968310434". Примеры некорректного заполнения: "redirectUrl"="httpsы://test.ru/","redirectUrl"="1". |
Необязательно | qrHeight |
String | Высота QR-кода в пикселях. Укажите этот параметр, если хотите получить визуализированный QR-код в формате PNG. Минимальное значение - 10. Максимальное значение - 1000. |
Необязательно | qrWidth |
String | Ширина QR-кода в пикселях. Укажите этот параметр, если хотите получить визуализированный QR-код в формате PNG. Минимальное значение - 10. Максимальное значение - 1000. |
Необязательно | qrFormat |
String | Формат QR-кода. Укажите этот параметр, если хотите получить визуализированный QR-код в формате PNG. Допустимые значения:
|
Необязательно | createSubscription |
Boolean | Создается ли связка (банковский счет плательщика привязывается к его идентификатору в системе магазина). Допустимые значения:
|
Параметры ответа
Обязательность | Название | Тип | Описание |
---|---|---|---|
Необязательно | errorCode |
Integer [1..2] | Информационный параметр в случае ошибки, который может иметь разные кодовые значения:
|
Необязательно | errorMessage |
String [1..512] | Информационный параметр, являющийся описанием ошибки в случае возникновения ошибки. Значение errorMessage может варьироваться, поэтому не следует явным образом ссылаться на его значения в коде. Язык описания задается в параметре language запроса. |
Необязательно | payload |
String | Содержимое QR-кода. Этот параметр возвращается, если qrStatus = STARTED . |
Необязательно | qrId |
String | Идентификатор QR-кода. |
Необязательно | qrStatus |
String | Статус оплаты по QR-коду. Допустимые значения:
|
Необязательно | renderedQr |
String | QR-код в формате PNG, закодированный в формате, указанном в параметре qrFormat . Если формат не указан, по умолчанию используется image . Этот параметр возвращается, если запрос содержит qrHeight и qrWidth и если qrStatus = STARTED . |
Примеры
Пример запроса
curl --request POST \
--url https://vtb.rbsuat.com/payment/rest/sbp/c2b/qr/dynamic/get.do \
--header 'Content-Type: application/json' \
--data '{
"userName": "test_user",
"password": "test_user_password",
"mdOrder": "04888d6f-7920-7531-8332-8de901efddd0",
"qrFormat": "image"
}'
Пример успешного запроса
{
"qrId": "54d14bae6f7f4a73929308e9afa5915d",
"payload": "https://qr.nspk.ru/54d14bae6f7f4a73929308e9afa5915d",
"qrStatus": "STARTED"
}
Получение статуса СБП-платежа
Для получения статуса СБП-платежа с помощью динамического QR-кода используется запрос https://vtb.rbsuat.com/payment/rest/sbp/c2b/qr/status.do
.
При выполнении запроса необходимо использовать заголовок:
Content-Type: application/json
Параметры запроса
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | userName |
String [1..100] | Логин учетной записи API продавца. |
Обязательно | password |
String [1..200] | Пароль учетной записи API продавца. |
Обязательно | mdOrder |
String [1..36] | Номер заказа в платежном шлюзе. Уникален в пределах платежного шлюза. |
Необязательно | qrId |
String | Идентификатор QR-кода. |
Параметры ответа
Обязательность | Название | Тип | Описание |
---|---|---|---|
Необязательно | errorCode |
Integer [1..2] | Информационный параметр в случае ошибки, который может иметь разные кодовые значения:
|
Необязательно | errorMessage |
String [1..512] | Информационный параметр, являющийся описанием ошибки в случае возникновения ошибки. Значение errorMessage может варьироваться, поэтому не следует явным образом ссылаться на его значения в коде. Язык описания задается в параметре language запроса. |
Необязательно | qrStatus |
String | Статус оплаты по QR-коду. Допустимые значения:
|
Необязательно | qrType |
String | Тип QR-кода. Допустимые значения:
DYNAMIC . |
Необязательно | transactionState |
String | Статус заказа. Допустимые значения:
|
Примеры
Пример запроса
curl --request POST \
--url https://vtb.rbsuat.com/payment/rest/sbp/c2b/qr/status.do \
--header 'Content-Type: application/json' \
--data '{
"userName": "test_user",
"password": "test_user_password",
"mdOrder": "04888d6f-7920-7531-8332-8de901efddd0",
"qrId": "3946c0c02d1042f7b7e63cc0f1b52a95"
}'
Пример успешного запроса
{
"qrType": "DYNAMIC",
"qrStatus": "ACCEPTED",
"transactionState": "DEPOSITED"
}
Отклонение СБП-платежа
Для отклонения платежа СБП с помощью динамического QR-кода, используется запрос https://vtb.rbsuat.com/payment/rest/sbp/c2b/qr/dynamic/reject.do
.
При выполнении запроса необходимо использовать заголовок:
Content-Type: application/json
Параметры запроса
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | userName |
String [1..100] | Логин учетной записи API продавца. |
Обязательно | password |
String [1..200] | Пароль учетной записи API продавца. |
Обязательно | mdOrder |
String [1..36] | Номер заказа в платежном шлюзе. Уникален в пределах платежного шлюза. |
Необязательно | qrId |
String | Идентификатор QR-кода. |
Параметры ответа
Обязательность | Название | Тип | Описание |
---|---|---|---|
Необязательно | errorCode |
Integer [1..2] | Информационный параметр в случае ошибки, который может иметь разные кодовые значения:
|
Необязательно | errorMessage |
String [1..512] | Информационный параметр, являющийся описанием ошибки в случае возникновения ошибки. Значение errorMessage может варьироваться, поэтому не следует явным образом ссылаться на его значения в коде. Язык описания задается в параметре language запроса. |
Обязательно | rejected |
Boolean | Указывает результат операции отклонения платежа. Допустимые значения:
true , QR-код получает статус REJECTED_BY_USER . |
Примеры
Пример запроса
curl --request POST \
--url https://vtb.rbsuat.com/payment/rest/sbp/c2b/qr/dynamic/reject.do \
--header 'Content-Type: application/json' \
--data '{
"userName": "test_user",
"password": "test_user_password",
"mdOrder": "04888d6f-7920-7531-8332-8de901efddd0",
"qrId": "3946c0c02d1042f7b7e63cc0f1b52a95"
}'
Пример успешного запроса
{
"rejected": true
}
Создание статического QR-кода для оплаты SBP
Для создания статического QR-кода для оплаты СБП используется запрос https://vtb.rbsuat.com/payment/rest/templates/createTemplate.do
.
При выполнении запроса необходимо использовать заголовок:
Content-Type: application/json
Параметры запроса
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | userName |
String [1..100] | Логин учетной записи API продавца. |
Обязательно | password |
String [1..200] | Пароль учетной записи API продавца. |
Обязательно | name |
String [1..140] | Наименование шаблона. |
Необязательно | startDate |
String | Дата начала действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты можно создать заказ и осуществить оплату по шаблону QR-кода. |
Необязательно | endDate |
String | Дата окончания действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты, статус QR-кода – EXPIRED
|
Обязательно | type |
String [1..10] | Тип шаблона. Допустимое значение: SBP_QR . |
Необязательно | amount |
Integer [0..10] | Сумма платежа в минимальных единицах валюты (например, в копейках). |
Необязательно | currency |
String [3] | Буквенный код валюты платежа ISO 4217. Если не указан, считается равным 643 (российский рубль). |
Необязательно | distributionChannel |
String [1..256] | Канал распространения. Канал продажи. Поле имеет свободный формат и заполняется значениями в соответствии с внутренними справочниками. Позволяет строить статистику по продажам. |
Необязательно | qrTemplate |
Object | Блок с параметрами шаблона для QR-кода. См. вложенные параметры. |
Ниже приведены параметры блока qrTemplate
(данные о размере QR-кода).
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | qrHeight |
String | Высота QR-кода в пикселях. Укажите этот параметр, если хотите получить визуализированный QR-код в формате PNG. Минимальное значение - 10. Максимальное значение - 1000. |
Обязательно | qrWidth |
String | Ширина QR-кода в пикселях. Укажите этот параметр, если хотите получить визуализированный QR-код в формате PNG. Минимальное значение - 10. Максимальное значение - 1000. |
Параметры ответа
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | name |
String [1..140] | Наименование шаблона. |
Обязательно | type |
String [1..10] | Тип шаблона. Допустимое значение: SBP_QR . |
Обязательно | templateId |
String [1..32] | Идентификатор шаблона соответствует зарегистрированному QR-коду в СБП. |
Обязательно | status |
String [7..16] | Статус шаблона. Допустимые значения:
|
Необязательно | distributionChannel |
String [1..256] | Канал распространения. Канал продажи. Поле имеет свободный формат и заполняется значениями в соответствии с внутренними справочниками. Позволяет строить статистику по продажам. |
Необязательно | startDate |
String | Дата начала действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты можно создать заказ и осуществить оплату по шаблону QR-кода. |
Необязательно | endDate |
String | Дата окончания действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты, статус QR-кода – EXPIRED
|
Обязательно | qrTemplate |
Object | Блок с параметрами шаблона для QR-кода. См. вложенные параметры. |
Ниже приведены параметры блока qrTemplate
(данные о размере QR-кода).
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | payload |
String [1..999] | Содержимое QR-кода платежной ссылки. |
Условие | renderedQr |
String [1..255] | QR-код в формате PNG, закодированный в Base64. Этот параметр возвращается, если запрос содержит qrHeight и qrWidth и если status = ACTIVE . |
Коды ответа HTTP в случае ошибок:
- 1 - неверный запрос
- 2 - обязательный параметр отсутствует
Примеры
Пример запроса
curl --request POST \
--url https://vtb.rbsuat.com/payment/rest/templates/createTemplate.do \
--header 'Content-Type: application/json' \
--data '{
"username": "test_user",
"password": "test_user_password",
"type": "SBP_QR",
"name": "Test template",
"distributionChannel": "Test distribution channel",
"currency": "RUB",
"qrTemplate": {
"qrHeight": 15,
"qrWidth": 15
}
}'
Пример успешного запроса
{
"templateId": "BS1A002R685NUVE58NNA6O3DF8ELMGUE",
"name": "Test template",
"distributionChannel": "Test distribution channel",
"startDate": "2022-01-02T11:32:00",
"endDate": "2122-03-01T11:49:50",
"type": "SBP_QR",
"status": "ACTIVE",
"qrTemplate": {
"renderedQr":"iVBORw0...CYII=",
"payload": "https://qr.nspk.ru/BS1A002R685NUVE58NNA6O3DF8ELMGUE"
}
}
Получение данных шаблона
Для получения данных шаблона используется запрос https://vtb.rbsuat.com/payment/rest/templates/getTemplateDetails.do
.
При выполнении запроса необходимо использовать заголовок:
Content-Type: application/json
Параметры запроса
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | userName |
String [1..100] | Логин учетной записи API продавца. |
Обязательно | password |
String [1..200] | Пароль учетной записи API продавца. |
Обязательно | templateId |
String [1..32] | Идентификатор шаблона соответствует зарегистрированному QR-коду в СБП. |
Параметры ответа
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | errorCode |
Integer [1..2] | Информационный параметр в случае ошибки, который может иметь разные кодовые значения:
|
Обязательно | errorMessage |
String [1..512] | Информационный параметр, являющийся описанием ошибки в случае возникновения ошибки. Значение errorMessage может варьироваться, поэтому не следует явным образом ссылаться на его значения в коде. Язык описания задается в параметре language запроса. |
Необязательно | amount |
Integer [0..10] | Сумма платежа в минимальных единицах валюты (например, в копейках). |
Необязательно | currency |
Integer [3] | Код валюты платежа ISO 4217. Если не указано, то используется значение по умолчанию. |
Необязательно | distributionChannel |
String [1..256] | Канал распространения. Канал продажи. Поле имеет свободный формат и заполняется значениями в соответствии с внутренними справочниками. Позволяет строить статистику по продажам. |
Необязательно | endDate |
String | Дата окончания действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты, статус QR-кода – EXPIRED
|
Обязательно | name |
String [1..140] | Наименование шаблона. |
Необязательно | startDate |
String | Дата начала действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты можно создать заказ и осуществить оплату по шаблону QR-кода. |
Обязательно | status |
String [7..16] | Статус шаблона. Допустимые значения:
|
Обязательно | templateId |
String [1..32] | Идентификатор шаблона соответствует зарегистрированному QR-коду в СБП. |
Обязательно | type |
String [1..10] | Тип шаблона. Допустимое значение: SBP_QR . |
Обязательно | useDate |
String | Дата последнего использования шаблона. |
Примеры
Пример запроса
curl --request POST \
--url https://vtb.rbsuat.com/payment/rest/templates/getTemplateDetails.do \
--header 'Content-Type: application/json' \
--data '{
"userName": "test_user",
"password": "test_user_password",
"templateId": "886d674089f64538a055ec9494759ed"
}'
Пример запроса
{
"templateId": "886d674089f64538a055ec9494759ed",
"name": "Test template",
"distributionChannel": "test distribution channel",
"startDate": "2022-01-02T11:32:00",
"endDate": "2122-03-01T11:49:50",
"type": "SBP_QR",
"status": "ACTIVE",
"qrTemplate": {
"payload": "https://qr.nspk.ru/886d674089f64538a055ec9494759ed"
}
Изменение данных статического QR-кода
Для изменения шаблона используется запрос https://vtb.rbsuat.com/payment/rest/templates/updateTemplate.do
.
При выполнении запроса необходимо использовать заголовок:
Content-Type: application/json
Параметры запроса
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | userName |
String [1..100] | Логин учетной записи API продавца. |
Обязательно | password |
String [1..200] | Пароль учетной записи API продавца. |
Обязательно | name |
String [1..140] | Наименование шаблона. |
Необязательно | startDate |
String | Дата начала действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты можно создать заказ и осуществить оплату по шаблону QR-кода. |
Необязательно | endDate |
String | Дата окончания действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты, статус QR-кода – EXPIRED
|
Необязательно | templateId |
String [1..32] | Идентификатор шаблона соответствует зарегистрированному QR-коду в СБП. |
Обязательно | status |
String [7..16] | Статус шаблона. Допустимые значения:
|
Параметры ответа
Обязательность | Название | Тип | Описание |
---|---|---|---|
Обязательно | errorCode |
Integer [1..2] | Информационный параметр в случае ошибки, который может иметь разные кодовые значения:
|
Обязательно | errorMessage |
String [1..512] | Информационный параметр, являющийся описанием ошибки в случае возникновения ошибки. Значение errorMessage может варьироваться, поэтому не следует явным образом ссылаться на его значения в коде. Язык описания задается в параметре language запроса. |
Обязательно | name |
String [1..140] | Наименование шаблона. |
Необязательно | amount |
Integer [0..10] | Сумма платежа в минимальных единицах валюты (например, в копейках). |
Необязательно | currency |
Integer [3] | Код валюты платежа ISO 4217. Если не указано, то используется значение по умолчанию. |
Необязательно | distributionChannel |
String [1..256] | Канал распространения. Канал продажи. Поле имеет свободный формат и заполняется значениями в соответствии с внутренними справочниками. Позволяет строить статистику по продажам. |
Необязательно | endDate |
String | Дата окончания действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты, статус QR-кода – EXPIRED
|
Необязательно | startDate |
String | Дата начала действия шаблона в формате "yyyy-MM-dd'T'HH:mm:ss". Начиная с этой даты можно создать заказ и осуществить оплату по шаблону QR-кода. |
Обязательно | status |
String [7..16] | Статус шаблона. Допустимые значения:
|
Обязательно | templateId |
String [1..32] | Идентификатор шаблона соответствует зарегистрированному QR-коду в СБП. |
Обязательно | type |
String [1..10] | Тип шаблона. Допустимое значение: SBP_QR . |
Обязательно | useDate |
String | Дата последнего использования шаблона. |
Примеры
Пример запроса
curl --request POST \
--url https://vtb.rbsuat.com/payment/rest/templates/updateTemplate.do \
--header 'Content-Type: application/json' \
--data '{
"username": "test_user",
"password": "test_user_password",
"name": "Test template",
"templateId": "cfa97cdf2a964661b79d9ba54205e1eb",
"status": "ACTIVE"
}
}'
Пример успешного запроса
{
"templateId": "cfa97cdf2a964661b79d9ba54205e1eb",
"name": "Test local template_133_update",
"amount": 60000,
"currency": "RUB",
"distributionChannel": "test distribution channel",
"startDate": "2022-01-02T11:32:00",
"endDate": "2022-03-12T15:18:00",
"useDate": "2022-02-02T17:16:59",
"type": "SBP_QR",
"status": "ACTIVE",
"qrTemplate": {
"payload": "https://qr.nspk.ru/cfa97cdf2a964661b79d9ba54205e1eb"
}
}