В данной теме мы рассмотрим создание вывода по API с использование Postman REST Client.
У каждого пользователя системы Интеркасса есть возможность создавать выводы с помощью API, без использования личного кабинета.
1) Первый запрос делаем к ресурсу https://api.interkassa.com/v1/account, позволяет получить список аккаунтов, доступных пользователю.
Метод запроса: GET
Headers: Authorization
Авторизация происходит с использованием стандартных правил базовой авторизации для HTTP-запросов: к запросу добавляется HTTP заголовок «Authorization». Значение этого параметра состоит из слова «Basic», пустой характер и зашифрованной BASE64 пары login:password, где login - Id пользователя, password
Пример ответа
Пример ответа
{
"status": "string",
"code": 0,
"data": {
"{ACCOUNT_ID}": {
"_id": "string",
"nm": "Бизнес-кабинет",
"tp": "string",
"usr": [
{
"id": "string",
"o": "string",
"rl": "string"
}
]
}
}
},
где "_id" идентификатор бизнес аккаунта, необходим для заполнения HTTP заголовка «Ik-Api-Account-Id».
2) https://api.interkassa.com/v1/purse
Метод запроса: GET
Headers: Authorization, Ik-Api-Account-Id
В ответ получаем список кошельков, привязанных к аккаунту, с их параметрами:
Пример ответа
{
"status": "string",
"code": 0,
"data": {
"{purseId}": {
"id": "string",
"accountId": "string",
"type": "string",
"name": "string",
"status": 0,
"balance": 0,
"frozen": 0,
"turnover": 0,
"settings": {
"co": "string"
},
"created": "2017-08-15T07:26:12.116Z"
}
}
}.
3) https://api.interkassa.com/v1/paysystem-output-payway?purseId="{purseId}"
Метод запроса: GET
Headers: Authorization, Ik-Api-Account-Id
Позволяет получить список платежных направлений на вывод, включенных в системе ИК. По каждому направлению возвращается его id в ИК, алиас, а также массив обязательных к заполнению реквизитов-ключей в элементе prm. Данные ключи применяются при создании вывода.
Пример ответа
{
"status": "string",
"code": 0,
"data": {
"{PAYWAY_ID}": {
"_id": "string",
"als": "string",
"alsOld": "string",
"amn": {
"min": 0,
"max": 0
},
"cur": "string",
"curAls": "string",
"out": "string",
"outAls": "string",
"prm": [
{
"al": "string",
"tt": "string",
"re": "string",
"ex": "string",
"tp": "string"
}
],
"ps": "string",
"ser": "string",
"srt": 0,
"fee": {
"in": {
"rt": 0,
"fix": 0
},
"out": {
"rt": 0,
"fix": 0
}
},
"name": [
{
"l": "string",
"v": "string"
}
]
}
}
}
4) Создание вывода
https://api.interkassa.com/v1/withdraw
Метод запроса: POST/GET
Headers: Authorization, Ik-Api-Account-Id
В body указываем обязательные параметры для создания вывода:
amount
Сумма платежа. Пример: 100.
paywayId
Идентификатор платежного направления на вывод. Пример: 5203c2448f2a2d2409000005.Возвращается в ответе на запрос https://api.interkassa.com/v1/paysystem-output-payway?purseId= в параметре "{PAYWAY_ID}".
details
Массив реквизитов, типа «ключ-значение». Пример: details[card]=4405882300878265. Возвращаются в ответе на запрос https://api.interkassa.com/v1/paysystem-output-payway?purseId= в параметре "prm".
purseId
Идентификатор кошелька, с которого осуществлять вывод. Пример: 108523186000. Возвращается в ответе на запрос https://api.interkassa.com/v1/purse в параметре "{purseId}".
calcKey
Тип расчета суммы платежа. Доступные значения: «ikPayerPrice» – по сумме списания со счета в системе Интеркасса, «psPayeeAmount» – по сумме зачисления на баланс получателя в валюте платежной системы. По умолчанию: «ikPayerPrice». Пример: ikPayerPrice.
action – тип действия. Доступные значения: «calc» – рассчитать (вывод не создается в ИК), «process» – провести (создание вывода). По умолчанию: «calc». Пример: process.
paymentNo*
Номер вывода в системе мерчанта, является уникальным относительно кассы. Необязательный параметр. Пример: 12345