UPI
Вариант интеграции QP
Для этого варианта интеграции поддерживаются следующие типы транзакций:
Оплата
Запрос
Info
Уточните поддерживаемые валюты и страны у аккаунт менеджера.
Отправьте запрос оплаты со следующими дополнительными параметрами:
|
|||||||||||||||||||||||
Ответ
Секция upi из ответа на запрос будет иметь все те же параметры, что были присланы в запросе, а также один дополнительный параметр form с необходимыми параметрами, чтобы сформировать веб-форму для перехода на оплату.
Выплата средств
Запрос
Отправьте запрос выплаты средств со следующие дополнительные параметры:
|
|||||||||||||||||||||||||||
Ответ
Секция upi из ответа на запрос будет иметь все те же параметры, что были присланы в запросе.
Вариант интеграции PF
Для этого варианта интеграции поддерживается тип транзакций оплата:
Оплата
Описание процесса оплаты
- Покупатель выбирает UPI в качестве способа оплаты на сайте торговца и указывает свой VPA (Virtual Payment Address).
- Торговец отправляет запрос оплаты в MerchantPay, указав VPA покупателя.
- MerchantPay возвращает торговцу статус оплаты:
pendingилиfailed. - Покупатель получает запрос подтверждения оплаты в своем аккаунте приложения UPI.
- Покупатель подтверждает оплату в приложении UPI.
- MerchantPay высылает торговцу автоматическое уведомление со статусом
successful,failedилиpending.
Запрос
Отправьте запрос оплаты, указав следующие дополнительные параметры:
|
|||||||||||||||||||||||||||||||||
Пример запроса
{
"request": {
"amount": 10042,
"currency": "INR",
"description": "description",
"test": false,
"customer": {
"first_name": "John",
"last_name": "Doe",
"state": "KA",
"city": "Bangalore",
"zip": "560002",
"address": "1st Street",
"phone": "17777777777",
"email": "user@example.com"
},
"method": {
"type": "upi",
"account": "1234"
}
}
}
Ответ
Секция upi в ответе будет содержать те же параметры, что и в запросе.
Вариант интеграции PF (QR)
Оплата
Описание процесса оплаты
- Покупатель выбирает UPI в качестве способа оплаты на сайте торговца и указывает свой VPA (Virtual Payment Address).
- Торговец отправляет запрос оплаты в MerchantPay, указав VPA покупателя.
-
MerchantPay возвращает торговцу ответ с тремя ссылками:
- ссылка на QR-код;
- deeplink для перенаправления покупателя в приложение UPI;
- ссылка на веб-страницу, где размещена и ссылка для перехода в приложение UPI, и QR-код.
-
Торговец перенаправляет покупателя на одну из ссылок из ответа.
- Покупатель завершает оплату в приложении UPI.
- MerchantPay высылает торговцу автоматическое уведомление со статусом транзакции.
Запрос
Отправьте запрос оплаты, указав следующие дополнительные параметры:
|
|||||||||||||||||||||||||||||||||||
Пример запроса
{
"request": {
"amount": 20000,
"currency": "INR",
"description": "description",
"duplicate_check": false,
"test": false,
"expired_at": "2026-01-01T15:00:00+01:00",
"tracking_id": "your_uniq_number",
"ip": "127.0.0.1",
"language": "en",
"notification_url": "https://merchant.ltd/notification",
"return_url": "https://merchant.ltd/return",
"customer": {
"first_name": "John",
"last_name": "Doe",
"middle_name": "Mid",
"country": "IN",
"state": "KA",
"city": "Bangalore",
"zip": "560002",
"address": "1st Street",
"phone": "17777777777",
"device_id": "12312312321fff67",
"email": "example@example.com"
},
"method": {
"account": "BE11-EF898-251F-A949",
"type": "upi_qr_deeplink"
}
}
}
Ответ
Отправьте покупателя на один из следующих URL-адресов:
additional_data.payment_method.qr_code– чтобы отобразить покупателю QR-код для сканирования мобильным устройством;additional_data.payment_method.deeplink– чтобы перенаправить покупателя в приложение UPI;form.action– чтобы перенаправить покупателя на HTML страницу, где размещены и QR-код и кнопка перехода в приложение UPI.
Пример ответа
{
"transaction": {
"uid": "05482b9d-2ec9-4844-8763-55fc3195c9ef",
"type": "payment",
"status": "pending",
"amount": 20000,
"currency": "INR",
"description": "description",
"created_at": "2025-07-12T10:07:52Z",
"updated_at": "2025-07-12T10:07:52Z",
"method_type": "upi_qr_deeplink",
"receipt_url": "https://backoffice.universepay.eu/customer/transactions/05482b9d-2ec9-4844-8763-55fc3195c9ef/27b5379b2b6796c4d9ef9f2d850000190fac077da124f4d8b14e370b4a737c27?language=en",
"payment": {
"status": "pending",
"gateway_id": 5374,
"ref_id": "178648809",
"message": "Transaction was initialized"
},
"upi_qr_deeplink": {
"type": "upi_qr_deeplink",
"account": "BE11-EF898-251F-A949"
},
"customer": {
"zip": "560002",
"city": "Bangalore",
"email": "example@example.com",
"phone": "17777777777",
"state": "KA",
"address": "1st Street",
"country": "IN",
"device_id": "12312312321fff67",
"last_name": "Doe",
"first_name": "John",
"middle_name": "Mid",
"ip": "127.0.0.1"
},
"manually_corrected_at": null,
"version": 1,
"message": "Transaction was initialized",
"tracking_id": "your_uniq_number",
"test": false,
"language": "en",
"expired_at": "2026-01-01T14:00:00Z",
"billing_address": {
"zip": "560002",
"city": "Bangalore",
"email": "example@example.com",
"phone": "17777777777",
"state": "KA",
"address": "1st Street",
"country": "IN",
"device_id": "12312312321fff67",
"last_name": "Doe",
"first_name": "John",
"middle_name": "Mid"
},
"additional_data": {
"payment_method": {
"type": "alternative",
"qr_code": "data:image/png;base64,",
"deeplink": "upi:/"
}
},
"gateway": {
"iframe": false
},
"form": {
"action": "https://apm.universepay.eu/beyag/transactions/redirect/05482b9d-2ec9-4844-8763-55fc3195c9ef",
"method": "GET",
"fields": []
}
}
}
Вариант интеграции PO
Оплата
Описание процесса оплаты
- Покупатель инициирует UPI оплату на странице торговца.
- Торговец отправляет запрос оплаты в MerchantPay.
- MerchantPay возвращает торговцу ссылку на страницу оплаты.
- Торговец перенаправляет покупателя на страницу оплаты.
- Покупатель совершает оплату.
- MerchantPay высылает торговцу автоматическое уведомление.
Info
Этот вариант интеграции поддерживает только валюту INR.
Warning
Значение параметра amount в автоматическом уведомлении и в ответе на запрос статуса может отличаться от значения, присланного в первоначальном запросе на оплату, и будет равно фактической сумме платежа согласно информации в системе провайдера.
Запрос
Отправьте запрос оплаты, указав следующие дополнительные параметры:
|
|||||||||||||||||||||||||||||||||||||
Пример запроса
{
"request": {
"amount": 5100,
"currency": "INR",
"description": "description",
"test": false,
"tracking_id": "your_uniq_number",
"ip": "127.0.0.1",
"language": "hi",
"notification_url": "https://merchant.ltd/notification",
"return_url": "https://merchant.ltd/return",
"customer": {
"first_name": "John",
"email": "john@example.com",
"phone": "17777777777",
"country": "IN",
"city": "Bangalore",
"zip": "560002",
"address": "1st Street",
"device_id": "12312312321fff67"
},
"method": {
"type": "upi",
"account": "98798654"
}
}
}
Ответ
Ответ на запрос выплаты средств будет дополнительно содержать секцию form. Направьте покупателя на URL, переданный как значение параметра form.action.
Пример ответа
{
"transaction": {
"uid": "9dd7f79d-998e-4ac5-a0f1-9a77d9675d17",
"type": "payment",
"status": "pending",
"amount": 5100,
"currency": "INR",
"description": "description",
"created_at": "2025-10-31T12:06:05Z",
"updated_at": "2025-10-31T12:06:09Z",
"method_type": "upi",
"receipt_url": "https://backoffice.universepay.eu/customer/transactions/9dd7f79d-998e-4ac5-a0f1-9a77d9675d17/13c43106d9f1bb575e350bcd6570da8a75e24ef7bbedf44f5a447ec8d8557412?language=hi",
"payment": {
"status": "pending",
"gateway_id": 5875,
"ref_id": "2025103106700000011",
"message": "Transaction was initialized."
},
"upi": {
"type": "upi"
},
"customer": {
"zip": "560002",
"city": "Bangalore",
"email": "john@example.com",
"phone": "17777777777",
"address": "1st Street",
"country": "IN",
"device_id": "12312312321fff67",
"first_name": "John",
"ip": "127.0.0.1"
},
"manually_corrected_at": null,
"version": 1,
"message": "Transaction was initialized.",
"tracking_id": "your_uniq_number",
"test": false,
"language": "hi",
"billing_address": {
"zip": "560002",
"city": "Bangalore",
"email": "john@example.com",
"phone": "17777777777",
"address": "1st Street",
"country": "IN",
"device_id": "12312312321fff67",
"first_name": "John"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"gateway": {
"iframe": false
},
"form": {
"action": "payment-url",
"fields": [],
"method": "GET"
}
}
}