Supported workflows
| Workflow | Supported |
|---|---|
| Payrails SDK | ✔ |
| Payrails API | ✔ |
| Delayed / Manual Capture | ✖ |
| Instant Capture | ✔ |
| Cancel / Void | ✖ |
| Refund / Reverse | ✔ |
| Save Instruments | ✖ |
| Merchant Initiated Transaction (MIT) | ✖ |
Before you begin
Complete these steps before you send your first UPI payment through PayU India:- Set up a PayU India integration in your workspace. Follow the PayU India integration setup guide if you don’t have one yet.
- Ask PayU India to enable UPI on your PayU India merchant account.
- In the PayU dashboard, create the successful and failed payment webhooks with your Payrails notification URL. Payrails receives the UPI payment result through them. The setup guide shows the steps.
- In the Payrails Portal, go to Settings → Integrations, open your PayU India integration, select UPI under Payment methods, and save.
- Add UPI as a payment option in your workflow.
Request fields for PayU India
Send these fields in the authorize request, in addition to the standard authorize fields. Required fields must be present for the payment to succeed. Payrails sends Optional fields to the PSP when you include them.Authorize a UPI payment
Call authorize a payment withupi as the paymentMethodCode. The response includes the redirect for the customer.
Authorize request
Choose the journey
Payrails picks the journey from the device:- UPI intent: when
meta.clientContext.osTypeisandroidorios, or the user agent belongs to a phone or tablet, the redirect is aupi://deep link that opens the customer’s UPI app. - QR code: on any other device, Payrails shows a QR code on a Payrails-hosted page, and the customer scans it with any UPI app.
qr as the flow:
UPI journey
How PayU India handles UPI
- PayU India captures UPI payments immediately.
- PayU India signs each payment webhook with your merchant salt, and Payrails verifies the signature before it updates the payment.
- Payrails sends full and partial refunds to PayU India against the original transaction. PayU India completes refunds in the background, and Payrails checks the status until it gets a final result.