v1

latestOpenAPI 3.1.02026-07-2418201.6 MB

Create Mandate API

This API is used to create a UPI based mandate.

post/v3/payments/upi/autopay/mandate/link

Headers

client_idstring required

Decentro assigned client_id during on boarding.

client_secretstring required

Decentro assigned client_secret during on boarding.

x_on_behalf_ofstring

Optional header that allows parent merchant to consume the API on behalf of sub-merchant.

authorizationstring

Customers can generate JWT using our Auth API with various grant types in the request body. JWT is valid for 15minutes.

Request body

reference_idstring required

A specific unique ID assigned by you for this transaction. If not kept unique, transaction status extraction could behave erratically.

consumer_urnstring required

A unique identifier provided by Decentro at the time of onboarding

mandate_namestring required

Name of the mandate/subscription

amountnumber float required

Mandate Amount. Min: 1. Max: 1,00,000

frequencystring required

Frequency of the debits (Onetime, Monthly, Weekly, Daily, Quarterly, Bimonthly, Fortnightly, Halfyearly, Yearly, Aspresented)

purpose_messagestring

The narration that you want to show as a message for the mandate registration.

rule_typestring required

Type of Rule (ON / BEFORE / AFTER). If frequency is other than ONETIME/AS PRESENTED/DAILY, then rule_type is mandatory

amount_rulestring required

Mandate amount rule: (MAX or FIXED) MAX: Maximum amount FIXED: Exact amount

start_datestring date required

Mandate start date. Needs to be on and after the date when the API is triggered.

end_datestring date required

Mandate end date. Needs to be after the date when the API is triggered. Max tenure is 30 years

expiry_timeinteger required

Expiry Time of the mandate within 24 hrs and data to be provided in Minutes. Min: 1. Max: 1440

default_amountnumber float

The default amount to be used for presentation. Mandatory if amount_rule = MAX

is_downpaymentstring required

To enable any instant presentation, pass this flag as True; Else pass as False. Amount will be deducted immediately after mandate registration. is_downpayment flag & is_first_txn_amount flag can't set as true at a same time.

is_first_txn_amountstring required

If set to true, the mandate will be treated as a First Amount Mandate. Only supported for QR/Intent-based Autopay flows. In FAM, the amount rule type must be set to MAX. is_downpayment flag & is_first_txn_amount flag can't set as true at a same time.

generate_psp_uristring required

true/ false depending on the choice to generate UPI mandate URI/intent flow to implement customized flow based on URI data.

is_managed_by_decentrostring required

This param is used to identify if the mandate is managed by Decentro. Accepted values true or false.

is_qr_requestedstring required

This flag is used to identify whether the QR code is requested. Pass true for QR code and false for no QR code.

is_block_fundsstring required

This flag is used to block funds in the user's bank account. This feature is available only for one-time mandates and lending MCCs. Accepted values are "true" to block funds, and "false" to not block funds.

is_revokablestring required

This flag is used to set non-revokable mandates. It is available only for IPO and Lending MCCs. Accepted values are: "true" – the user can revoke the mandate, "false" – the mandate cannot be revoked by the user.

is_collect_requeststring required

This flag is used to identify whether the merchant is initiating the collect request or intent link. Pass true for collect requests and false for intent. Supported MCCs 6012 & 6211.

is_tpvstring required

This flag is used to identify whether the collect request requires third-party validation. TPV will only work for collect requests.

redirect_urlstring

This is a optional parameter. Merchants can pass the redirection URL. Max support of characters are 2048. Only "https://" endpoints will be accepted.

downpayment_reference_idstring

This reference_id will be used to initiate the instant presentations(5mins presentations). Value will be passed only if is_downpayment flag is set as true

first_txn_amount_reference_idstring

This reference_id will be used to initiate the instant presentations(5mins presentations). Value will be passed only if is_first_txn_amount flag is set as true

Response

200

OR

Example response

{
  "decentro_txn_id": "E20EAB451D8E4F478F4826E7A2D42776",
  "api_status": "SUCCESS",
  "message": "Mandate link created successfully.",
  "data": {
    "mandate_detail": {
      "decentro_mandate_id": "81F2C8CFB913414CAAD2ABDCC48D71C8",
      "mandate_status": "PENDING",
      "presentation_sequence_id": "DFN-XXXX-0001",
      "mandate_links": {
        "common_uri": "https://decpay.in/upi/mandate/xbpcgdcz",
        "gpay_uri": "https://decpay.in/upi/mandate/xbpgdcz?app=gpay",
        "phonepe_uri": "https://decpay.in/upi/mandate/xbpcgdcz?app=phonepe",
        "paytm_uri": "https://decpay.in/upi/mandate/xbpcv8gcz?app=paytm"
      }
    }
  },
  "response_key": "success_mandate_link_created"
}