UPI via Adyen
This feature is a Private Beta release. Contact Chargebee Support to enable UPI via Adyen for your live and test sites.
Unified Payments Interface (UPI) is India's real-time payment system, governed by the National Payments Corporation of India (NPCI). Chargebee supports UPI as a one-time payment method through the Adyen payment gateway.
When customers select UPI at checkout, they scan a UPI QR code with any UPI app and approve the payment in the app. Payment status is confirmed through Adyen webhooks.
Supported countries and currencies
UPI via Adyen supports the following country and currency:
| Country | Currency |
|---|---|
| India | INR (Indian Rupee) |
Payment features
The following features are available for UPI via Adyen:
| Feature | Description | Supported | Default state | Configuration or behavior |
|---|---|---|---|---|
| Integration sync mode | Defines how payment requests are processed and statuses are communicated between Chargebee and Adyen. | Yes (asynchronous) | Asynchronous | Adyen processes UPI payments asynchronously. Chargebee receives the final payment status through the AUTHORISATION webhook, and refund updates through the REFUND and REFUND_FAILED webhooks. Webhook configuration is mandatory. |
| Capture settings | Payment processing involves two stages: authorization and capture. Capture settings determine when funds are collected after authorization. | Yes | Auto capture | Auto capture is the only supported capture setting for UPI via Adyen. No additional configuration is required. |
| Verification modes | Defines how payment methods are verified before processing. | Yes | Enabled | The customer approves the payment in their UPI app. No separate verification configuration is required in Chargebee. |
| Regulatory requirements | Rules set by the payment scheme or local regulation. | Yes | Enabled | Adyen requires you to comply with Indian regulations and to have a local entity and a local integration in India to process UPI payments. |
| Statement descriptor | Displays the business name on the customer's bank statement, helping them recognize charges and reducing disputes. | No | Not applicable | Not applicable to UPI via Adyen. |
| Chargeback management | Handles chargeback events and applies configured actions on invoices and subscriptions. | No | Not applicable | Chargebee doesn't manage disputes for UPI via Adyen. Issue refunds when needed. |
| Fraud management | Uses gateway fraud signals to identify and flag high-risk transactions. | No | Not applicable | No UPI-specific fraud configuration is available in Chargebee. |
| Transaction initiation type | Identifies whether a transaction is customer-initiated (CIT) or merchant-initiated (MIT). | Yes | Customer-initiated only | Every UPI via Adyen payment is customer-initiated. Merchant Initiated Transactions (MIT), such as automatic renewal charges, aren't supported. |
| Error intelligence | Provides standardized categorization of payment failures. | Yes | Enabled | Available through Adyen payment and refusal responses. No configuration is required. |
| Gateway transaction details | Provides access to raw gateway responses for transactions. | Yes | Enabled | Available on the transaction page under Error details. No configuration is required. |
| Adding payment methods in the Chargebee dashboard | Allows a payment method to be added in Chargebee when details are collected outside checkout. | No | Not applicable | UPI via Adyen is a one-time payment method and isn't saved, so it can't be added from the Chargebee dashboard. |
Prerequisites
Before you set up UPI via Adyen in Chargebee, make sure that:
- You have a local entity and a local integration in India, as Adyen requires for UPI.
- The Adyen payment gateway is configured in your Chargebee site, including webhook notifications.
- UPI is added as a payment method for your INR-enabled merchant account in the Adyen Customer Area. Learn more
- INR (Indian Rupee) is enabled as a currency in your Chargebee site.
Integration options
You can integrate UPI via Adyen using the following methods:
| Integration method | Description |
|---|---|
| Chargebee Hosted Pages | Accept UPI payments using Chargebee's hosted checkout pages with minimal integration effort. |
| Chargebee.js | Embed UPI as a payment method in your custom checkout using Chargebee.js. |
| API (Payment Intent) | Process UPI payments using Chargebee APIs for a fully custom checkout and payment flow. |
Supported token formats
This section is relevant if you're building a custom checkout using Chargebee.js or the API.
| Token type | Description | Supported | Token field | Token format |
|---|---|---|---|---|
| Chargebee Payment Intent | Recommended token format when building a custom checkout using Chargebee.js. | Yes | payment_intent[id] | payment_intent_id |
| Chargebee token | Legacy token format supported for selected payment methods and gateways with Chargebee.js. Not recommended for new implementations. | No | token_id | Not applicable |
| Gateway permanent token | Permanent reference used for merchant-initiated payments. | No | Not applicable | Not applicable. UPI via Adyen doesn't save the payment method. |
| Gateway temporary token | Short-lived token format that can be converted to a permanent token. | No | Not applicable | Not applicable |
Configure in Chargebee
Follow these steps to enable UPI via Adyen in your Chargebee site:
- Log in to the Chargebee app.
- Go to Settings > Configure Chargebee > Payment Gateways.
- Select the relevant Adyen instance from the list.
- On the Configure Adyen page, turn on Unified Payments Interface (UPI) under the supported payment methods.
- Click Apply to save your changes.
Configure Smart Routing
When you turn on UPI for an Adyen instance, Smart Routing for UPI payments in INR is set to that instance automatically. If another gateway already handles UPI payments in INR, update the rule manually:
- Log in to the Chargebee app.
- Go to Settings > Configure Chargebee > Payment Gateways.
- Click Manage Rules under Smart Routing.
- Go to the UPI section and click Add a Gateway for INR. If a payment gateway is already assigned, click Edit.
- From the Choose a payment gateway dropdown, select the Adyen instance with UPI turned on.
- Click Save.
Configure webhook notifications
Chargebee relies on Adyen webhooks to receive the status of UPI payments and refunds. Configure the Standard webhook as described in Configure webhook notifications for Adyen. Chargebee uses the AUTHORISATION, REFUND, and REFUND_FAILED events for UPI.
Checkout flow
Your customer completes the following steps at checkout when paying with UPI via Adyen:
- The customer proceeds to the payment step of the checkout and selects UPI.
- The customer completes the order.
- Chargebee displays the UPI QR code and a countdown. The QR code is valid for 5 minutes. On a mobile device, the customer can also click Pay with UPI app to open their UPI app directly.
- The customer scans the QR code with their UPI app and approves the payment in the app.
- After Adyen confirms the payment, the QR code closes and the order confirmation page appears.
Enable for subscriptions
UPI via Adyen is a one-time payment method and can't be charged automatically for renewals. To let customers use it to pay the first invoice of a subscription, allow one-time payment methods for subscriptions.
- In the Chargebee app, go to Settings > Configure Chargebee > Checkout & Self-Serve Portal.
- Select the Configuration tab and turn on Allow customers to pay for subscriptions with payment methods that only support one-time payments.
With this setting on, customers can pay the first invoice of a subscription with UPI. Renewal invoices aren't charged automatically. To collect them, send customers email notifications with a Pay Now link when a new invoice is generated.
To offer UPI on a checkout for a one-time charge, enable checkout on the Checkout: One time payments tab under Settings > Configure Chargebee > Checkout & Self-Serve Portal. That setting is separate from Allow customers to pay for subscriptions with payment methods that only support one-time payments.
Test in sandbox
Use your Adyen test merchant account with UPI added and INR enabled, and a Chargebee test site with the Adyen test instance configured.
- In the Adyen test environment, UPI QR codes are generated only for the amounts ₹10.01 to ₹10.10 and ₹20.00 to ₹20.02. Other amounts return an error without a reason, so use one of these amounts for test payments.
- Scan the test QR code to open Adyen's Payment Simulator, and choose the payment outcome there.
- Make sure the Standard webhook is configured for the test merchant account.
Refer to Adyen's UPI documentation for more test scenarios.
Test in production
Before you go live:
- Make sure UPI is added for your live Adyen merchant account.
- Verify that the Standard webhook is configured for the live merchant account.
- Run an end-to-end test with a real UPI app, on both desktop (scanning the QR code) and mobile (clicking Pay with UPI app).
Reconcile transactions
For financial reconciliation between Chargebee and Adyen, use the Chargebee transaction field id_at_gateway, which maps to the Adyen pspReference.
- Retrieve the
id_at_gatewayvalue from the Chargebee transaction details. - Locate the corresponding
pspReferencein your Adyen reports. - Match the transactions using this reference.
Error codes and troubleshooting
Adyen returns refusal reasons for failed UPI payments, and Chargebee shows them on the transaction page under Error details. For gateway error handling in Chargebee, see Payment errors.
Frequently Asked Questions (FAQs)
Can I refund a UPI payment?
Yes. You can issue full and partial refunds. Refunds are asynchronous: the refund stays in progress until Adyen confirms it through the REFUND webhook. If the refund fails later, Adyen sends REFUND_FAILED, and Chargebee marks the refund as failed.
How do customers pay a renewal invoice with UPI via Adyen?
UPI via Adyen supports one-time payments only, so Chargebee can't charge renewal invoices automatically. Send customers a Pay Now link, and they pay the invoice by scanning a new UPI QR code.
Limitations and important points
- UPI via Adyen is available only for INR (Indian Rupee) transactions.
- UPI via Adyen supports one-time payments only. It doesn't save the payment method, and renewal invoices can't be charged automatically.
- UPI can't be added through the Customer Portal or the Chargebee app. Customers must complete the UPI checkout flow for each payment.
- The UPI QR code is valid for 5 minutes. If it expires, the customer must start the payment again.
- Adyen requires a local entity and a local integration in India to process UPI payments.