---
title: "Create Mandate"
method: POST
path: "/pg/api/mandate/initiate"
---

# Create Mandate

`POST /pg/api/mandate/initiate`

API to create new mandates with Cards or UPI

## Request body

- object
  - `merchantId` string, required — Merchant account ID
  - `merchantTxnNo` string, required — Unique ref no to identify the request. Should have only alphanumeric characters. No other characters allowed.
  - `amount` string — Transaction amount, 9 significant and 2 decimal/precision
  - `authAmount` string — Amount for first debit during creation of mandate. If this value is not present then the authorization will be done using Rs 1/.
  - `currencyCode` string, required — Transaction Currency
  - `customerEmailID` string, required — Email id of customer. In case Customer email ID is not available, send guest@jiopay.com
  - `customerName` string — customerName
  - `customerMobileNo` string — customerMobileNo
  - `amountLimit` string, required — Indicates whether subscription amount is fixed or has a maximum limit. The following values are possible • `M` - indicates the maximum amount that can be charged for the subscription• `F` – indicates the fixed amount to be charged for the subscription. For upi, only maximum is allowed. This is required to allow for token debit (small value transaction)
  - `autoExecute` string, required — Values possible - `Y` | `N`. Implemented for `N` currently
  - `returnURL` string, required — Call back url on which the response will be posted on payment success/rejection.
  - `billNumber` string, required — Bill Number
  - `txnDate` string — Date of transaction. YYYYMMDDHHMISS
  - `blockfund` string — The field “blockfund” is usedfor intimating remitter bank toblock the necessary fund against the customer account. Either Y or N
  - `validityStartDate` string, YYYYMMDD, required — Start date should be greater than the current date and cannot be lessthan the end-date value. YYYYMMDD
  - `validityEndDate` string, YYYYMMDD, required — End date should be greater than the current date.YYYYMMDD
  - `revokable` string — revokable `Y` or `N`. Mandatory if paymentMode = UPI
  - `collectByDate` string — Date until which the mandate can be approved. Maximum upto 45 days from current date. YYYYMMDDHHMMSS. Mandatory in case of UPI Mandate only
  - `debitDay` string — If the frequency selected as WEEKLY then the value will be from (1- Monday to 7- Sunday) FORTNIGHTLY (1-15 days) MONTHLY|BIMONTHLY|QUARTERLY|HALFYEARLY|YEARLY| (1-30/31 days)
  - `debitRule` string — BF|ON|AF|NA (ONETIME, DAILY, AND ASPRESENTED will not have debit day rule. In that case refer - NA)
  - `frequency` string, required — Mandate Frequency can be `OT` = one time (only for UPI Mandate, not applicable in Card) `DL` = Daily `AS` = ASPRESENTED `WK` = Weekly `BM` = bi-monthly `MT` =Monthly `QT` = Quarterly `HY` = half yearly `YR` = yearly
  - `note` string — Mandatory in Case of UPI mandate only. Text added here will be displayed to payer in PSP app.
  - `validatePayerAccFlag` string — Bydefault it’s considered as N. `Y` – If Payer Account need to bevalidated (TPV) `N` – If Payer Account doesn’tneed to be validated
  - `payerAccount` string — This field need to be sent if ValidatePayerAccFlag is Y. Multiple Accounts can be sent in pipe-separated format (Max Accounts allowed are 5)
  - `payerIFSC` string — This field need to be sent if ValidatePayerAccFlag is Y. Multiple IFSCs can be sent in pipe-separated format (Max IFSCs allowed are 5)
  - `requestType` string, required — Implemented for `C` (Create) currently
  - `purpose` string — “OT”- One Time Mandate “RECURRING”- All recurring mandates.
  - `remark` string — Notes
  - `cardNo` string — Card Number / token Number (in case of tokenized card). M, If payType is ‘1’ and paymentMode is CARD
  - `cardExpiryMonth` string — Card expiration month (MM). M, If payType is ‘1’ and paymentMode is CARD
  - `cardExpiryYear` string — Card expiration year (YYYY). M, If payType is ‘1’ and paymentMode is CARD
  - `cardHolderName` string — Name on Card. M, If payType is ‘1’ and paymentMode is CARD
  - `cvv` string — Card Verification Value. M, If payType is ‘1’ and paymentMode is CARD Optional in case token number is passed in cardNo field
  - `cryptogram` string — Cryptogram / TAVV received from TRG/TR for transacting using token number
  - `payerVA` string — Mandatory if the auto pay is for UPI payment mode and accepting payerVA on your page
  - `aggregatorID` string — Merchant Aggregator ID
  - `paymentMode` string, required — One of the below Values `Card` `UPI`
  - `accountNo` string
  - `accountIFSC` string
  - `secureHash` string, required — Hash value
  - `paytype` string, required — Possible values are 0, 1 Where 0 = Standard (Hosted Checkout) 1 = Direct (Merchant Checkout)

## Response `200`

Successful response

- object
  - `responseCode` string — Response code indicating success/failure. R1000 – Request Initiated successfully Any other value indicates failure
  - `responseDescription` string — Description of failure. Ignore for success response.
  - `merchantId` string — Merchant account ID
  - `aggregatorID` string — Merchant aggregator ID
  - `merchantTxnNo` string — Merchant Txn ref Number
  - `redirectURI` string — Redirection URL. Will be available in case merchant is required to redirect to complete payment authorization. Either this field or showOTPCaptureP age field will be available in response.
  - `tranCtx` string — The transaction context generated by the PG, Needs to be sent as is to the redirectURI / authorizeURI endpoint
  - `secureHash` string — Hash value

## Other responses

- `4XX` — Client Error

---

[API](https://skmtc.net/jiopay/apis/jiopay-pg.md) · [All operations](https://skmtc.net/jiopay/apis/jiopay-pg/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/jiopay/jiopay-pg/revisions/55aa41b8482f/schema)
