UPI Autopay - Create Mandate API

This API is used to create a UPI based mandate.

Overview

This API allows the platform to initiate an UPI-based mandate registration request. The payer can then authorize the request using Intent flow. In this flow, the platform doesn't need to have the payer's VPA. Decentro validates the request and the payer can pay using any supported UPI app on their mobile device. It is suitable for mobile apps.

Flow

Below is the intent flow for using this API.

  • The platform captures the mandate details like amount, frequency, timeframe, etc. at their end
  • The platform passes the same in this API against the endpoints
  • The platform receives a shortened link that can be displayed on the platform's app
  • The payer can choose the app of their choice as available on their app
  • The payer authorizes the request by using the UPI MPIN
  • The platform receives the Mandate Status Callback to a pre-configured endpoint
  • The platform receives the status of mandate registration in the callback itself
  • Alternatively, the platform can check the status using the Mandate Status API

Frequency

Below are the parameters accepted under the 'frequency' field in the request body and their interpretation.

ValueDescription
DAILYThe mandate can be presented daily.
WEEKLYThe mandate can be presented weekly on a specific day of the week
FORTNIGHTLYThe mandate can be presented once every 2 weeks from the start date
MONTHLYThe mandate can be presented once a month on a specific date of the month
BIMONTHLYThe mandate can be presented once in 2 months on a specific date of the month
QUARTERLYThe mandate can be presented once a quarter from the start date
HALFYEARLYThe mandate can be presented once every 6 months from the start date
YEARLYThe mandate can be presented once every 12 months from the start date
ONETIMEThe mandate can be presented only once before the end date
ASPRESENTEDThe mandate can be presented as needed

Rule Type

Below are the parameters accepted under the 'rule_type' field in the request body and their interpretation.

ValueDescription
OnThe mandate can be presented on the exact date
BeforeThe mandate can be presented before the due date as long as frequency & presentation window is maintained
AfterThe mandate can be presented after the due date as long as frequency & presentation window is maintained

Amount Rule

Below are the parameters accepted under the 'amount_rule' field in the request body and their interpretation.

ValueDescription
MaxThe amount registered is the maximum that can be debited. Any presentation amount lesser than the amount can be presented
FixedThe amount registered is the exact amount that can be debited.

API Endpoints

Below are the API endpoints to be used by the platform basis the environments.

Simulation Data

Decentro's simulation data helps developers simulate all the real-world scenarios when using the Create mandate API.
This requires the platform to use standard request payloads to handle scenarios for each API and scenario, as mentioned below.
The platform will need to whitelist their IP and configure callback endpoints with Decentro if they wish to handle the flow. Please reach out to us at support@decentro.tech for the same.

How to test?

Below is the flow to test the Simulation data

  1. Generate a mandate link by using Create Mandate API with the 'amount' parameter in the required range as mentioned in the test bed section.
  2. Click the generated link once before proceeding. This is a mandatory step to receive the simulation responses.
  3. Next Decentro will propagate the updated status of the mandate as per the amount (range) passed in step-1.
  4. Alternatively, client can use Get Mandate Status to fetch the latest status of the mandate.
  5. Next proceed to trigger the Pre Debit Notification API to test various scenario basis the amount range values mentioned in the respective test bed section.
  6. Next, proceed to trigger the Mandate Presentation API to test various scenarios basis the amount range values as mentioned in the respective test bed section.
  7. Note: The simulation environment is an exact replica of production environment including all the checks of production systems for registration, notification and, presentation .

Test Bed

Mandate Creation

AmountScenario
0 - 1000Mandate registration is successful. Mandate status is Active
1001 - 2000Mandate registration is failed. Mandate status is Failed

Pre Debit Notification

AmountScenario
0 - 500Pre debit notification is successful.
501 - 600Pre debit notification failed

Presentation

AmountScenario
0 - 100Mandate Presentation is successful.
150 - 200Mandate Presentation failed
Language
Click Try It! to start a request and see the response here!