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.
Value | Description |
---|---|
DAILY | The mandate can be presented daily. |
WEEKLY | The mandate can be presented weekly on a specific day of the week |
FORTNIGHTLY | The mandate can be presented once every 2 weeks from the start date |
MONTHLY | The mandate can be presented once a month on a specific date of the month |
BIMONTHLY | The mandate can be presented once in 2 months on a specific date of the month |
QUARTERLY | The mandate can be presented once a quarter from the start date |
HALFYEARLY | The mandate can be presented once every 6 months from the start date |
YEARLY | The mandate can be presented once every 12 months from the start date |
ONETIME | The mandate can be presented only once before the end date |
ASPRESENTED | The 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.
Value | Description |
---|---|
On | The mandate can be presented on the exact date |
Before | The mandate can be presented before the due date as long as frequency & presentation window is maintained |
After | The 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.
Value | Description |
---|---|
Max | The amount registered is the maximum that can be debited. Any presentation amount lesser than the amount can be presented |
Fixed | The 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.
Environment | Endpoint |
---|---|
Staging / Sandbox | https://staging.api.decentro.tech/v3/payments/upi/autopay/mandate/link |
Production | https://api.decentro.tech/v3/payments/upi/autopay/mandate/link |
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
- Generate a mandate link by using Create Mandate API with the 'amount' parameter in the required range as mentioned in the test bed section.
- Click the generated link once before proceeding. This is a mandatory step to receive the simulation responses.
- Next Decentro will propagate the updated status of the mandate as per the amount (range) passed in step-1.
- Alternatively, client can use Get Mandate Status to fetch the latest status of the mandate.
- 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.
- 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.
- 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
Amount | Scenario |
---|---|
0 - 1000 | Mandate registration is successful. Mandate status is Active |
1001 - 2000 | Mandate registration is failed. Mandate status is Failed |
Pre Debit Notification
Amount | Scenario |
---|---|
0 - 500 | Pre debit notification is successful. |
501 - 600 | Pre debit notification failed |
Presentation
Amount | Scenario |
---|---|
0 - 100 | Mandate Presentation is successful. |
150 - 200 | Mandate Presentation failed |