Вывод денежных средств с использованием модели Host To Host
Этот раздел описывает варианты использования системы Moneygate при выводе денежных средств. Модель Host To Host представляет собой взаимодействие между системой мерчанта и системой Moneygate при помощи HTTP-запросов к API Moneygate. В этом случае система мерчанта использует собственный графический интерфейс для взаимодействия с кастомером.
Предварительно выполненные действия
Мерчант зарегистрировался в системе Moneygate.
Основной вариант использования системы Moneygate при выводе денежных средств
Шаг 1 – Создание платежного ордера на вывод средств
Шаг 2 – Получение списка платежных инструментов
Шаг 3 – Выбор платежного инструмента
Шаг 4 – Подтверждение платежа
Получение текущего статуса платежного ордера
Получение текущего статуса платежного ордера может быть осуществлено двумя способами:
- Запрос статуса системой мерчанта при помощи API функции
/host-to-host/deposit-orders/get-status
- Получение статуса от системы Moneygate при помощи webhook-запросов
/host-to-host/deposit-orders/get-status
Пример вывода средств Card To Card
В текущем примере будет выполнено вывод 100 000 TJS (таджикский сомони) с карты банка Dushanbe City Bank.
Шаг 1 – Создание платежного ордера
API-функция позволяет создать новый платежный ордер на вывод денежных средств с использованием модели Host-To-Host со способом перевода карта-карта (card2card).
Пример для Linux shell
curl -X POST --location 'https://moneygate.master.blowfish.api4ftx.cloud/v1/host-to-host/withdraw-orders/new'
--header 'X-Auth-Token: $token_string'
--header 'X-Auth-Sign: $sign_string'
--header 'Content-Type: application/json'
--header 'Accept: application/json'
--data '{
"id": "449bc546-e589-4aca-83fd-771423844649",
"service_id": 6001,
"data": {
"callback_url": "https://merchant-side.com/send-status-here",
"amount": 10000000,
"currency": "TJS"
}
}'
Запрос имеет заголовки аутентификации (Руководство по аутентификации запросов):
- X-Auth-Token.
- X-Auth-Sign.
В теле запроса (body request) определены следующие свойства:
id, типstring– ID ордера, генерируется в системе мерчанта. Уникален в системе мерчанта.service_id, типinteger– ID услуги имеет значение 6001.data.callback_url, типstring– URL ресурса на стороне мерчанта по которому будут направляться обратные вызовы с изменениями статуса платежного ордера.data.amount, типinteger– Сумма платежа в разменных денежных единицах (в нашем случае 100000 таджикских сомони).data.currency, типstring– Буквенный код валюты по стандарту ISO 4217.
В результате выполнения запроса будет получен следующий body response:
{
"success": true
"data": {
"id": "449bc546-e589-4aca-83fd-731153139094"
},
"id": "449bc546-e589-4aca-83fd-731153139094",
}
В ответе содержатся следующие свойства:
success, типboolean– представляет успешную операцию создания платежного ордера.id, типstring– ID ордера, генерируется в системе мерчанта.Уникален в системе мерчанта.
2. Получение списка платежных инструментов.
API-функция позволяет получить список доступных инструментов для платежного ордера.
Пример для Linux shell
curl -Х POST --location 'https://moneygate.master.blowfish.api4ftx.cloud/v1/host-to-host/withdraw-orders/get-payment-instruments'
--header 'X-Auth-Token: $token_string'
--header 'X-Auth-Sign: $sign_string'
--header 'Content-Type: application/json'
--header 'Accept: application/json'
--data '{
"id": "{{ trans_id }}"
}'
- X-Auth-Token.
- X-Auth-Sign.
В теле запроса (body request) определены следующие свойства:
id, тип string – ID ордера, генерируется в системе мерчанта.Уникален в системе мерчанта.
В результате выполнения запроса будет получен следующий body response:
{
"success": true,
"data": {
"id": "449bc546-e589-4aca-83fd-731153139094",
"payment_instruments": [
{
"bank": "dushanbe",
"bank_name": "Душанбе Сити Банк",
"payment_type": "card2card",
"payment_type_name": "Card to Card"
},
]
}
}
В ответе содержатся следующие свойства:
success, типboolean– представляет успешную операцию получения списка платежного инструмента.data.id, типstring– ID ордера, генерируется в системе мерчанта.Уникален в системе мерчанта.-
data.payment_instruments, типarray– массив, включающий следующие объекты:data.payment_instruments.bank, типstring– сокращенное название банка на английском языке.data.payment_instruments.bank_name, типstring– название банка на русском языке.data.payment_instruments.payment_type, типstring– способ перевода.data.payment_instruments.payment_type_name, типstring– название способа перевода.
3. Выбор платежного инструмента.
API-функция позволяет выбрать платежный инструмент для платежного ордера.
Пример для Linux shell
curl -Х POST --location 'https://moneygate.master.blowfish.api4ftx.cloud/v1/host-to-host/withdraw-orders/set-payment-instrument'
--header 'X-Auth-Token: $token_string'
--header 'X-Auth-Sign: $sign_string'
--header 'Content-Type: application/json'
--header 'Accept: application/json'
--data '{
"id": "{{ trans_id }}",
"payment_instrument": {
"bank": "dushanbe",
"payment_type": "card2card"
},
"customer_data": {
"card_no": "1111222233334444",
"card_holder_name": "Sergey"
}
}'
- X-Auth-Token.
- X-Auth-Sign.
В теле запроса (body request) определены следующие свойства:
id, типstring– ID ордера, генерируется в системе мерчанта.Уникален в системе мерчанта.payment_instruments, типobject– массив, включающий следующие объекты:payment_instruments.bank, типstring– сокращенное название банка на английском языке.payment_instruments.payment_type, типstring– способ перевода.
customer_data, типobject– данные соответствующие схеме плательщика для выбранного платежного инструмента.customer_data.card_no, типstring– данные по карте плательщика.customer_data.card_holder_name, типstring– имя плательщика по карте.
В результате выполнения запроса будет получен следующий body response:
{
"success": true,
"id": "449bc546-e589-4aca-83fd-731153139094",
"data": {
"blowfish_id": "01b03d77-f2bd-48ac-8388-06ee46e6a4e4"
}
}
В ответе содержатся следующие свойства:
success, типboolean– представляет успешную операцию выбранного платежного инструмента.id, типstring– ID ордера, генерируется в системе мерчанта.Уникален в системе мерчанта.data.blowfish_id, типstring– ID ордера, генерируется в системе Moneygate.
4. Подтверждение платежа.
API-функция позволяет подвердить совершение платежа.
Пример для Linux shell
curl -Х POST --location 'https://moneygate.master.blowfish.api4ftx.cloud/v1/host-to-host/withdraw-orders/confirm'
--header 'X-Auth-Token: $token_string'
--header 'X-Auth-Sign: $sign_string'
--header 'Content-Type: application/json'
--header 'Accept: application/json'
--data '{
"id": "{{ trans_id }}"
}'
Запрос имеет заголовки аутентификации (Руководство по аутентификации запросов):
- X-Auth-Token.
- X-Auth-Sign.
В теле запроса (body request) определены следующие свойства:
id, тип string – ID ордера, генерируется в системе мерчанта.Уникален в системе мерчанта.
В результате выполнения запроса будет получен следующий body response:
{
"success": true,
}
В ответе содержатся следующие свойства:
success, типboolean– представляет успешную операцию подтвеждения платежа.