QPay
Процесс проведения оплаты
Процесс проведения транзакции этим способом оплаты содержит следующие этапы:
- Торговец инициирует запрос на проведение оплаты, где указывает QPay как способ оплаты.
- bePaid направляет запрос провайдеру способа оплаты, который формирует ссылки на приложения мобильного банкинга или сервисов оплаты.
- bePaid высылает ответ с полученными ссылками и логотипами торговцу.
- Торговец на своем сайте или в приложении строит форму с логотипами банков или провайдеров платежных сервисов со ссылками на их приложения.
- Покупатель выбирает подходящий банк или сервис платежей и завершает оплату с помощью его приложения.
- После того, как оплата завершена, bePaid высылает торговцу автоматическое уведомление о данных и статусе транзакции.
Для этого альтернативного способа оплаты поддерживаются следующие типы транзакций:
Оплата
Запрос
Отправьте запрос на проведение оплаты со следующими дополнительными данными:
Параметр | Тип данных | Описание |
---|---|---|
method | object | Секция параметров способа оплаты. |
type * обязательный |
string | q_pay |
customer | object | Секция информации о покупателе. |
device_id * обязательный |
string | Идентификатор покупателя в системе торговца. |
Пример запроса на проведение оплаты
{
"request":{
"amount":200,
"currency":"MNT",
"description":"description",
"test": true,
"tracking_id":"your_unique_number",
"language":"en",
"notification_url":"https://example.com/notification",
"return_url":"https://example.com/return",
"customer":{
"device_id": "123456789"
},
"method":{
"type": "q_pay"
}
}
}
Ответ
Ответ на запрос оплаты будет дополнительно содержать секцию transaction.form
со ссылками на приложения мобильного банкинга и сервисов платежей. Для того, чтобы покупатель мог выбрать подходящий банк или сервис платежей, постройте форму, используя следующие параметры ответа:
Параметр | Тип данных | Описание |
---|---|---|
transaction | object | Секция данных о транзакии. |
form * required |
object | Секция элементов и атрибутов HTML-формы. |
urls | array | Массив параметров приложений мобильного банкинга и сервисов платежей. Каждое приложение представлено отдельным элементом массива. |
name * required |
string | Краткое или международное название банка или провайдера сервиса платежей. |
description * required |
string | Полное название банка или провайдера сервиса платежей. |
logo * required |
string | Логотип банка или провайдера сервиса платежей. |
link * required |
string | Ссылка на приложение банка или провайдера сервиса платежей. |
Info
По умолчанию, ссылка на приложение мобильного банкинга или сервиса платежей действительна только 24 часа. Для изменения срока действия ссылки передайте значение параметра expired_at
в запросе на проведение оплаты.
Пример ответа на запрос на проведение оплаты
{
"transaction": {
"uid": "1234ccec-56c8-4356-8d53-b081b4a07230",
"type": "payment",
"status": "pending",
"amount": 200,
"currency": "MNT",
"description": "description",
"created_at": "2023-05-04T13:42:47Z",
"updated_at": "2023-05-04T13:42:51Z",
"method_type": "q_pay",
"receipt_url": "https://merchant.bepaid.by/customer/transactions/1234ccec-56c8-4356-8d53-b081b4a07230/735179255e5ff84e8b752f85452563c946f069bbb5cd0fc54541637a095354c0?language=en",
"payment": {
"status": "pending",
"gateway_id": 1234,
"ref_id": "f123456a-265b-4cd1-9823-2aa7123565fc",
"message": "Transaction in progress"
},
"q_pay": {
"type": "q_pay"
},
"customer": {
"device_id": "123456789",
"ip": null
},
"message": "Transaction in progress",
"tracking_id": "your_unique_number",
"test": true,
"language": "en",
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"gateway": {
"iframe": true
},
"form": {
"urls": [
{
"name":"Khan bank",
"description":"\u0425\u0430\u0430\u043D \u0431\u0430\u043D\u043A",
"logo":"{a logo URL}",
"link":"{an application deep link}"
},
{
"name":"State bank",
"description":"\u0422\u04E9\u0440\u0438\u0439\u043D \u0431\u0430\u043D\u043A",
"logo":"{a logo URL}",
"link":"{an application deep link}"
}
]
}
}
}
Запрос статуса транзакции
Запрос
Если в запросе на проведение оплаты был передан параметр notification_url
, система bePaid высылает вам автоматическое уведомление о статусе транзакции. Обратите внимание! bePaid может потребоваться некоторое время на получение подтверждения статуса транзакции от провайдера способа оплаты.
Если необходимо дополнительно узнать статус платежа, отправьте запрос получения статуса транзакции.
Пример запроса получения статуса транзакции
curl --location --request GET 'https://api.bepaid.by/beyag/transactions/1234ccec-56c8-4356-8d53-b081b4a07229' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Basic Shop ID: Secret key' \
--data-raw ''
Ответ
Ответ будет содержать статус транзакции, секцию параметров способа оплаты, а также иную информацию о платеже согласно описанию запроса получения статуса транзакции.
Пример ответа на запрос получения статуса транзакции
{
"transaction": {
"uid": "1234ccec-56c8-4356-8d53-b081b4a07230",
"type": "payment",
"status": "successful",
"amount": 200,
"currency": "MNT",
"description": "description",
"created_at": "2023-05-04T13:42:47Z",
"updated_at": "2023-05-04T13:50:51Z",
"method_type": "q_pay",
"receipt_url": "https://merchant.bepaid.by/customer/transactions/1234ccec-56c8-4356-8d53-b081b4a07230/735179255e5ff84e8b752f85452563c946f069bbb5cd0fc54541637a095354c0?language=en",
"payment": {
"status": "successful",
"gateway_id": 1234,
"ref_id": "f123456a-265b-4cd1-9823-2aa7123565fc",
"message": "Transaction is successful"
},
"q_pay": {
"type": "q_pay"
},
"customer": {
"device_id": "123456789",
"ip": null
},
"message": "Transaction is successful",
"tracking_id": "your_unique_number",
"test": true,
"language": "en",
"additional_data": {
"payment_method": {
"type": "alternative"
}
}
}
}