No momento, esta página não está disponível em português
API only
Accept UPI payments in India using our APIs, and build your own payment form to have full control over your checkout journey.
Before you begin
The API-only integration works the same way for all payment methods. If you haven't done this integration yet, refer to our API-only integration guide.
When a shopper pays using UPI Collect, they enter their virtual payment address and complete the payment using the UPI app on their mobile device.
Show a waiting screen to the shopper. We recommend adding a countdown timer of 5 minutes to remind shoppers to complete the payment on their UPI app.
Check your webhooks to see the payment result. We send you an AUTHORISATION webhook after the shopper completes the payment in their UPI app.
Once you receive the webhook, redirect the shopper to your website, and present the payment result.
Present the payment result
Wait for a webhook to know the outcome of the payment. The webhooks you can receive for UPI Collect are:
eventCode
success field
Description
Action to take
AUTHORISATION
false
The transaction failed.
Cancel the order and inform the shopper that the payment failed.
AUTHORISATION
true
The shopper successfully completed the payment.
Inform the shopper that the payment has been successful and proceed with the order.
Use the resultCode that you received in the /payments response to inform your shopper of the payment status. The resultCode values you can receive for payments made through UPI Collect are:
resultCode
Description
Action to take
Error
There was an error when the payment was being processed. For more information, check the refusalReason field.
Inform the shopper that there was an error processing their payment.
Pending
The payment order was successfully received.
Inform the shopper that you've received their order, and are waiting for the payment to clear. You will receive the final result of the payment in an AUTHORISATION webhook.
Refused
The payment was refused. For more information, check the refusalReason field.
Ask the shopper to try the payment again using a different payment method.
Test and Go Live
Use these credentials to test UPI Collect:
Parameter
Value
VPA
testvpa@icici
Depending on your account setup, you may have access to the UPI simulator which you can use to test your UPI integration. Contact your Account Manager or our Support Team if you have questions about the simulator.
You can also use your personal account on a UPI app to test your integration by making live payments with a low value.
When a shopper pays with UPI QR, you present a QR code which they can scan using the UPI app on their mobile device. We recommend that you use screen size to determine whether the shopper is accessing your site on mobile, desktop, or tablet and present the QR Code for shoppers on desktop or tablet.
Follow these steps to render the QR code on your checkout page:
Use the qrCodeData from the action object to render the QR code on your checkout page. We recommend showing a countdown timer of 5 minutes to remind shoppers to complete the payment on their UPI app.
After the shopper scans the QR code and completes the payment, we send a webhook informing you of the payment result.
Wait for a webhook to know the outcome of the payment. The webhooks you can receive for UPI QR are:
eventCode
success field
Description
Action to take
AUTHORISATION
false
The transaction failed.
Cancel the order and inform the shopper that the payment failed.
AUTHORISATION
true
The shopper successfully completed the payment.
Inform the shopper that the payment has been successful and proceed with the order.
For UPI QR payments, you can receive the following resultCode values:
resultCode
Description
Action to take
Error
There was an error when the payment was being processed. For more information, check the refusalReason field.
Inform the shopper that there was an error processing their payment.
Pending
The payment order was successfully received.
Inform the shopper that you've received their order, and are waiting for the payment to clear. You will receive the final result of the payment in an AUTHORISATION webhook.
Refused
The payment was refused. For more information, check the refusalReason field.
Ask the shopper to try the payment again using a different payment method.
Test and Go Live
Depending on your account setup, you may have access to the UPI simulator which you can use to test your UPI integration. Contact your Account Manager or our Support Team if you have questions about the simulator.
You can also use your personal account on a UPI app to test your integration by making live payments with a low value.