Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Общая информация


Payout API позволяет проводить операции массовых выплат в сторону любых получателей.

Note

Для того, чтобы иметь возможность совершать запросы описанные в этой документации, Вам необходимо иметь доступ к API (см. Получение доступа к API).


Note

Все запросы PayoutAPI используют ключ доступа клиента для идентификации пользователя. Чтобы получить такой ключ необходимо воспользоваться методом getUserToken из PersonalAPI

Ключ имеет срок валидности, поэтому имеет смысл вызывать getUserToken перед вызовом любого метода PayoutApi.

Любой запрос к API:

  1. Возвращается в виде результирующей структуры Response.
  2. Поддерживает два варианта Content-Type: application/json и application/x-www-form-urlencoded.


Схема использования методов


Image Modified

  1. Запрос ключа доступа клиента через PersonalAPI.
  2. Вызов метода создания операции выплаты (напр. CreateOperation).
  3. Получить успешный ответ и достать из PayoutOperationData идентификатор созданной операции.
  4. Вызвать метод ExecuteOperation и передать ему ранее полученный идентификатор чтобы отправить ранее созданную операцию на обработку.
  5. Проверять статус операции посредством вызова GetOperationState.

Метод CreateOperation


Anchor
CreateOperation
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)

Номер банковской карты, на которую производится зачисление средств.
Требуемый уровень доступа: PCI DSS

Счет

Account

Да, если поставщик QiwiWallet, Sbp

string

Номер Qiwi кошелька или номер телефона СБП в зависимости от поставщика.

Банк СБП

BankId

Да, если поставщик Sbp

string

Номер банка СБП, можно получить по ссылке.

Сумма операции

Amount

Да

decimal

Сумма, которая будет зачислена получателю.

Валюта операции

Currency

Да

string(3)

Строковый ISO-код валюты.

ФИО получателя

RecipientName

Нет

string(2,50)

ФИО получателя операции.

Поставщик

ID магазина

ProviderType

EshopId

Да

Нет

string

Поставщик массовых выплат (структура ProviderType).

int

ID магазина

Возвращаемый ответ

В ответ возвращается структура Response.

Код операции 0 - в поле Result структуры будет находится информация о созданной операции в виде PayoutOperationData.

Код операции 2 - ошибка, причина ошибки будет содержаться в параметре Desc.

Пример

Code Block
languagejs
titleПример запроса
collapsetrue
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": "Иванов Иван Иванович", 
    "ProviderType": 0  
}


Code Block
languagejs
titleПример ответа
collapsetrue
{
    "OperationState": {
        "Code": 0,
        "Desc": "Успешно обработана"
    },
    "Result": {
        "State": {
            "Code": 0,
            "Desc": "Успешно обработан."
        },
        "PayoutOperationId": "2cf4b4bc-56cf-4ab6-bf4f-1b2aa9743154",
        "PayoutOperationState": "Created"
    }
}

Метод ExecuteOperation


Anchor
ExecuteOperation
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.

Пример

Code Block
languagejs
titleПример запроса
collapsetrue
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"
}


Code Block
languagejs
titleПример ответа
collapsetrue
{
  "OperationState": {
    "Code": 0,
    "Desc": "Успешно обработана"
  },
  "OperationId": "a654fe39-42eb-4ac3-a3ec-76d148b2ba3a",
  "Result": {
    "State": {
      "Code": 0,
      "Desc": "Успешно обработан."
    },
    "PayoutOperationId": "81fa5265-de0b-498d-be37-5d48f4aa3ba1",
    "PayoutOperationState": "InProcess"
  }
}

Метод GetOperationState


Anchor
GetOperationState
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.

Пример

Code Block
languagejs
titleПример запроса
collapsetrue
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"
}


Code Block
languagejs
titleПример ответа
collapsetrue
{
    "OperationState": {
        "Code": 0,
        "Desc": "Успешно обработана"
    },
    "Result": {
        "State": {
            "Code": 0,
            "Desc": "Успешно обработан."
        },
        "PayoutOperationId": "ad22e55f-7e54-4e3a-b04b-0142a0314376",
        "PayoutOperationState": "InProcess"
    }
}

Метод DeleteOperation


Anchor
DeleteOperation
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.

Пример

Code Block
languagejs
titleПример запроса
collapsetrue
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"
}


Code Block
languagejs
titleПример ответа
collapsetrue
{
    "OperationState": {
        "Code": 0,
        "Desc": "Успешно обработана"
    },
    "Result": true
}


Структуры PayoutAPI


Anchor
PayoutOperationData
PayoutOperationData
PayoutOperationData

Структура с данными операции выплат.

НазваниеТипОписание
PayoutOperationIdGuidИдентификатор операции выплаты в системе IntellectMoney.
PayoutOperationStateMassPaymentOperationStateТекущий статус операции.
ErrorMessageStringСообщение о причине ошибке операции (если есть).

Anchor
MassPaymentOperationState
MassPaymentOperationState
MassPaymentOperationState

Перечисление возможных статусов операции выплат.

ЗначениеОписание
CreatedОперация создана.
SentToBankЗапрос на проведение операции отправлен в банк.
InProcessЗаявка принята банком и исполняется.
CompletedОперация успешно завершена.
FailedОшибка обработки.
NotEnoughMoneyУ пользователя недостаточно средств, для совершения операции.
DeletedОперация удалена.

Anchor

ProviderType

PreferenceType

ProviderType

PreferenceType

ProviderType

PreferenceType

ЗначениеОписание
BankCardRussiaOutBankCardВыплата на банковскую карту РФ.
QiwiWalletOutQiwiWalletВыплата на Qiwi кошелек.
SbpOutSbpВыплаты на СБП.


Table of Contents