API-wise Integration Checklist for UPI
UPI Registration using Standard Checkout
- We recommend that you create a single customer id rather than multiple customer ids for the same customer. If their details change, you can use the Edit Customer Details API. Duplicate validation is done based on email ID and phone number.
- Use the
fail_existing : "1"parameter so that the API returns the same details of the customer created earlier. If thefail_existing : "0"is used, the API throws an error and does not fetch the customer id previously created. This can help in the end-user journey experience if a customer is signing up despite having signed up earlier. - Use the Payments Downtime API to check for any ongoing downtimes that may impact the UPI Recurring.
- Ensure you pass all the token parameters while creating an Order for the authorisation transaction using the Standard Checkout method.
- Ensure you pass the value of the
recurringparameter as1in the Create an Authorisation Payment API. If not passed, it would be considered a one-time payment. Once the authorisation payment is made, we request you verify the payment signature at your backend. - To check the status of the token ID use the Fetch Token API.
- Enable webhooks to check the status of the token and payments and the registration link. Use this only if your business is using it in a non-critical way. In critical scenarios, we recommend that you fetch APIs.
- A pre-debit notification is sent before the payment is deducted by the issuing bank. It is recommended that you check the presentment time in the FAQ document before proceeding with the recurring payments.
UPI Registration using a Registration Link
- Ensure to pass the below parameters while creating a registration link using the API:
- Customer details such as
name,emailandcontact. sms_notifyandemail_notifyastrueto send notifications to customers.amountas0andtypeaslink.descriptionof the link.subscription_registrationdetails such as:methodasupimax_amountas500frequencyasmonthlyoras_presented
- Customer details such as
Create Subsequent Payments
- Ensure the
token_idpassed is for the linkedcustomer_idwhile creating a recurring payment. - Use webhook to get real-time updates of payment.