Депозиты с использованием явного платежного сервиса
Сначала вы должны выбрать платежный сервис. Вы можете получить список доступных сервисов и выбрать нужную вам услугу, используя
Наименование метода: | https://api.kuna.io/v3/auth/merchant/payment_services |
Тип запроса: | POST |
Параметры: | currency - код валюты в нижнем регистре (uah, rub, usd) |
Вы получите набор платежных сервисов, например (для RUB):
[
{
"code": "payment_card_rub_hpp",
"fields": [
{
"key": "card_number",
"type": "string",
"label": {
"ru": "Номер карты",
"en": "Card number",
"uk": "Номер карти"
},
"example": null,
"hint": {
"ru": "Введите номер карты",
"en": "Enter card number",
"uk": "Введіть номер карти"
},
"regexp": "^\\\\d{12,19}$",
"required": false,
"position": 0
}
],
"amount_max": 100000,
"amount_min": 3000,
"fee": {
"rate": 3.5,
"fixed": 0,
"min": 0,
"max": 0
},
"default": true
},
{
"code": "qiwi_rub_hpp",
"fields": [
{
"key": "phone",
"type": "string",
"label": {
"ru": "Номер телефона",
"en": "Phone number",
"uk": "Номер телефону"
},
"example": null,
"hint": {
"ru": "Введите номер телефона",
"en": "Enter phone number",
"uk": "Введіть номер телефону"
},
"regexp": "^\\\\+\\\\d{10,14}$",
"required": true,
"position": 0
}
],
"amount_max": 60000,
"amount_min": 5000,
"fee": {
"rate": 0,
"fixed": 0,
"min": 0,
"max": 0
}
}
]
Пример набора сервисов для UAH:
[
{
"code": "payment_card_uah_hpp",
"fields": [],
"amount_max": 100000,
"amount_min": 100,
"fee": {
"rate": 1.5,
"fixed": 5,
"min": 0,
"max": 0
},
"default": true
},
]
Необходимо выбрать нужный сервис и сохранить его code
иfields ['key']
. Обратите внимание, что поля могут быть пустыми, это означает, что они не обязательны. Таким образом, для qiwi_rub_hpp
(в примере для RUB) вам понадобится поле phone
, но для поля payment_card_uah_hpp
(в примере для UAH) нет необходимости.
Затем необходимо создать депозит с использованием выбранного платежного сервиса и обязательных полей
Наименование метода: | https://api.kuna.io/v3/auth/merchant/deposit |
Тип запроса: | POST |
Параметры:
currency | код валюты в нижнем регистре (uah, rub, usd) |
amount | сумма к депозиту |
payment_service (required) | название выбранного платежного сервиса (например, 'payment_card_uah_hpp', 'qiwi_rub_hpp' или просто 'default'). |
fields (optional) | платежный сервис может потребовать использования дополнительных полей, например, для 'qiwi_rub_hpp'' требуются параметры fields с номером телефона, вродеfields: {phone: '...'} |
return_url | URL для перенаправления после успешного депозита |
Пример для депозита UAH с платежной карты:
{
"currency": "uah",
"amount": 100.0,
"payment_service": "payment_card_uah_hpp",
"return_url": "https://return.url"
}
Пример для депозита RUB с платежной карты:
{
"currency": "rub",
"amount": 10000,
"payment_service": "payment_card_rub_hpp",
"fields": { "card_number": "4111111111111111" }
}
Пример для депозита RUB с использованием QIWI:
{
"currency": "rub",
"amount": 10000,
"payment_service": "qiwi_rub_hpp",
"fields": { "phone": "+380666666666" }
}
После выполнения запроса вы получите JSON с несколькими параметрами в ['flow_data']
, который вы должны использовать для создания простой формы с вашим дизайном или даже скрытой и отправить ее, и вы будете перенаправлены на страницу оплаты сервиса. В случае, когда method
равен 'POST', вы должны создать форму, но если method
равен 'GET', вы можете просто перенаправить на URL, созданный из action
и списка параметров. Если вам не нужна форма, вы можете использовать ['payment_invoice_id']
и перенаправить пользователя на https://paygate.kuna.io/hpp?cpi= <ID>
(работает, только если method
'GET').
Updated almost 3 years ago