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.
Once you receive the notification webhook, redirect the shopper to your website, and present the payment result.
Present the payment result
Wait for a notification webhook to know the outcome of the payment. The notification 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 notification.
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 notification webhook informing you of the payment result.
Wait for a notification webhook to know the outcome of the payment. The notification 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 notification.
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.