Россия (СБП, ФИО)
Выплаты по СБП на номер телефона с проверкой ФИО получателя
Перед тем как начать
Авторизация
Как подписывать запросы API-токеном.
Обзор выплат
Общий формат запроса, поля ответа и статусы.
Это направление выплат доступно не всем мерчантам. Уточните доступность у вашего менеджера и убедитесь, что на вашем балансе мерчанта достаточно средств, прежде чем создавать выплату.
Обзор
| Валюта | Направление | Тип платежа |
|---|---|---|
RUB | Номер телефона через СБП с проверкой ФИО | SBP |
Выплата выполняется в два запроса: сначала вы получаете список банков, которые принимают перевод на номер телефона получателя, затем создаёте выплату с выбранным банком и ФИО получателя.
ФИО получателя сверяется с данными банка в СБП. Если ФИО не совпадает с владельцем номера в выбранном банке, выплата перейдёт в статус FAILED, причина — в statusMessage.
Сумма выплаты — только целое число рублей (1500, а не 1500.50). Дробная сумма отклоняется с ошибкой 400 до создания выплаты.
Порядок действий
Получите список банков
GET /v1/payouts/banks?account={phone}&serviceId={serviceId}| Query-параметр | Тип | Обязательное | Описание |
|---|---|---|---|
account | string | ✅ Да | Номер телефона получателя в любом формате: 79612894744, +7 (961) 289-47-44, 89612894744 |
serviceId | number | ❌ Нет | Сервис выплат из GET /v1/payouts/services. Передавайте его, если у вас подключено несколько сервисов СБП |
curl -X GET "https://api.1capital.capital/v1/payouts/banks?account=79612894744&serviceId=123" \
-H "X-Api-Token: YOUR_API_TOKEN"{
"data": [
{ "id": "100000000008", "name": "Альфа-Банк" },
{ "id": "100000000004", "name": "Т-Банк" }
]
}Список зависит от номера телефона: в нём только банки, в которых у получателя есть счёт для переводов по СБП. Дайте получателю выбрать банк и передайте его id в account.bankName.
Создайте выплату
POST /v1/payoutscurl -X POST "https://api.1capital.capital/v1/payouts" \
-H "Content-Type: application/json" \
-H "X-Api-Token: YOUR_API_TOKEN" \
-d '{
"amount": 1500,
"currency": "RUB",
"paymentType": "SBP",
"serviceId": 123,
"externalId": "payout-123",
"account": {
"name": "Иванов Василий Семёнович",
"requisites": "79612894744",
"bankName": "100000000008",
"userId": "user_12345"
}
}'Поля account
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
name | string | ✅ Да | Имя получателя |
requisites | string | ✅ Да | Реквизиты получателя: номер карты, номер телефона, PIX-ключ и т. д. в зависимости от paymentType |
userId | string | ✅ Да | ID пользователя в вашей системе |
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
name | string | ✅ Да | ФИО получателя через пробел: «Фамилия Имя Отчество». Отчество — если есть (Иванов Василий) |
requisites | string | ✅ Да | Номер телефона получателя в любом формате |
bankName | string | ✅ Да | id банка из GET /v1/payouts/banks?account={phone}, например 100000000008 |
ФИО указывайте так, как оно записано в банке получателя: порядок слов — фамилия, имя, отчество.
Ошибки валидации
Запрос с некорректными реквизитами отклоняется с 400 до создания выплаты и списания баланса:
| Причина | Что исправить |
|---|---|
| Номер телефона не распознан | account.requisites |
| Не передан банк | account.bankName |
| В ФИО меньше двух слов | account.name |
| Сумма не целая | amount |
Ответ
В ответе возвращается стандартный объект выплаты со статусом CREATED. Сохраните id, чтобы отслеживать выплату.