Welcome to Zuora Product Documentation

Explore our rich library of product information

Payment pages signature for EBANX UPI Intent

Use this reference to identify the parameters that you must include when you generate the RSA signature for a Payment Page that processes a one-time UPI Intent payment.

Signature generation overview

Before you render a Payment Page, your server must generate a digital signature for the page by calling the Generate RSA signature REST API.

Your server then passes the returned signature, token, key, and tenantId values, along with the Page ID, to Z.render.

For the general procedure, see Generate the signature and access token.

Parameters for one-time UPI Intent payments

To charge your customer immediately with a one-time UPI Intent payment, that is, when you pass doPayment as true together with an amount, include the customer account and payment details in the signed payload so that Zuora can validate them on the server side.

The following table lists the parameters that you must include when you generate the signature:

Table 1. Signature parameters for one-time UPI Intent payments
FieldDescription
field_accountIdThe ID of the Zuora customer account to charge. This parameter is required to process a payment from a Payment Page.
field_currencyThe transaction currency. EBANX UPI Intent supports only INR.
field_authorizationAmountThe amount to charge your customer. For payment processing flows, this is the amount of the one-time payment that Zuora sends to EBANX.

When your customer submits the page, Zuora compares the values received from the page with the values in the signature and rejects the request if any value does not match. This validation prevents the amount, currency, or account from being altered on the client side.

Example signature request body

The following example shows a request body for generating the signature for a one-time UPI Intent payment:

{
    "uri": "https://<tenant-domain>/apps/PublicHostedPageLite.do",
    "method": "POST",
    "pageId": "<UPI Intent Payment Page ID>",
    "field_accountId": "<Zuora account ID>",
    "field_currency": "INR",
    "field_authorizationAmount": "100.00"
}
Note: To sign and validate these parameters, you must enable the option to verify client-side parameters in the Payment Pages signature for your tenant. To enable this option, navigate to Settings > Payments > Setup Hosted Pages. If this option is not enabled, Zuora rejects one-time UPI payments that include an amount.
Note: Processing a payment from a Payment Page also requires the Credit Balance permission, unless the Invoice Settlement feature is enabled.