# Тестирование выплат через СБП
Особенности работы сервиса выплат через СБП в тестовом режиме:
Для активации тестового режима необходимо обратиться в Службу поддержки (opens new window);
Запрос на получение списка банков возвращает список из 5 банков;
Для успешного запроса с ФИО и получения статуса выплаты
successнеобходимо использовать телефон+79001234567, при использовании иного теелфона будет получен статус транзакцииfail;Для успешного запроса без ФИО и получения статуса выплаты
successнеобходимо использовать телефон+79007654321, при использовании иного теелфона будет получен статус транзакцииfail. На запрос статуса в ответе возвращается ФИОИван Иванович Иванов;
# Получение списка банков
Авторизация - XAuth (opens new window).
| Параметр | Тип | Обязателен | Описание |
|---|---|---|---|
| bankName | string | Нет | Наименование банка по которому необходимо проводить фильтрацию, можно указать неполное название, метод вернет все подходящие варианты. При фильтрации регистр игнорируется |
Запрос на получение списка банков:
GET https://secure.mandarinpay.com/api/sbp/banks/
Ответ в случае успешного создания запроса:
{
"banks": [
{
"bankId": "100000000008",
"bankName": "Альфа-Банк",
"bankBic": "044525593"
},
{
"bankId": "100000000005",
"bankName": "ВТБ",
"bankBic": "044525187"
},
{
"bankId": "100000000004",
"bankName": "Т-Банк",
"bankBic": "044525974"
},
{
"bankId": "100000000007",
"bankName": "Райффайзен Банк",
"bankBic": "044525700"
},
{
"bankId": "100000000111",
"bankName": "Сбербанк",
"bankBic": "044525225"
}
]
}
Запрос на получение определённого банка:
GET https://secure.mandarinpay.com/api/sbp/banks?bankName=Сбербанк
Ответ в случае успешного создания запроса:
{
"banks": [
{
"bankId": "100000000111",
"bankName": "Сбербанк",
"bankBic": "044525225"
}
]
}
# Создание выплаты с ФИО
| Параметр | Обязателен |
|---|---|
| customerInfo | Да |
| customerInfo.phone | Да |
| customerInfo.email | Да |
| customerInfo.firstName | Да |
| customerInfo.lastName | Да |
| customerInfo.middleName | Да |
| payment | Да |
| payment.action | Да |
| payment.orderId | Да |
| payment.price | Да |
| target | Да |
| target.sbp | Да |
| target.sbp.bankId | Да |
| target.sbp.bankBic | Да |
Запрос:
POST https://secure.mandarinpay.com/api/transactions
{
"customerInfo": {
"phone": "+79001234567",
"email": "test@test.com",
"firstName": "Иванов",
"lastName": "Иван",
"middleName": "Иванович"
},
"payment": {
"orderId": "your_unique_order_id",
"price": "10.00",
"action": "payout"
},
"target": {
"sbp": {
"bankId": "100000000111",
"bankBic": "044525225"
}
}
}
Ответ в случае успешного создания транзакции (200 ОК):
{
"id": "43913ddc000c4d3990fddbd3980c1725"
}
Ответ в случае, если транзакция не создана (400 Bad request):
{
"error": "Invalid request"
}
Ответ в случае попытки создания выплаты с уже существующим значением orderId (400 Bad Request):
{
"error": "Duplicate order id 5f2fdcf6-0b78-4dd7-be9f-212c7c058001 found for incomplete payout transaction",
"errorCode": -2
}
# Создание выплаты без ФИО
Выплаты без ФИО осуществляются в два этапа - создание транзакции и её подтверждение или отмена после проверки статуса и данных.
| Параметр | Обязателен |
|---|---|
| customerInfo | Да |
| customerInfo.phone | Да |
| customerInfo.email | Да |
| payment | Да |
| payment.action | Да |
| payment.orderId | Да |
| payment.price | Да |
| target | Да |
| target.sbp | Да |
| target.sbp.bankId | Да |
| target.sbp.bankBic | Да |
Запрос:
POST https://secure.mandarinpay.com/api/transactions
{
"customerInfo": {
"phone": "+79007654321",
"email": "test@test.com"
},
"payment": {
"orderId": "your_unique_order_id",
"price": "10.00",
"action": "payout"
},
"target": {
"sbp": {
"bankId": "100000000111",
"bankBic": "044525225"
}
}
}
Ответ в случае успешного создания транзакции (200 ОК):
{
"id": "43913ddc000c4d3990fddbd3980c1725"
}
Ответ в случае, если транзакция не создана (400 Bad request):
{
"error": "Invalid request"
}
Ответ в случае попытки создания выплаты с уже существующим значением orderId (400 Bad Request):
{
"error": "Duplicate order id 5f2fdcf6-0b78-4dd7-be9f-212c7c058001 found for incomplete payout transaction",
"errorCode": -2
}
# Проверка статуса запроса без ФИО
Запрос на проверку статуса:
После создания выплаты без ФИО необходимо проверить статус, если телефон был указан тестовый из документации +79007654321, то статус будет success, если указан иной, то на запрос статуса будет получен fail
GET https://secure.mandarinpay.com/api/sbp/43913ddc000c4d3990fddbd3980c1725/status
Ответ в случае успеха:
{
"status": "success",
"fio": "Иван Иванович Иванов"
}
Ответ в случае неуспеха:
{
"status": "fail",
"fio": null
}
# Подтверждение выплаты без ФИО
Запрос на подтверждение выплаты:
После получения успешного статуса необходимо подтвердить выплату, чтобы получателю ушли средства.
POST https://secure.mandarinpay.com/api/sbp/43913ddc000c4d3990fddbd3980c1725/confirm
Ответ в случае успешного подтверждения выплаты (200 ОК)
# Отмена выплаты без ФИО
Выплату можно отменить, если еще не был отправлен запрос на подтверждение confirm.
Запрос на отмену выплаты:
POST https://secure.mandarinpay.com/api/sbp/43913ddc000c4d3990fddbd3980c1725/reject
Ответ в случае успешной отмены выплаты (200 ОК):
{
"id": "43913ddc000c4d3990fddbd3980c1725"
}