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:
| Field | Description |
|---|---|
field_accountId | The ID of the Zuora customer account to charge. This parameter is required to process a payment from a Payment Page. |
field_currency | The transaction currency. EBANX UPI Intent supports only INR. |
field_authorizationAmount | The 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"
}