Download OpenAPI specification:Download
Свои предложения и идеи о документации можно оставить в репозитории по адресу: https://github.com/Raiffeisen-DGTL/ecom-API/blob/master/payout.yaml
Bзаимодействие осуществляется по протоколу HTTP с использованием методов GET/POST (в описании каждого запроса явно указан требуемый метод и адрес).
POST-запросы используют JSON-аргументы, GET-запросы работают со строками запросов.
API всегда возвращает ответ в формате JSON, независимо от типа запроса.
Стандартный ответ сервиса содержит код сообщения (code). Если в процессе обработки запроса произойдет логическая ошибка, API вернет описание ошибки (message).
При двухстадийной обработке создается заявка на выплату, банк проверяет возможность проведения такой операции и возвращает результат. Далее ожидается подтверждение выплаты со стороны партнера. Данная схема взаимодействия подходит, когда требуется разделение создания заявки и ее согласования. Пример: менеджер создает заявку на выплату, руководитель или главный бухгалтер подтверждает выплату.
Авторизация производится посредством секретного ключа API (secretKey). Параметр авторизации указывается в заголовке Authorization, значение которого формируется как "Bearer secretKey".
Также настраивается список IP, с которых система будет пропускать запросы.
Для реализации взаимодействия с партнёром Райффайзенбанк предоставляет API из следующих запросов:
Список банков, подключенных к приему выплат по СБП, Вы сможете посмотреть на сайте https://sbp.nspk.ru/participants/ в разделе "Оплата по QR".
Мы автоматически поддерживаем актуальный список и возвращаем его в запросе на получение банков-участников.
Получение списка банков, принимающих выплаты по СБП
Authorization required | string |
alias | string [ 1 .. 255 ] characters Алиас банка |
name | string [ 1 .. 255 ] characters Наименование банка |
[- {
- "alias": "RAIFFEISEN",
- "name": "Райффайзенбанк"
}, - {
- "alias": "TINKOFF",
- "name": "Тинькофф"
}, - {
- "alias": "VTB",
- "name": "ВТБ"
}
]
Проведение выплаты. Если в запросе переданы ФИО, по ним произойдет сверка данных с данными получателя в системе. Если данные не совпадут, платеж отобъется с ошибкой.
Authorization required | string |
id | string <^[Aa-Zz0-9_-]+> non-empty Уникальный идентификатор выплаты в вашей системе, используется как номер документа в выписке |
account required | string <= 20 characters Счет, с которого будет происходить списание |
amount required | number Сумма в рублях. Действует несколько лимитов от НСПК:
|
currency required | string 3 characters Value: "RUB" Валюта платежа |
paymentDetails | string [ 1 .. 140 ] characters Назначение платежа. Значение попадает в выписку после системного префикса. Не может быть пустым или содержать только пробелы. Может сождержать: |
payoutMethod required | string non-empty Value: "SBP" Тип выплаты |
required | object |
incomeTypeCode | |
object Дополнительные данные. |
id | string Уникальный идентификатор выплаты в вашей системе, используется как номер документа в выписке |
amount | number Сумма в рублях |
currency | string 3 characters Value: "RUB" Валюта платежа |
payoutMethod | string non-empty Value: "SBP" Тип выплаты |
object | |
incomeTypeCode | |
extra | object Дополнительные данные. |
object | |
creationDate | string non-empty Дата создания |
{- "id": "1404fhr7i272a2",
- "account": "40700000000000000000",
- "amount": 1110.01,
- "currency": "RUB",
- "paymentDetails": "Выплата от страховой компании",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "RAIFFEISEN",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}
}
{- "id": "1404fhr7i272a2",
- "amount": 1110.01,
- "currency": "RUB",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "RAIFFEISEN",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}, - "status": {
- "value": "IN_PROGRESS",
- "date": "2019-07-11T17:45:13+03:00"
}, - "creationDate": "2019-07-11T17:45:13+03:00"
}
Метод позволяет создавать заявку на выплату для двухстадийного взаимодействия. При создании заявки также проводятся все необходимые проверки на возможность провести платеж. Если в запросе переданы ФИО, по ним произойдет сверка данных с данными получателя в системе. Если данные не совпадут, заявка отобъется с ошибкой. Для дальнейшей работы с заявкой необходимо смотреть на ее статус. Успешное прохождение проверок при создании заявки не гарантирует успешное проведение платежа.
Authorization required | string |
id | string <^[Aa-Zz0-9_-]+> non-empty Уникальный идентификатор выплаты в вашей системе, используется как номер документа в выписке |
account required | string <= 20 characters Счет, с которого будет происходить списание |
amount required | number Сумма в рублях. Действует несколько лимитов от НСПК:
|
currency required | string 3 characters Value: "RUB" Валюта платежа |
paymentDetails | string [ 1 .. 140 ] characters Назначение платежа. Значение попадает в выписку после системного префикса. Не может быть пустым или содержать только пробелы. Может сождержать: |
payoutMethod required | string non-empty Value: "SBP" Тип выплаты |
required | object |
incomeTypeCode | |
object Дополнительные данные. |
id | string Уникальный идентификатор выплаты в вашей системе, используется как номер документа в выписке |
amount | number Сумма в рублях |
currency | string 3 characters Value: "RUB" Валюта платежа |
payoutMethod | string non-empty Value: "SBP" Тип выплаты |
object | |
incomeTypeCode | |
extra | object Дополнительные данные. |
object | |
creationDate | string non-empty Дата создания |
{- "id": "1404fhr7i272a2",
- "account": "40700000000000000000",
- "amount": 1110.01,
- "currency": "RUB",
- "paymentDetails": "Выплата от страховой компании",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "RAIFFEISEN",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}
}
{- "id": "1404fhr7i272a2",
- "amount": 1110.01,
- "currency": "RUB",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "RAIFFEISEN",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}, - "status": {
- "value": "PENDING",
- "date": "2019-07-11T17:45:13+03:00"
}, - "creationDate": "2019-07-11T17:45:13+03:00"
}
Получение информации по платежу.
id required | string <^[Aa-Zz0-9_-]> <= 20 characters id выплаты |
Authorization required | string |
id | string Уникальный идентификатор выплаты в вашей системе, используется как номер документа в выписке |
amount | number Сумма в рублях |
currency | string 3 characters Value: "RUB" Валюта платежа |
payoutMethod | string non-empty Value: "SBP" Тип выплаты |
object | |
incomeTypeCode | |
extra | object Дополнительные данные. |
object | |
creationDate | string non-empty Дата создания |
{- "id": "1404fhr7i272a2",
- "amount": 1110.01,
- "currency": "RUB",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "RAIFFEISEN",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}, - "status": {
- "value": "COMPLETED",
- "date": "2019-07-11T17:45:13+03:00"
}, - "creationDate": "2019-07-11T17:45:13+03:00"
}
Данный метод позволяет произвести несколько выплат одним запросом. В одном пакете можно передать до 1000 выплат.
Authorization required | string |
id | string Идентификатор пакета |
account | string Номер счета |
Array of objects[ items ] Массив выплат |
id | string Идентификатор пакета |
account | string Номер счета |
Array of objects (payoutResponse) [ items ] Массив выплат |
{- "id": "b-0001",
- "account": "40700000000000000000",
- "payouts": [
- {
- "id": "1404fhr7i272a2",
- "amount": 1110.01,
- "currency": "RUB",
- "paymentDetails": "Выплата от страховой компании",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "RAIFFEISEN",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}
}, - {
- "id": "120445r7i272a2",
- "amount": 500,
- "currency": "RUB",
- "paymentDetails": "Выплата от страховой компании",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "VTB",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}
}
]
}
{- "id": "b-0001",
- "account": "40700000000000000000",
- "payouts": [
- {
- "id": "1404fhr7i272a2",
- "amount": 1110.01,
- "currency": "RUB",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "RAIFFEISEN",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}, - "status": {
- "value": "IN_PROGRESS",
- "date": "2019-07-11T17:45:13+03:00"
}, - "creationDate": "2019-07-11T17:45:13+03:00"
}, - {
- "id": "120445r7i272a2",
- "amount": 500,
- "currency": "RUB",
- "payoutMethod": "SBP",
- "payoutParams": {
- "phone": "79191234567",
- "bankAlias": "VTB",
- "firstName": "Иван",
- "middleName": "Иванович",
- "lastName": "Иванов",
- "inn": 123456789101
}, - "incomeTypeCode": "1",
- "extra": {
- "apiClient": "Payout Software",
- "apiClientVersion": "1.0.0"
}, - "status": {
- "value": "IN_PROGRESS",
- "date": "2019-07-11T17:45:13+03:00"
}, - "creationDate": "2019-07-11T17:45:13+03:00"
}
]
}
Позволяет получить данные по пакету со статусами операций.
id required | string Идентификатор пакета |
status | string Enum: "IN_PROGRESS" "COMPLETED" "DECLINED" "PENDING" Запрашиваемые статусы |
Authorization required | string |
id | string Идентификатор пакета |
account | string Номер счета |
Array of objects (payoutResponse) [ items ] Массив выплат |
{- "id": "b-0001",
- "account": "40700000000000000000",
- "payouts": [
- {
- "id": "1404fhr7i272a2",