- Created by IntellectMoney, last modified on May 24, 2024
Общая информация
Payout API позволяет проводить операции массовых выплат в сторону любых получателей.
Для того, чтобы иметь возможность совершать запросы описанные в этой документации, Вам необходимо иметь доступ к API (см. Получение доступа к API).
Все запросы PayoutAPI используют ключ доступа клиента для идентификации пользователя. Чтобы получить такой ключ необходимо воспользоваться методом getUserToken
из PersonalAPI.
Ключ имеет срок валидности, поэтому имеет смысл вызывать getUserToken
перед вызовом любого метода PayoutApi.
Любой запрос к API:
- Возвращается в виде результирующей структуры
Response
. - Поддерживает два варианта Content-Type:
application/json
иapplication/x-www-form-urlencoded
.
Схема использования методов
- Запрос ключа доступа клиента через PersonalAPI.
- Вызов метода создания операции выплаты (напр.
CreateOperation
). - Получить успешный ответ и достать из
PayoutOperationData
идентификатор созданной операции. - Вызвать метод
ExecuteOperation
и передать ему ранее полученный идентификатор чтобы отправить ранее созданную операцию на обработку. - Проверять статус операции посредством вызова
GetOperationState
.
Метод CreateOperation
Позволяет создать операцию выплаты.
Доступ к методу
URL: https://api.intellectmoney.ru/personal/payout/CreateOperation
Доступные HTTP-методы: POST
Требуемый уровень доступа: Базовый, PCI DSS
Правило формирования заголовка Sign: UserToken::PreferenceType::Pan::Account::BankId::Amount::Currency::RecipientName::EshopId::signSecretKey
Передаваемые параметры
Название | Имя параметра | Обязательный | Тип | Описание |
---|---|---|---|---|
Ключ доступа клиента | UserToken | Да | string | Токен пользователя, по которому проводится его идентификация в системе IntellectMoney. |
Способ выплаты | PreferenceType | Да | string | Способ массовых выплат (структура PreferenceType). |
Номер карты | Pan | Да, если поставщик BankCardRussia | string(12,20) | Номер банковской карты, на которую производится зачисление средств. |
Счет | Account | Да, если поставщик QiwiWallet, Sbp | string | Номер Qiwi кошелька или номер телефона СБП в зависимости от поставщика. |
Банк СБП | BankId | Да, если поставщик Sbp | string | Номер банка СБП, можно получить по ссылке. |
Сумма операции | Amount | Да | decimal | Сумма, которая будет зачислена получателю. |
Валюта операции | Currency | Да | string(3) | Строковый ISO-код валюты. |
ФИО получателя | RecipientName | Нет | string(2,50) | ФИО получателя операции. |
ID магазина | EshopId | Нет | int | ID магазина |
Возвращаемый ответ
В ответ возвращается структура Response
.
Код операции 0 - в поле Result структуры будет находится информация о созданной операции в виде PayoutOperationData
.
Код операции 2 - ошибка, причина ошибки будет содержаться в параметре Desc.
Пример
POST /personal/payout/CreateOperation HTTP/1.1 Host: api.intellectmoney.ru Accept: application/json Content-Type: application/json { "UserToken": "Obhv/VwGegZjbLobTJAYrAKqyAGN8U7HuLrplb+gjftR9wU3zWdomj6HN/aGKRj2", "ProviderType": "OutBankCard" "Pan": "4111111111111111", "Amount": "50.00", "Currency": "RUB", "RecipientName": "Иванов Иван Иванович" }
{ "OperationState": { "Code": 0, "Desc": "Успешно обработана" }, "Result": { "State": { "Code": 0, "Desc": "Успешно обработан." }, "PayoutOperationId": "2cf4b4bc-56cf-4ab6-bf4f-1b2aa9743154", "PayoutOperationState": "Created" } }
Метод ExecuteOperation
Отправить операцию выплаты на обработку.
Доступ к методу
URL: https://api.intellectmoney.ru/personal/payout/ExecuteOperation
Доступные HTTP-методы: POST
Требуемый уровень доступа: Базовый
Правило формирования заголовка Sign: UserToken::
PayoutOperationId::signSecretKey
Передаваемые параметры
Название | Имя параметра | Обязательный | Тип | Описание |
---|---|---|---|---|
Ключ доступа клиента | UserToken | Да | string | Токен пользователя, по которому проводится его идентификация в системе IntellectMoney. |
Идентификатор операции выплат | PayoutOperationId | Да | Guid | Идентификатор ранее созданной операции выплат. |
Возвращаемый ответ
В ответ возвращается структура Response
.
Код операции 0 - в поле Result структуры будет находится информация об операции в виде PayoutOperationData
.
Код операции 2 - ошибка, причина ошибки будет содержаться в параметре Desc.
Пример
POST /personal/payout/ExecuteOperation HTTP/1.1 Host: api.intellectmoney.ru Accept: application/json Content-Type: application/json { "UserToken": "4t+5WKHtcey4Ch7P2jodi3s2B4a36wnEX4pi+xCbimJlYgRpQa4QXJ202MiT4LxG", "PayoutOperationId" : "81fa5265-de0b-498d-be37-5d48f4aa3ba1" }
{ "OperationState": { "Code": 0, "Desc": "Успешно обработана" }, "OperationId": "a654fe39-42eb-4ac3-a3ec-76d148b2ba3a", "Result": { "State": { "Code": 0, "Desc": "Успешно обработан." }, "PayoutOperationId": "81fa5265-de0b-498d-be37-5d48f4aa3ba1", "PayoutOperationState": "InProcess" } }
Метод GetOperationState
Получить статус операции выплаты.
Доступ к методу
URL: https://api.intellectmoney.ru/personal/payout/GetOperationState
Доступные HTTP-методы: POST
Требуемый уровень доступа: Базовый
Правило формирования заголовка Sign: UserToken::
PayoutOperationId
::signSecretKey
Передаваемые параметры
Название | Имя параметра | Обязательный | Тип | Описание |
---|---|---|---|---|
Ключ доступа клиента | UserToken | Да | string | Токен пользователя, по которому проводится его идентификация в системе IntellectMoney. |
Идентификатор операции выплат | PayoutOperationId | Да | Guid | Идентификатор ранее созданной операции выплат. |
Возвращаемый ответ
В ответ возвращается структура Response
.
Код операции 0 - в поле Result структуры будет находится информация об операции в виде PayoutOperationData
.
Код операции 2 - ошибка, причина ошибки будет содержаться в параметре Desc.
Пример
POST /personal/payout/GetOperationState HTTP/1.1 Host: api.intellectmoney.ru Accept: application/json Content-Type: application/json { "UserToken": "Obhv/VwGegZjbLobTJAYrOzJxmECG2ixyR9AoS5SK6JpPK36hnFW4JxGZpAg/45y", "PayoutOperationId": "ad22e55f-7e54-4e3a-b04b-0142a0314376" }
{ "OperationState": { "Code": 0, "Desc": "Успешно обработана" }, "Result": { "State": { "Code": 0, "Desc": "Успешно обработан." }, "PayoutOperationId": "ad22e55f-7e54-4e3a-b04b-0142a0314376", "PayoutOperationState": "InProcess" } }
Метод DeleteOperation
Удалить операцию массовых выплат (Разрешено удалять только операции в статусе MassPaymentOperationState.Created
).
Доступ к методу
URL: https://api.intellectmoney.ru/personal/payout/DeleteOperation
Доступные HTTP-методы: POST
Требуемый уровень доступа: Базовый
Правило формирования заголовка Sign: UserToken::
PayoutOperationId
::signSecretKey
Передаваемые параметры
Название | Имя параметра | Обязательный | Тип | Описание |
---|---|---|---|---|
Ключ доступа клиента | UserToken | Да | string | Токен пользователя, по которому проводится его идентификация в системе IntellectMoney. |
Идентификатор операции выплат | PayoutOperationId | Да | Guid | Идентификатор ранее созданной операции выплат. |
Возвращаемый ответ
В ответ возвращается структура Response
.
Код операции 0 - в поле Result структуры будет находится результат выполнения операции в виде Boolean
.
Код операции 2 - ошибка, причина ошибки будет содержаться в параметре Desc.
Пример
POST /personal/payout/DeleteOperation HTTP/1.1 Host: api.intellectmoney.ru Accept: application/json Content-Type: application/json { "UserToken": "Obhv/VwGegZjbLobTJAYrOzJxmECG2ixyR9AoS5SK6JpPK36hnFW4JxGZpAg/45y", "PayoutOperationId": "81fa5265-de0b-498d-be37-5d48f4aa3ba1" }
{ "OperationState": { "Code": 0, "Desc": "Успешно обработана" }, "Result": true }
Структуры PayoutAPI
PayoutOperationData
Структура с данными операции выплат.
Название | Тип | Описание |
---|---|---|
PayoutOperationId | Guid | Идентификатор операции выплаты в системе IntellectMoney |
PayoutOperationState | MassPaymentOperationState | Текущий статус операции |
ErrorMessage | String | Сообщение о причине ошибке операции (если есть) |
MassPaymentOperationState
Перечисление возможных статусов операции выплат.
Значение | Описание |
---|---|
Created | Операция создана |
SentToBank | Запрос на проведение операции отправлен в банк |
InProcess | Заявка принята банком и исполняется |
Completed | Операция успешно завершена |
Failed | Ошибка обработки |
NotEnoughMoney | У пользователя недостаточно средств, для совершения операции |
Deleted | Операция удалена |
PreferenceType
Значение | Описание |
---|---|
OutBankCard | Выплата на банковскую карту |
OutQiwiWallet | Выплата на Qiwi кошелек |
OutSbp | Выплаты на СБП |
- No labels