Skip to main content

Overview

UPI (Unified Payments Interface) is a real-time mobile payment system developed by NPCI. The merchant displays a dynamic QR code; the customer scans it using any UPI-enabled app and authenticates with their UPI PIN. Funds settle instantly.

Step 1: Create a Payin

Create a payin with invoice_currency: INR. The payin is created with status requires_payment_method.

Step 2: Confirm the Payin

Confirm the payin to generate a QR code. Status moves to requires_action. Pass the following in payment_method_details:
Pass all parameters to the Create Payin endpoint along with "confirm": true.

Step 3: Display the QR Code

The confirm response includes a qr_code field (Base64-encoded) inside latest_payment_attempt_data. Decode and render it for the customer to scan.
The QR code expires after 5 minutes. If the customer does not pay within this window, re-confirm the payin (Step 2) to generate a new QR code.

Step 4: Handle Post-Payment Events

Tazapay sends webhooks to your configured endpoint.

Testing


Refunds

upi_inr_native supports partial refunds.
Refer to the refund guide.