Create eMandate API

Post  https://api.aopay.co.in/api/AOP/Enach/V1/eMandate


This API enables the creation of e-Mandate registrations for automated payment collections. Submit the necessary loan details, collection frequency, amount, and first collection date to initiate the mandate registration process. The system will process your request and return a status confirmation.

Body Parameters
{
  "LoanNo": "sample string 1",
  "SeqType": "sample string 2",
  "FirstCollectionDate": "sample string 3",
  "FinalCollectionDate": "sample string 4",
  "CollectCollectionUntilCancle": true,
  "CollectionAmount": 6,
  "MobileNumber": "sample string 7",
  "TeleNumber": "sample string 8",
  "EmailAddress": "sample string 9",
  "CategoryID": 10,
  "AccountHolderName": "sample string 11",
  "BankID": 12,
  "authType": "sample string 13",
  "AccountType": "sample string 14",
  "IFSCCode": "sample string 15",
  "BankAccountNumber": "sample string 16",
  "BankAccountNumberConfirmation": "sample string 17",
  "Frequncy": "sample string 18",
  "DebitType": true,
  "AddIn2": "sample string 20",
  "AddIn3": "sample string 21",
  "RegistrationID": "AOP-554"
}
 
Request Parameters
Name Type Description
LoanNo String Should be alphanumeric
SeqType String sequence type of the requested E- Mandate, Allowed values are RCUR or OOFF
FirstCollectionDate Date First collection date format should be yyyy-mm-dd
FinalCollectionDate Date First collection date format should be yyyy-mm-dd
CollectCollectionUntilCancle Boolean If colltn_until_cncl is true then we will consider end date for 40 year.If colltn_until_cncl false then end date is mandatory upto 40 years from start date.
CollectionAmount Integer Either of ColltnAmt or MaxAmt is mandatory.
MobileNumber String 10 digit mobile no of the requested E-Mandate.
TeleNumber String telephone no of the requested E-Mandate.
EmailAddress String email of the requested E- Mandate.
CategoryID Integer Please refer EMandate Category List.
account_holder_name String Account holder name should be alphanumeric characters and spaces.
bank_id Integer a valid id of bank, provided byE- Mandate(Please refer getBankList api).
auth_type String 'NetBanking' or 'DebitCard' or ‘Aadhaar’ or ‘Other ’.
AccountType String 'Savings' 'Current' ‘OTHER’
IFSCCode String Should be alphanumeric and exact length 11.
BankAccountNumber String bank account no of the requested E-Mandate.
BankAccountNumberConfirmation String retype bank account no of the requested E-Mandate.
Frequncy String Allowed Values are: ADHO, INDA, DAIL, WEEK, MNTH, QURT, MIAN, YEAR, BIMN
DebitType Boolean true=>Fixed, false=>Maximum
AddIn2 String null
AddIn3 String null
RegistrationID String Unique registration identifier, often tied to the user.
Responses

200

200

Response

200

RESPONSE BODY

object

LoanNo    string

SeqType    string

FirstCollectionDate    string

FinalCollectionDate    string

CollectCollectionUntilCancle    boolean

CollectionAmount    integer

MobileNumber    string

EmailAddress    string

BankAccountNumber    string

RegistrationID    string

Response

401

RESPONSE BODY

object

status     boolean

response_code     integer

message     string

401

401

412

412

Response

412

RESPONSE BODY

Object

status     boolean

response_code     integer

message     string


Did this page help you?     Yes    No

Language
shell Shell
python Python
node Node
c# C#
php PHP

cURL

curl --location 'https://api.aopay.co.in/api/AOP/Enach/V1/eMandate' \
--header 'Content-Type: application/json' \
--data '{
  "LoanNo": "sample string 1",
  "SeqType": "sample string 2",
  "FirstCollectionDate": "sample string 3",
  "FinalCollectionDate": "sample string 4",
  "CollectCollectionUntilCancle": true,
  "CollectionAmount": 6,
  "MobileNumber": "sample string 7",
  "TeleNumber": "sample string 8",
  "EmailAddress": "sample string 9",
  "CategoryID": 10,
  "AccountHolderName": "sample string 11",
  "BankID": 12,
  "authType": "sample string 13",
  "AccountType": "sample string 14",
  "IFSCCode": "sample string 15",
  "BankAccountNumber": "sample string 16",
  "BankAccountNumberConfirmation": "sample string 17",
  "Frequncy": "sample string 18",
  "DebitType": true,
  "AddIn2": "sample string 20",
  "AddIn3": "sample string 21",
  "RegistrationID": "AOP-554"
}'
import requests
import json

url = 'https://api.aopay.co.in/api/AOP/Enach/V1/eMandate'

payload = json.dumps({
  "LoanNo": "sample string 1",
  "SeqType": "sample string 2",
  "FirstCollectionDate": "sample string 3",
  "FinalCollectionDate": "sample string 4",
  "CollectCollectionUntilCancle": true,
  "CollectionAmount": 6,
  "MobileNumber": "sample string 7",
  "TeleNumber": "sample string 8",
  "EmailAddress": "sample string 9",
  "CategoryID": 10,
  "AccountHolderName": "sample string 11",
  "BankID": 12,
  "authType": "sample string 13",
  "AccountType": "sample string 14",
  "IFSCCode": "sample string 15",
  "BankAccountNumber": "sample string 16",
  "BankAccountNumberConfirmation": "sample string 17",
  "Frequncy": "sample string 18",
  "DebitType": true,
  "AddIn2": "sample string 20",
  "AddIn3": "sample string 21",
  "RegistrationID": "AOP-554"
})

headers = {
  "Content-Type": "application/json"
}

response = requests.post(url, headers=headers, data=payload)
print(response.text)
var request = require("request");

var options = {
  method: "POST",
  url: 'https://api.aopay.co.in/api/AOP/Enach/V1/eMandate',
  headers: {
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    LoanNo: "sample string 1",
    SeqType: "sample string 2",
    FirstCollectionDate: "sample string 3",
    FinalCollectionDate: "sample string 4",
    CollectCollectionUntilCancle: true,
    CollectionAmount: 6,
    MobileNumber: "sample string 7",
    TeleNumber: "sample string 8",
    EmailAddress: "sample string 9",
    CategoryID: 10,
    AccountHolderName: "sample string 11",
    BankID: 12,
    authType: "sample string 13",
    AccountType: "sample string 14",
    IFSCCode: "sample string 15",
    BankAccountNumber: "sample string 16",
    BankAccountNumberConfirmation: "sample string 17",
    Frequncy: "sample string 18",
    DebitType: true,
    AddIn2: "sample string 20",
    AddIn3: "sample string 21",
    RegistrationID: "AOP-554"
  })
};

request(options, function (error, response) {
  if (error) throw error; 
  console.log(response.body);
});
var client = new HttpClient();

var content = new StringContent(
@"{
""LoanNo"": ""sample string 1"",
""SeqType"": ""sample string 2"",
""FirstCollectionDate"": ""sample string 3"",
""FinalCollectionDate"": ""sample string 4"",
""CollectCollectionUntilCancle"": true,
""CollectionAmount"": 6,
""MobileNumber"": ""sample string 7"",
""TeleNumber"": ""sample string 8"",
""EmailAddress"": ""sample string 9"",
""CategoryID"": 10,
""AccountHolderName"": ""sample string 11"",
""BankID"": 12,
""authType"": ""sample string 13"",
""AccountType"": ""sample string 14"",
""IFSCCode"": ""sample string 15"",
""BankAccountNumber"": ""sample string 16"",
""BankAccountNumberConfirmation"": ""sample string 17"",
""Frequncy"": ""sample string 18"",
""DebitType"": true,
""AddIn2"": ""sample string 20"",
""AddIn3"": ""sample string 21"",
""RegistrationID"": ""AOP-554""
}", null, "application/json" ); var response = await client.PostAsync( "https://api.aopay.co.in/api/AOP/Enach/V1/eMandate", content ); Console.WriteLine(await response.Content.ReadAsStringAsync());
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.aopay.co.in/api/AOP/Enach/V1/eMandate',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => '{
    "LoanNo": "sample string 1",
    "SeqType": "sample string 2",
    "FirstCollectionDate": "sample string 3",
    "FinalCollectionDate": "sample string 4",
    "CollectCollectionUntilCancle": true,
    "CollectionAmount": 6,
    "MobileNumber": "sample string 7",
    "TeleNumber": "sample string 8",
    "EmailAddress": "sample string 9",
    "CategoryID": 10,
    "AccountHolderName": "sample string 11",
    "BankID": 12,
    "authType": "sample string 13",
    "AccountType": "sample string 14",
    "IFSCCode": "sample string 15",
    "BankAccountNumber": "sample string 16",
    "BankAccountNumberConfirmation": "sample string 17",
    "Frequncy": "sample string 18",
    "DebitType": true,
    "AddIn2": "sample string 20",
    "AddIn3": "sample string 21",
    "RegistrationID": "AOP-554"
  }',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json'
  ),
));

$response = curl_exec($curl);
curl_close($curl);

echo $response;

RESPONSE

200

401

412

-Result

Example

{
  "StatusCode": "NP000",
  "data": {
    "customer": {
      "id": "9f270zRq",
      "colltn_amt": 16,
      "submitted_on": "2026-01-14 13:00:53",
      "accptd": "pending",
      "colltn_until_cncl": false,
      "debit_type": "Maximum Amount",
      "name": "Pankaj Katiyar",
      "mobile_no": "+91-9876543210",
      "tel_no": null,
      "email": "Pankaj.katiyar@nupay.co.in",
      "seq_tp": "RCUR",
      "frqcy": "MNTH",
      "frst_colltn_dt": "2026-01-15",
      "fnl_colltn_dt": "2033-11-04",
      "expires_at": "2026-02-13T13:00:53+05:30",
      "bank_accounts": [
        {
          "account_holder_name": "Pankaj Katiyar",
          "bank_account_no": "181823238232323",
          "auth_type": "",
          "account_type": "Savings",
          "pancard": null,
          "ifsc_code": "ICIC0001234",
          "company_ifsc_code": null
        }
      ],
      "loan_no": "NupayTest123",
      "addnl2": "",
      "addnl3": "",
      "addnl4": null,
      "addnl5": null,
      "nupay_ref_no": "NP71176837585371417"
    },
    "url": "https://uat.nupay.net?c=9f270zRq",
    "notice": "Successfully created the E-Mandate data."
  },
  "StatusDesc": "Data submitted successfully"
}
 
{
  "status": false,
  "response_code": 11,
  "message": "Authentication Failed"
}
                                
 
{
  "status": false,
  "response_code": 16,
  "message": "Authentication failed"
}

                                
 
{
  "status": false,
  "response_code": 16,
  "message": "Authentication failed"
}