B2C

Оплата с привязанного счёта по инициативе торгово-сервисного предприятия (ТСП)

Песочница
POST https://sandbox.alfabank.ru/api/sbp/jp/v1/petitions
Пром
POST https://baas.alfabank.ru/api/sbp/jp/v1/petitions
Scope

c2b-sbp

Параметры запроса
HEADERS
Атрибут
Описание
Authorization
stringrequired
Accept
stringrequired

application/json

Content-Type
stringrequired

application/json

BODY
Атрибут
Описание
termNo
stringrequired

Номер терминала

amount
integerrequired

Сумма платежа в копейках

currency
stringrequired

Код валюты. Возможные значения:

  • •
    RUR - российский рубль
paymentPurpose
stringrequired

Назначение платежа. Максимальное количество символов - 120

ttl
integeroptional

Срок жизни платёжной ссылки в минутах

objectoptional

Данные запроса

notificationUrl
stringoptional

Полный URL для получения уведомления о финальном статусе оплаты QR-кода. Если параметр отсутствует, уведомление не производится

redirectUrl
stringoptional

Ссылка для автоматического возврата в приложение или на сайт торгово-сервисного предприятия (ТСП)

subscriptionToken
stringrequired

Идентификатор привязки счёта, назначенный банком плательщика ранее на этапе оформления привязки счёта

senderMemberId
stringrequired

Идентификатор банка плательщика

messageId
stringoptional

Уникальный идентификатор сообщения

Пример запроса
Язык
1curl --location 'https://baas.alfabank.ru/api/sbp/jp/v1/petitions' \
2--header 'Authorization: Bearer {access-token}' \
3--header 'Content-Type: application/json' \
4--header 'Accept: application/json' \
5--data '{
6  "termNo": "30000600",
7  "amount": 10000,
8  "currency": "RUR",
9  "paymentPurpose": "Назначение платежа",
10  "ttl": 4320,
11  "queryData": {
12    "notificationUrl": "http://10.8.18.33:9017/sbp-payment/agent/status"
13  },
14  "redirectUrl": "https://exampletsp.io/qwertyui",
15  "subscriptionToken": "70LSS7DN18SJQRS10006DNPKLJL24B05",
16  "senderMemberId": "100000000001",
17  "messageId": "123Rersal_Num567"
18}'
Параметры ответа
Пример ответа 201 (Created)
1{
2  "termNo": "30000600",
3  "qrcId": "AS1000670LSS7DN18SJQDNP4B05KLJL2",
4  "payload": "https://qr.nspk.ru/AS1000670LSS7DN18SJQDNP4B05KLJL2",
5  "image": "iVBORw0KGgoAAAANSUhEUgAABEoAAARKCAIAAAQA/w…...YII",
6  "payrrn": "000000020512"
7}
BODY
атрибут
описание
termNo
stringrequired

Номер терминала

qrcId
stringrequired

Идентификатор QR-кода

payload
stringrequired

Платёжная ссылка

image
stringrequired

Изображение QR-кода в формате Base64

payrrn
stringrequired

Референсный идентификатор запроса в системе Банка

Пример ответа 201 (Created)
1{
2  "termNo": "30000600",
3  "qrcId": "AS1000670LSS7DN18SJQDNP4B05KLJL2",
4  "payload": "https://qr.nspk.ru/AS1000670LSS7DN18SJQDNP4B05KLJL2",
5  "image": "iVBORw0KGgoAAAANSUhEUgAABEoAAARKCAIAAAQA/w…...YII",
6  "payrrn": "000000020512"
7}
BODY
атрибут
описание
error
stringrequired

Код ошибки. Принимает возможные значения:

  • •
    invalid_request - неверные входные параметры запроса
error_description
stringoptional

Описание ошибки

Пример ошибки 400 (Bad Request)
1{
2  "error": "invalid_request",
3  "error_description": "Authorization header is not present in request headers"
4}
BODY
атрибут
описание
error
stringrequired

Код ошибки. Принимает возможные значения:

  • •
    invalid_token - предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам. Необходимо получить новый токен доступа
error_description
stringoptional

Описание ошибки

Пример ошибки 401 (Unauthorized)
1{
2  "error": "invalid_token",
3  "error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
4}
BODY
атрибут
описание
error
stringrequired

Код ошибки. Принимает возможные значения:

  • •
    insufficient_scope - при запросе токена доступа не были переданы все необходимые scopes. Необходимо повторно отправить запрос на получение токена доступа с указанием всех доступных scopes
error_description
stringoptional

Описание ошибки

Пример ошибки 403 (Forbidden)
1{
2  "error": "insufficient_scope",
3  "error_description": "The request requires higher privileges than provided by the access token"
4}
BODY
атрибут
описание
error
stringrequired

Код ошибки. Принимает возможные значения:

  • •
    unknown_endpoint - эндпоинт не найден или неактивен
error_description
stringoptional

Описание ошибки

Пример ошибки 404 (Not Found)
1{
2  "error": "unknown_endpoint",
3  "error_description": "Endpoint is not found or not active"
4}
Нет тела ответа
BODY
атрибут
описание
error
stringrequired

Код ошибки. Принимает возможные значения:

  • •
    internal_error - внутренняя ошибка сервиса при выполнении обработки запроса
error_description
stringoptional

Описание ошибки

Пример ошибки 500 (Internal Server Error)
1{
2  "error": "internal_error",
3  "error_description": "Internal server error"
4}
Нет тела ответа