Enkash Developer Portal
Home
Home
Login
  1. UPI Autopay
  • Back to home
  • Payment Gateway APIs
  • Authorisation
    • Get Authorization Token
  • Order
    • Create Order
    • Get Order Status
    • Get Order By Merchant Order Id
    • Get BNPL Payment Methods
    • Get Dynamic UPI QR
    • UPI Intent Links
  • Payment
    • Submit Payment Request
    • Get Transaction Status
    • Validate OTP
    • Resend OTP
    • Payment Notify Request
    • Get UPI Transaction Status
    • Verify UPI VPA
  • Refund
    • Refund
  • Settlement
    • Get Settlement Payout By ID
    • Search Settlement Payouts
  • Split Settlement
    • Create Split Settlement Account
    • Update Split Settlement Account
    • Get All Split Settlement Account
    • Deactivate Split Settlement Account
    • Activate Split Settlement Account
    • Submit Payment with Split Details
    • Edit Or Deferred Split Settlement
  • E-Commerce Plugins
  • UPI QR
    • Create UPI QR
    • Get UPI QR
    • Search UPI QR
    • Create Customer
    • Search Customer
    • Cancel UPI QR
  • UPI Autopay
    • Create UPI Mandate
      POST
    • Update UPI Mandate
      PATCH
    • Revoke UPI Mandate
      PATCH
    • Get UPI Mandate
      GET
    • UPI Mandate Callback
      POST
    • Mandate Pre-debit Notification
      POST
    • Execute Mandate Debit
      POST
    • Mandate Debit Callback
      POST
  • Payment Links
    • Payment Link APIs
    • Create Payment Link
    • Get Payment Link Details
    • Delete Payment Link
    • Webhook Request
  1. UPI Autopay

Create UPI Mandate

POST
/api/v0/upi-mandate
📌
Use this API to create a UPI mandate, allowing you to set up automated recurring payments directly from your customer’s UPI-linked bank account. This ensures secure, hassle-free collections for subscriptions, EMIs, or any recurring billing.

Request

Header Params

Body Params application/json

Example
{
    "referenceId": "TXN9876543",
    "amount": 100,
    "amountRule": "EXACT",
    "currency": "INR",
    "payee": {
        "vpa": "eu@vpa",
        "name": "Joyce Hermann-Bogisich",
        "mcc": "0000"
    },
    "payer": {
        "vpa": "9876543210.prod@bank",
        "name": "John Doe",
        "account": "0987654321",
        "accountValidation": false
    },
    "mandateName": "Lula Hammes",
    "expiry": 100,
    "recurrence": {
        "period": "MONTHLY",
        "rule": "ON",
        "value": "cupidatat"
    },
    "validity": {
        "startAt": "2025-07-20 00:00:00",
        "endAt": "2025-10-20 00:00:00"
    },
    "upiReferenceUrl": "https://www.example.com/",
    "description": "Recurring Payment for Subscription",
    "upiPurposeCode": "63"
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/api/v0/upi-mandate' \
--header 'merchantAccessKey;' \
--header 'Authorization;' \
--header 'Content-Type: application/json' \
--data-raw '{
    "referenceId": "TXN9876543",
    "amount": 100,
    "amountRule": "EXACT",
    "currency": "INR",
    "payee": {
        "vpa": "eu@vpa",
        "name": "Joyce Hermann-Bogisich",
        "mcc": "0000"
    },
    "payer": {
        "vpa": "9876543210.prod@bank",
        "name": "John Doe",
        "account": "0987654321",
        "accountValidation": false
    },
    "mandateName": "Lula Hammes",
    "expiry": 100,
    "recurrence": {
        "period": "MONTHLY",
        "rule": "ON",
        "value": "cupidatat"
    },
    "validity": {
        "startAt": "2025-07-20 00:00:00",
        "endAt": "2025-10-20 00:00:00"
    },
    "upiReferenceUrl": "https://www.example.com/",
    "description": "Recurring Payment for Subscription",
    "upiPurposeCode": "63"
}'

Responses

🟢200OK
application/json
Body

Example
{
    "response_code": 0,
    "response_message": "string",
    "payload": {
        "referenceId": "string",
        "pspRefNo": "string",
        "umn": "string",
        "mandateTransactionId": "string",
        "amount": 0,
        "amountRule": "EXACT",
        "currency": "string",
        "payer": {
            "vpa": "string",
            "name": "string",
            "account": "string",
            "accountValidation": true
        },
        "mandateName": "string",
        "expiry": 0,
        "blockFund": true,
        "revocableByPayer": true,
        "recurrence": {
            "period": "ONETIME",
            "rule": "ON",
            "value": "string"
        },
        "validity": {
            "startAt": "string",
            "endAt": "string"
        },
        "pausePeriod": {
            "startAt": "string",
            "endAt": "string"
        },
        "upiReferenceUrl": "string",
        "description": "string",
        "mcc": "string",
        "upiPurposeCode": "string",
        "status": "CREATED",
        "createdAt": "string",
        "revoked": true,
        "orgTxnId": "string"
    }
}
Modified at 2025-07-23 11:07:58
Previous
UPI Autopay
Next
Update UPI Mandate
Built with