Back to top

YesMoney DMT API V2.8

This API enables the Yes Money customers to transfer funds from nearest Yes Money BC agent outlets to beneficiaries through NEFT and IMPS modes. It also allows customer to check the status of the transaction in real time. The money transfer services can be availed through simple one step customer registration process.

Revision History

Version Reason For Changes Date
1.0 Initial Version 24/05/2017
1.1 Added Significance of AID param in API authentication process 25/05/2017
1.2 Modified the request and response parameters 09/06/2017
1.3 Modified for CP API 08/09/2017
1.4 Added additional parameters as per new requirement 18/09/2017
1.5 Corrected the URL for token generation 24/10/2017
1.6 Added Beneficiary validate API & Removed the searchcustomer with PIN login API 26/10/2017
1.7 Updated with the base URL for production, Modifications inrefund API 31/10/2017
1.8 Added E-KYC APIs 23/11/2017
1.9 Added Bene Name update API, Manual KYC API 29/11/2017
2.0 Added validations to be implemented by partners & changed the domain path 07/12/2017
2.1 Added refund scenarios 14/12/2017
2.2 Added callback API implementation and updated status codes 21/12/2017
2.3 Updated the scenarios for auto refund 29/12/2017
2.4 Addedd Status check API on master Order ID 06/01/2017
2.5 Removed the depricated status codes, Bene Name Edit API 10/01/2017
2.6 Added Customer details update and upload pan card api 12/02/2018
2.7 Added status code 17/03/2018
2.8 Added few error codes and kyc document validations for minmax length 20/03/2018
  • Significance of AID param

    In every request, AID parameter is required to be passed, which is a unique bc agent Id in partner’s system. These should be provided to EP system in the agent code box at the time of agent on boarding by APM.

    This AID needs to be unique in partner’s system for every agent. If while on boarding this AID clashes with any other AID for that partner, then the agent cannot be on boarded.

    Other Common parameters
  1. OP - Operator code for DMT transaction. The value will be DMTNUR for both UAT & production.

  2. ST - Service Type for DMT. The value would be REMDOMESTIC or BENEVALIDATE depending on the type of transaction.

  3. AID - Unique Agent code from partner system. Pre-requisite for allowing transaction from this AID is that it should be onboarded as agent in Yes Money portal.

Access Token

This section groups Access Token specific API

  • Token Generation (Step1)

    At the time user attempts to log on the application system, the login API is invoked to generate token.

  • Token Preserve for API calls (Step2)

    As a result of API invocation, a token is generated which client needs to preserve that token.

  • Token Based access (Step3)

    The end-user authentication successfully takes place only after token value is stored/passed in the header of Authorization variable.

    HTTP Authentication HTTP based basic authentication need to integrate in order to retrieve access token. Here client id is used as username and client secret is used as password.

    Username: on email request
    Password: on email request

Access Token

Access Token
POST/epMoney/oauth/token?grant_type=client_credentials

Access Token in YesBank.

Response Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
access_token Access token to be store at merchant end Yes
token_type bearer Access Token Type Yes
expires_in 59999 Time in millisecond this access token will be expired Yes
scope Read Scope of user Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/oauth/token?grant_type=client_credentials
Request
HideShow
Headers
Content-Type: application/json
Type: Basic Auth,
Username: "on email request",
Password: "on email request"
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "access_token": "XXXX-XXXX-XXXX-XXXX-XXXX",
  "token_type": "bearer",
  "expires_in": 59999,
  "scope": "read write trust"
}

Customer Management

This section groups Customer Management specific API

Customer Registration Flow

  1. Customer need to be validated if it exists in system or not by invoking customer search API epMoney/retvalcustomer/v1.

  2. If customer does not exist then only invoke customer registration API

  3. Else if DATA node is received in search customer response, this means the customer is registered at RKB 1.0 and the details will flow down from that system to yes money and customer will get automatically registered. In this case customer needs to be verified for OTP

  4. If customer gets populated from RKB system, then the KYC status from RKB will flow down to yesmoney system. In case where customer status is received as KYC, no need to invoke manual or e-kyc apis

Non-KYC Registration

For non-kyc registration of customer, the API - Customer Registration with Beneficiary need to be invoked without passing the KYC_DETAILS node.

E-KYC Registration

  1. Get RD Data Hash API need to be invoked before capturing the fingerprint.

  2. Post fingerprint capture Get Adhar data need to be invoked. In response the customer details will be sent in response, if error in response, then retry the API for capturing fingerprint.

  3. After successfully receiving, customer details from Get Adhar data, Customer Registration with Beneficiary need to be invoked with AADHAR_VERIFICATIONCODE received in Get Adhar data API.

  4. On successful response from Customer registration with beneficiary API, customer limits will be upgraded to KYC limits

Manual KYC Registration

  1. Customer registration with beneficiary API need to be invoked without passing KYC_DETAILS node

  2. Once successful response from above API, manual KYC API need to be invoked. This will upload the data received as multipart type into the system

  3. These customer details will then be approved by bank operations team. Partner need to ensure that the details of the customer and the KYC documents should match correctly, so as to avoid rejection of customer KYC by bank admin.

Customer Registration with Beneficiary

Customer Registration with Beneficiary
POST/epMoney/add-customer/v1.0

Note: For Non-KYC registration, the KYC_DETAILS node need not be sent in request.

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST Char Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE Numeric Sender Mobile NO Yes
KYC_DETAILS ObjectNode Only to be sent for KYC card issuance for EKYC only Reqd for E -KYC only
KYC_TYPE String EKYC OR MANUAL Reqd for E -KYC only
CUST_TYPE String KYC Reqd for E -KYC only
AADHAR_VERIFICATI ONCODE String Value received in response of getAadharDataWithBiometric API Reqd for E -KYC only
CUST_FNAME String Sender First Name Yes
BENE_NAME String Name of the beneficiary Yes
BANKIFSC_CODE String Bank IFSC Code Yes
BANK_ACOUNTNO String Beneficiary bank account no Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/add-customer/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "CUST_LNAME": "Panchal",
  "STATE": "GUJARAT",
  "BENE_NAME": "Nehal",
  "CUST_ADDRESS": "Prahladnagar",
  "PINCODE": "382330",
  "BANK_ACCOUNTNO": "XXXXXXXXXXXX",
  "CUST_TITLE": "Miss",
  "CITY": "Ahmedabad",
  "CUST_EMAIL": "",
  "CUST_FNAME": "Hiral",
  "CUST_ALTMOBILENO": "",
  "BANKIFSC_CODE": "BOBB0000000",
  "BENE_MOBILENO": "",
  "CUST_DOB": "10-12-1993",
  "KYC_DETAILS": {
    "KYC_TYPE": "EKYC",
    "CUST_TYPE": "KYC",
    "AADHAR_VERIFICATIONCODE": "XXXXXX"
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_ADD_CUSTOMER_BENEFICIARY_SUCCESS",
  "RESP_MSG": "Customer and Beneficiary added successfully, OTP sent to registered xxxxxx6123",
  "BENE_ID": 108,
  "RESPONSE_CODE": 348
}

Search Customer

Search Customer
POST/epMoney/retvalcustomer/v1.0

Authentication : Token based

Request Parameter Table :

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE String Sender Mobile NO Yes

Response

The customer kyc status and pan card status are available in the param SENDER_KYCSTATUS and PANCARD_STATUS. Following are the possible values

1.PENDING - Pending for upload

2.PROCESSING - Document uploaded and pending bank approval

3.VERIFIED - Approved by bank

4.REJECTED - Rejected by bank

KYC Rejected params - REJECT_REASON, REMARKS (KYC rejected info fields will be available only in case of KYC rejected by bank)

Pan Rejected Remarks - PANCARD_REJECT_REASON, PANCARD_REJET_REMARKS

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/retvalcustomer/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "xxxxxx6123"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_CUST_VALIDATE_SUCCESS",
  "RESP_MSG": "Customer validate successfully.",
  "data": {
    "SENDER_TITLE": "Mr",
    "SEDNER_FNAME": "asddddd",
    "SENDER_LNAME": "asdddddd",
    "SENDER_CUSTTYPE": "NON-KYC",
    "SEDNER_GENDER": "Male",
    "SENDER_EMAIL": "",
    "SENDER_MOBILENO": xxxxxx6123,
    "SENDER_ALTMOBILENO": 0,
    "SENDER_ADDRESS1": "asddddddd",
    "SENDER_ADDRESS2": "",
    "STATE": "GUJARAT",
    "CITY": "Palanpur",
    "PINCODE": "385001",
    "SENDER_AVAILBAL": 25000,
    "SENDER_MONTHLYBAL": 25000,
    "SENDER_VERIFICATIONCODE": true,
    "SENDER_KYCSTATUS": "REJECTED",
    "SENDER_KYCTYPE": "MANUAL",
    "SENDER_REGISTERDATE": "2018-02-09 12:33:21.0",
    "SENDER_ACTIVATIONDATE": "2018-03-20 23:36:17.0",
    "SENDER_DOB": "2000-02-08",
    "PREPAID_INSTRUMENTFLAG": false,
    "PANCARD_FLAG": false,
    "PANCARD_NO": "",
    "BENEFICIARY_DATA": [
    {
    "BENE_ID": 2310,
    "BENE_MOBILENO": "null",
    "BENE_NAME": "Test",
    "BENE_NICKNAME": "",
    "BENE_BANKNAME": "BANKOFBARODA",
    "BANK_ACCOUNTNO": "xxxxxxxxxxxx",
    "BANKIFSC_CODE": "BOBB0000000",
    "BENE_OTP_VERIFIED": true,
    "IS_BENEVERIFIED": false
    }],
    "CUSTDOC_REJECT_FLAG": false,
    "REJECT_REASON": "Add proof Document not clear, Name miss match",
    "REMARKS": "Testing",
    "PANCARD_REJECT_REASON": "NA",
    "PANCARD_REJET_REMARKS": "NA",
    "PANCARD_STATUS": "NA"
  }
}

KYC Management

Upload Pan Card API

Upload Pan Card API
POST/web-mpm/rest/customerpancardupload

  • Content Type : multipart/form-data

  • Parameter Name : pancardImagePath

  • Content Type : optional

  • Parameter Name : document

  • Value : (String) - Need to pass in body as JSON

    Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
DOCUMENT_FILE Multipart file YES
DOCUMENT_TYPE String 199 - For ID proof YES
DOCUMENT_NAME String Pan Card YES
PROOF_NUMBER String Pan Number YES
CUSTOMER_MOBILE String Mobile no. Of the customer YES
CUSTOMER_NAME String Name of the customer as in Proof YES
AID String Agent Code YES
  • In case duplicate document is found then the response received as {“status”: 999,“statusLine”: “Duplicate document found insystem”,“statusMessage”: “Duplicate document found in system”,“objectData”: null,“addMessage”: [ “Duplicate document found in system”],}

  • In case invalid document type is passed {“status”: 999,“statusLine”: “Invalid document type”,“statusMessage”: “Invalid document type.”,“objectData”: null,“addMessage”: [ “Invalid document type.”]}

Example URI

POST https://uat2yesmoney.easypay.co.in/web-mpm/rest/customerpancardupload
Request
HideShow
Headers
Content-Type: multipart/form-data
Body
{
  "DOCUMENT_FILE": "pancardImagePath",
  "DOCUMENT_TYPE": "199",
  "DOCUMENT_NAME": "Pan Card",
  "PROOF_NUMBER": "ABCDE1234D",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "CUSTOMER_NAME": "test",
  "AID": "RS00789"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "status": 200,
  "statusLine": null,
  "statusMessage": "Document saved successfully",
  "objectData": null,
  "paging": null,
  "addMessage": [
    "",
    null
  ]
}

Manual KYC API

Manual KYC API
POST/web-mpm/rest/uploadCustomerKycDocumentData

Content Type : multipart/form-data

Header Parameters
1 identityImagePath : (multipart file type) - Need to pass as request header as multi part file

2 addressImagePath : (multipart file type) - Need to pass as request header as multi part file

Request Body
3 documents : (String) - Need to pass in body as JSON

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
documents Array Node Array node for types of documents (ID proof, address proof) YES
documentFile Multipart file YES
documentType String 198 - Address Proof

199 - Identity Proof

Need to keep this value configurable for UAT & production
YES
documentName String Document code that need to pass as mentioned in below table YES
proofNumber String Proof number as on document YES
CUSTOMER_MOBILE String Mobile no. Of the customer YES
CUSTOMER_NAME String Name of the customer as in Proof YES
Document Name Document Type (ID/ Address) Validations
Adhar Card 198 - Address Min:12,Max:12
Voter Id Card 198 - Address Min:8,Max:11
Ration Card 198 - Address Min:12,Max:12
Passport 198 - Address Min:8,Max:9
Driving License 198 - Address Min:7,Max:30
Shop Electric Bill
(not more than 2 months old)
198 - Address Min:4,Max:21
Rent Agreement 198 - Address Min:2,Max:21
Shop Landline Bill 198 - Address Min:6,Max:12
Adhar Card 199 - ID Min:12,Max:12
Voter Id Card 199 - ID Min:8,Max:11
Passport 199 - ID Min:8,Max:9
Driving License 199 - ID Min:7,Max:30
Pan Card 199 - ID Min:10,Max:10
  • In case invalid document type is passed {“status”: 999,“statusLine”: “Invalid document type”,“statusMessage”: “Invalid document type.”,“objectData”: null,“addMessage”: [ “Invalid document type.”]}

Example URI

POST https://uat2yesmoney.easypay.co.in/web-mpm/rest/uploadCustomerKycDocumentData
Request
HideShow
Headers
Content-Type: multipart/form-data
Body
[
  {
    "documentFile": "identityImagePath",
    "documentType": "199",
    "documentName": "Pan Card",
    "proofNumber": "ABCDE1234D",
    "CUSTOMER_MOBILE": "4564565645",
    "CUSTOMER_NAME": "test",
    "AID": "RS00789",
    "OP": "DMTNUR",
    "ST": "REMDOMESTIC"
  },
  {
    "documentFile": "addressImagePath",
    "documentType": "198",
    "documentName": "Adahar Card",
    "proofNumber": "123456789012",
    "CUSTOMER_MOBILE": "4564565645",
    "CUSTOMER_NAME": "test",
    "AID": "RS00789",
    "OP": "DMTNUR",
    "ST": "REMDOMESTIC"
  }
]
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    "status": 200,
    "statusLine": null,
    "statusMessage": "Document saved successfully",
    "objectData":"{"SENDER_KYCTYPE":"NON-KYC","SENDER_AVAILBAL":25000.0,"SENDER_KYCSTATUS":"PROCESSING"}",
    "paging": null,
    "addMessage": [
    "",
    null
    ],

}

EKYC

Get RD Data Hash

Get RD Data Hash
POST/epMoney/getRDDataHash/v1.0

Authentication : Token based

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for wallet transactions YES
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment YES
ST Char Service type for DMT YES
CUSTOMER_MOBILE Numeric Mobile No of customer being issued wallet YES

Response:

Parameter Name Sample/Default Value Description Mandatory
wadh String Applicable only for morpho capture function YES

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/getRDDataHash/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "CUSTOMER_MOBILE": "3761283512",
  "AID": "RS00789"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_EKYC_GETRDDATAHASH_SUCCESS",
  "RESP_MSG": "RD data hash fetch successfully.",
  "DATA": {
    "wadh": "+0njvZli4IkkbxG9yNKSWNMG7RNY6OhyWBUf/n5Dag4="
  }
}

GET Adhar Data

GET Adhar Data
POST/epMoney/getAadharData/v1.0

Authentication : Token based

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for wallet transactions YES
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment YES
ST Char Service type YES
CUSTOMER_MOBILE Numeric Mobile No of customer being issued wallet YES
CUSTOMER_AADHAR NUMBER String Adahr Number of cust YES
DEVICE_FINGERDATA String

Response Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
DATA ObjectNode Adhar details YES
ReqRefNum Reference for e-kyc Need to pass in kyc acknowledgement api
AADHAR_VERIFICATI ONCODE String Need to pass in kyc acknowledgement api YES

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/getAadharData/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "CUSTOMER_AADHARNUMBER": "XXXXXXXXX",
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "DEVICE_FINGERDATA": "1~RightThumb",
  "DEVICE_TYPE": "1",
  "DEVICE_TIMESTAMP": "",
  "DEVICE_DATAXML": "xxxxxxxx",
  "DEVICE_CERTEXPIRYDATE": "",
  "DEVICE_SERIALNUMBER": "1738I062995",
  "DEVICE_SESSIONKEY": "",
  "DEVICE_HMACXML": "",
  "DEVICE_VERSIONNUMBER": "",
  "AID": "RS00789"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_EKYC_GETAADHAR_SUCCESS",
  "RESP_MSG": "Aadhaar details fetch successfully.",
  "DATA": {
    "AadhaarName": "XXXXXXXX",
    "AadhaarPhoto": "data:image/jpeg;base64,/xxxxxxx",
    "City": "Ahmadabad",
    "ContactPerson": "S/O Bhavsar Bipinbhai Harivadn",
    "DOB": "13-12-1990",
    "District": "Ahmadabad",
    "Email": "-",
    "Gender": "M",
    "HouseNo": "-",
    "LandMark": "B-1-4, om shanti nagar",
    "Location": "vejalpur",
    "Phone": "-",
    "PinCode": "380051",
    "PostOffice": "-",
    "State": "Gujarat",
    "Street": "-",
    "SubDistrict": "-",
    "AadhaarNo": "xxxxxxxxxx",
    "AADHAR_VERIFICATIONCODE": "xxxxx",
    "ReqRefNum": "yyyyyyyy"
  }
}

E-KYC Acknowledgement API

E-KYC Acknowledgement API
POST/epMoney/kycAcknowledgement/v1.0

Authentication : Token based

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/kycAcknowledgement/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
    "CUSTOMER_MOBILE": "xxxxxx6123",
    "SENDER_KYCSTATUS": "VERIFIED",
    "SENDER_KYCTYPE": "EKYC",
    "EKYC_TERMS_CONDITION": true,
    "AADHAR_DETAILS": {
    "AADHAR_VERIFICATIONCODE": 155, //received in Get Adhar data api
    "ReqRefNum": "797517" //received in Get Adhar data api
    },
    "AID": "RS00789",
    "OP": "DMTNUR",
    "ST": "REMDOMESTIC"
  }
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_KYC_ACKKNOWLEDGEMENT_SUCCESS",
  "RESP_MSG": "KYC details : verified",
  "DATA": {
    "SENDER_CUSTTYPE": "KYC",
    "SENDER_KYCTYPE": "EKYC",
    "SENDER_AVAILBAL": 200000,
    "SENDER_KYCSTATUS": "VERIFIED",
    "SENDER_MOBILENO": 1111111113
  }
}

OTP Process

This section OTP Management specific API

Generate OTP

Generate OTP
POST/epMoney/generateotp/v1.0

Authentication : Token based

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE String Sender Mobile NO Yes
REQUEST_FOR String BENVERIFICATION-For Beneficiary Verification.

CUSTLOGIN- For Customer login with OTP.

BENDELETE- For Beneficiary Delete.

CUSTREFUND- For Transaction Refund.
Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/generateotp/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "REQUEST_FOR": "BENVERIFICATION"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_GENERATE_OTPBENEVALIDATION_SUCCESS",
  "RESP_MSG": "OTP sent to registered xxxxxx6123 for beneficiary verification",
  "RESPONSE_CODE": 344
}

Verify OTP

Verify OTP
POST/epMoney/verifyotp/v1.0

Authentication : Token based

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE String Sender Mobile NO Yes
REQUEST_CODE String Request Code as in validate beneficiary response from previous API. Yes
BENE_ID String Beneficiary Id in response. This need to be stored at partner end for further reference in other APIs. Yes
OTP Numeric OTP from SMS Yes
REQUEST_FOR String BENVERIFICATION-For Beneficiary Verification.

CUSTLOGIN- For Customer login with OTP.

CUSTVERIFICATION- Customer Verification for registration.
Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/verifyotp/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "REQUEST_CODE": 341,
  "BENE_ID": 106,
  "OTP": "6955",
  "REQUEST_FOR": "BENVERIFICATION"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_VERIFY_OTP_SUCCESS",
  "RESP_MSG": "OTP verification successfully."
}

Beneficiary Management

This section Beneficiary Management API

Add Beneficiary

Add Beneficiary
POST/epMoney/add-beneficiary/v1.0

Add another beneficiary after sender has been registered

Authentication : Token based

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE String Sender Mobile NO Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/add-beneficiary/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "BANK_CITY": "MUMBAI",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "BENE_NAME": "Nehal",
  "BANK_BRANCH": "BHANDUP",
  "BANKIFSC_CODE": "BOBB0000000",
  "BANK_ADDRESS": "XXXXXXXXXXXX",
  "BANK_ACCOUNTNO": "XXXXXXXXXX142",
  "BANK_STATE": "MAHARASHTRA",
  "BENE_MOBILENO": ""
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_ADD_BENEFICIARY_SUCCESS",
  "RESP_MSG": "Add beneficiary successfully, OTP sent to registered xxxxxx6123",
  "BENE_ID": 107,
  "RESPONSE_CODE": 343
}

List Beneficiaries

List Beneficiaries
POST/epMoney/list-beneficiary/v1.0

You can get all beneficiaries list.

This API need to be called only if required. Bene list is already available in Search Customer API. This need not be called always.

Authentication : Token based

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE String Sender Mobile NO Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/list-beneficiary/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "xxxxxx6123"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_LIST_BENEFICIARY_SUCCESS",
  "RESP_MSG": "Beneficiary fetch successfully.",
  "DATA": {
    "BENEFICIARY_DATA": [
      {
        "BENE_ID": 1384,
        "BENE_MOBILENO": "xxxxxx6123",
        "BENE_NAME": "Easy New",
        "BENE_NICKNAME": "",
        "BENE_BANKNAME": "ALLAHABAD BANK",
        "BANK_ACCOUNTNO": "8989898989898900",
        "BANKIFSC_CODE": "ALLA0210032",
        "BENE_OTP_VERIFIED": false,
        "IS_BENEVERIFIED": false,
        "BENEVERIFIED_STATUS": ""
      }
    ]
  }
}

Delete Beneficiary

Delete Beneficiary
POST/epMoney/delete-beneficiary/v1.0

Beneficiary Id to be passed as input from BENE_ID param in list beneficiary API.

Authentication : Token based

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE String Sender Mobile NO Yes
REQUEST_CODE String Request Code as in validate beneficiary response from previous API. Yes
BENE_ID String Beneficiary Id in response. This need to be stored at partner end for further reference in other APIs. Yes
OTP Numeric OTP from SMS Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/delete-beneficiary/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "BENE_ID": 107,
  "REQUEST_CODE": 345,
  "OTP": "4374"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_DELETE_BENEFICIARY_SUCCESS",
  "RESP_MSG": "Beneficiary delete successfully."
}

Beneficiary Name Update post Bene validate

Beneficiary Name Update post Bene validate
POST/epMoney/update-beneficiary/v1.0


  • This API will update the beneficiary name to the one send in request. Also the request contains a IS_BENEVERIFIED flag, which indicates that Beneficiary verification has been processed successfully or not. The value will be returned as TRUE or FALSE in subsequent customer search API after the Beneficiary name update API is invoked.

  • This will enable partner to hide/show the Beneficiary validate option on front end.For marking the status as TRUE, the value that need to be passed in this API is 0

Parameter Name Sample/Default Value Description Mandatory
BENE_ID String Fetched in customer search or List bene response Yes
CUSTOMER_MOBILE String Customer mobile YES
IS_BENEVERIFIED String 0 - BENE VERIFIED TRUE 1 - BENE VERIFIED FALSE Stores the status as BENE VERIFIED TRUE in case 0 is passed, else status remains unchanged This parameter need not be passed when bene name is updated manually post the bene validation API Optional
BENEVERIFIED_STATUS String Need to pass as SUCCESS, if the parameter exists in the request This parameter need not be passed when bene name is updated manually post the bene validation API Optional
TXN_BENENAME String Bene name that is recived in Bene Validate API. Special characters need to be filtered out YES

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/update-beneficiary/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
     "BENE_ID": "16",
    "CUSTOMER_MOBILE": "xxxxxx6123",
    "IS_BENEVERIFIED": 0, //Optional
    "BENEVERIFIED_STATUS": "SUCCESS", //Optional
    "TXN_BENENAME": "sdfdsfsdf",
    "OP": "DMTNUR",
    "ST": "REMDOMESTIC",
    "AID": "LM1443"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_UPDATE_BENEFICIARY_SUCCESS",
  "RESP_MSG": "Update beneficiary successfully"
}

Funds Transfer/Beneficiary Validate

This section groups Funds Transfer/Beneficiary Validate specific API

Funds Transfer

Funds Transfer
POST/epMoney/cp/dmt/moneytransfer/v1.0

Authentication : Token based

  • Same API needs to be invoked for funds transfer and beneficiary validate functionality. The variation being only different values are required to be passed in parameters ST and TXN_AMOUNT.

  • Method: The request to be passed as name value pair

  • Body Content Type : application/x-www-form-urlencoded

  • Parameter Name : jsonData

  • Parameter Value : Request Body(mentioned below) in Json Format string

  • If Pan card limit is exceeded for KYC customer for a month I.e. amt transferred exceed 49999, then, refer the pan card error scenarios mentioned in response codes section.

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
HEADER PARAMS
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
PAYABLE_AMOUNT Double Same as TXN_AMOUNT. No
TXN_AMOUNT Double 1. Money Transfer

Amount to be transferred - here the total transaction will get internally split into chunk of 5k, hence in response, an array of chunks will bereturned. The partner wallet will be debited by transferred amount + applicable charges.

2. Beneficiary Validate

Here an amount of Re. 1 to be passed. Here a charge of 3 Rs will be levied and a total of Rs 4. will be deducted from partners wallet
Yes
DATA PARAMS
CUSTOMER_MOBILE String Sender Mobile NO Yes
ORDER_ID String 14 digit unique ref id Yes
KEY_KYC_STATUS String KYC/NON-KYC, received in response of search customer response from the field SENDER_CUSTTYPE Yes
BENE_BANKNAME String Bank name Yes
TRANFER_TYPE String NEFT/IMPS Yes
BENE_NAME String Beneficiary name Yes
CN String Same as mobile number Yes
BANKIFSC_CODE String IFSC code of the beneficiary bank Yes
BANK_ACCOUNTNO String Beneficiary account no Yes
BENE_MOBILENO String Beneficiary mobile Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/cp/dmt/moneytransfer/v1.0
Request
HideShow
Headers
Content-Type: application/x-www-form-urlencoded
Authorization: bearer access_token
Body
{
  "HEADER": {
    "OP": "DMTNUR",
    "ST": "REMDOMESTIC",
    "PAYABLE_AMOUNT": "100",
    "TXN_AMOUNT": "100",
    "AID": "RS00789"
  },
  "DATA": {
    "CUSTOMER_MOBILE": "xxxxxx6123",
    "ORDER_ID": 14523578963547,
    "KEY_KYC_STATUS": "NON-KYC",
    "BENE_BANKNAME": "ABHYUDAYA COOPERATIVE BANK LIMITED",
    "TRANSFER_TYPE": "NEFT",
    "BENE_NAME": "Jay",
    "CN": "9662096123",
    "BANKIFSC_CODE": "ABHY0065004",
    "BANK_ACCOUNTNO": "555555555555",
    "BENE_MOBILENO": "",
    "BENE_ID": "549"
  }
}
Response  302
HideShow
Headers
Content-Type: application/json
Body
{
  "TRANSACTIONN_FEE": 5,
  "RESP_CODE": 302,
  "RESPONSE": "PENDING",
  "RESP_MSG": "Transaction Pending.",
  "DATA": {
    "TRANSACTION_DATE": "Mon April.02.2018 05:12:30 PM",
    "CUSTOMER_REFERENCE_NO": "80534004868504",
    "SENDER_AVAILBAL": 199900,
    "TRANSACTION_DETAILS": [
      {
        "RESP_CODE": 302,
        "RESPONSE": "PENDING",
        "RESP_MSG": "Host Date and Branch Date should be same",
        "INIT_PENDING": true,
        "VERSION": "NA",
        "UNIQUE_RESPONSENO": "NA",
        "ATTEPMTNO": "NA",
        "TRANSFER_TYPE": "NA",
        "LOW_BALANCE_ALERT": "NA",
        "STATUS_CODE": "NA",
        "SUB_STATUS_CODE": "NA",
        "BANK_REFERENCE_NO": "NA",
        "EP_REFERENCE_NO": "EP899891",
        "REQUEST_REFERENCE_NO": "N15226693436340",
        "RESPONSE_REFERENCE_NO": 49302,
        "TRANSFER_AMOUNT": 100,
        "PAID_AMOUNT": 100,
        "TXN_BENENAME": "NA"
      }
    ],
    "BENEFICIARY_DETAILS": {
      "BENE_NAME": "Rish",
      "BANK_ACCOUNTNO": "33333333331",
      "BANKIFSC_CODE": "ABHY0065004",
      "BENE_MMID": "",
      "BENE_MOBILENO": "null",
      "BENE_BANKNAME": "ABHYUDAYA COOPERATIVE BANK LIMITED"
    },
    "CUSTOMER_DETAILS": {
      "CUST_NAME": "Rishabh Bhavsar",
      "CUSTOMER_MOBILE": "xxxxxx6123",
      "PANCARD_FLAG": true,
      "PANCARD_NO": ""
    }
  }
}

List Transaction History

List Transaction History
POST/epMoney/list-transaction/v1.0

You can get all Transaction History of cutomer.

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/list-transaction/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "TRANSACTION_TODT": "09-06-2017",
  "TRANSACTION_FROMDT": "09-06-2017"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESPONSE": "EPMONEY_LIST_TRANSACTION_SUCCESS",
  "RESP_MSG": "Transaction fetch successfully.",
  "DATA": {
    "TRANSACTION_DETAILS": [
      {
        "TXN_ID": 7220,
        "EP_REFERENCE_NO": "EP556198",
        "BANK_REFERENCE_NO": "",
        "CUSTOMER_REFERENCE_NO": "80534004868564",
        "BENE_MOBILENO": "",
        "BENE_NAME": "Rish",
        "BENE_ID": 2146,
        "BENE_NICKNAME": "",
        "BENE_BANKNAME": "ABHYUDAYA COOPERATIVE BANK LIMITED",
        "BANK_ADDRESS": "CHETNA APARTMENTS, J.M.ROAD, BHANDUP, MUMBAI-400078",
        "BANK_ACCOUNTNO": "33333333331",
        "BANKIFSC_CODE": "ABHY0065004",
        "BENE_CODE": "",
        "BENE_STATUS": "ACTIVE",
        "BENE_OTP_VERIFIED": true,
        "PAID_AMOUNT": 100,
        "TRANSFER_AMOUNT": 100,
        "CHARGE_AMOUNT": 0,
        "TRANSACTION_DATE": "2018-04-02 05:09:57",
        "TRANSACTION_STATUS": "REFUNDED",
        "TRANSACTION_STATUSMESSAGE": "IMPS is not enabled for the beneficiary IFSC: ABHY0065004",
        "ORDER_ID": "I15226691975160",
        "AID": "R101101107101010101",
        "MID": "EP00009",
        "CP": "JITPU3872",
        "ST": "REMDOMESTIC",
        "REINIT_TXN_ID": ""
      },
      {
        "TXN_ID": 7223,
        "EP_REFERENCE_NO": "EP899891",
        "BANK_REFERENCE_NO": "",
        "CUSTOMER_REFERENCE_NO": "80534004868504",
        "BENE_MOBILENO": "",
        "BENE_NAME": "Rish",
        "BENE_ID": 2146,
        "BENE_NICKNAME": "",
        "BENE_BANKNAME": "ABHYUDAYA COOPERATIVE BANK LIMITED",
        "BANK_ADDRESS": "CHETNA APARTMENTS, J.M.ROAD, BHANDUP, MUMBAI-400078",
        "BANK_ACCOUNTNO": "33333333331",
        "BANKIFSC_CODE": "ABHY0065004",
        "BENE_CODE": "",
        "BENE_STATUS": "ACTIVE",
        "BENE_OTP_VERIFIED": true,
        "PAID_AMOUNT": 100,
        "TRANSFER_AMOUNT": 100,
        "CHARGE_AMOUNT": 0,
        "TRANSACTION_DATE": "2018-04-02 05:12:24",
        "TRANSACTION_STATUS": "PENDING",
        "TRANSACTION_STATUSMESSAGE": "Host Date and Branch Date should be same",
        "ORDER_ID": "N15226693436340",
        "AID": "R101101107101010101",
        "MID": "EP00009",
        "CP": "JITPU3872",
        "ST": "REMDOMESTIC",
        "REINIT_TXN_ID": ""
      }
    ]
  }
}

Refund Transaction

Refund Transaction
POST/epMoney/cp/refund-transaction/v1.0

This method need to be invoked in below scenarios

  1. In case when transaction history returns txn status as FAILED I.e. parameter “TRANSACTION_STATUS”: “FAILED”

  2. In case Status check API returns “RESP_CODE”: “200” and “TRANSACTION_STATUS”: “FAILED”

Authentication : Token based

  • Method: The request to be passed as name value pair

  • Body Content Type : application/x-www-form-urlencoded

  • Parameter Name : jsonData

  • Parameter Value : Request Body(mentioned below) in Json Format string

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
HEADER PARAMS
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
DATA PARAMS
CUSTOMER_MOBILE String Sender Mobile NO Yes
REQUEST_REFERENCE_NO String Unique reference number that was generated at the time of funds transfer API. Yes
TRANSFER_AMOUNT String Amount that was transferred Yes
PAID_AMOUNT String Amount including charges. Yes
REQUEST_CODE String Request Code (You will get this in response of generate OTP API) Yes
OTP String OTP from SMS Yes
RESPONSE String REFUNDED (Pass this value as a string) Yes

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/cp/refund-transaction/v1.0
Request
HideShow
Headers
Content-Type: application/x-www-form-urlencoded
Authorization: bearer access_token
Body
{
  "HEADER": {
    "OP": "DMTNUR",
    "ST": "REMDOMESTIC",
    "AID": "RS00789"
  },
  "DATA": {
    "CUSTOMER_MOBILE": "XXXXXX6123",
    "REQUEST_REFERENCE_NO": "N15223213286070",
    "TRANSFER_AMOUNT": 100,
    "PAID_AMOUNT": 100,
    "RESPONSE": "REFUNDED",
    "OTP": 6940,
    "REQUEST_CODE": 10941
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 200,
  "RESP_MSG": "Transaction Refund has been successfully processed.",
  "RESPONSE": "EPMONEY_UPDATE_TRANSACTIONSTATUS_SUCCESS",
  "DATA": {
    "SENDER_AVAILBAL": 24990
  }
}

Status Check

Status Check
POST/epMoney/transaction-status/v1.0

Authentication : Token based

Request Parameter Table:

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction. Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment. Yes
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE String Sender Mobile NO Yes
REQUEST_REFERENCE_NO String Unique reference number that was generated at the time of funds transfer API. Yes

Response 1

Parameter Name Sample/Default Value Description Mandatory
TRANSACTION_DATE String Date of the transaction YES
TRANSFER_AMOUNT Amount Txn amount YES
REQUEST_REFERENCE _NO Date Order ID YES
CUSTOMER_MOBILE String Customer Mobile YES
TRANSACTION_STATUS String Possible Values : SUCCESS PENDING (need to perform status check again after specific interval say 1 hr) FAILED (Avail for refund by invoking REFUND API) YES
BANK_REFERENCE_NO String Will only come in case of SUCCESS YES
TRANSACTION_STAT USMESSAGE String Status from bank YES

Response 213: In case txn not found in system, then following response will be received

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/transaction-status/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "9662096123",
  "REQUEST_REFERENCE_NO": "1497012293295"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": "200",
  "RESPONSE": "QUERY_SUCCESS",
  "RESP_MSG": "Transaction status fetch successfully.",
  "DATA": {
    "TRANSACTION_DATE": "2018-01-16 11:51:56.0",
    "TRANSFER_AMOUNT": 5000,
    "BANK_REFERENCE_NO": "N016180009194788",
    "REQUEST_REFERENCE_NO": "N15160837163610",
    "CUSTOMER_MOBILE": "xxxxxx6123",
    "TRANSACTION_STATUS": "SUCCESS",
    "TRANSACTION_STATUSMESSAGE": "Funds sent to beneficiary bank, final status will beknown after 2 hours (NEFT/RTGS)"
  }
}
Response  213
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 213,
  "RESPONSE": "EPMONEY_INVALID_ORDER_ID",
  "RESP_MSG": "Invalid orderId."
}

Status Check on Master Order ID

Status Check on Master Order ID
POST/epMoney/transaction-status-master/v1.0

Authentication : Token based

Request

Parameter Name Sample/Default Value Description Mandatory
OP String Operator code for DMT transaction Yes
AID String BC-Agent ID , generated on partners system that is provided at the time of enrollment YES
ST String Service type (REMDOMESTIC). Please operator list wise service type Yes
CUSTOMER_MOBILE String Sender Mobile NO YES
REQUEST_REFERENCE _NO String Unique reference number that was generated at the time of funds transfer API. YES

Response 1

Parameter Name Sample/Default Value Description Mandatory
TRANSFER_AMOUNT Amount Txn amount YES
REQUEST_REFERENCE_NO Date Order ID YES
CUSTOMER_MOBILE String Customer Mobile YES
TRANSACTION_STAT US String Possible Values : SUCCESS PENDING (need to perform status check again after specific interval say 1 hr) FAILED (Avail for refund by invoking REFUND API) YES
BANK_REFERENCE_NO String Will only come in case of SUCCESS YES
TRANSACTION_STAT USMESSAGE String Status from bank YES

Response Code : 213 In case txn not found in system, then following response will be received,In this case amount debited prior to the transaction will automatically get credited to the partner. No API based refund need to be invoked

Example URI

POST https://uat2yesmoney.easypay.co.in/epMoney/transaction-status-master/v1.0
Request
HideShow
Headers
Content-Type: application/json
Authorization: bearer access_token
Body
{
  "OP": "DMTNUR",
  "ST": "REMDOMESTIC",
  "AID": "RS00789",
  "CUSTOMER_MOBILE": "xxxxxx6123",
  "REQUEST_REFERENCE_NO": "I1514872209156"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
        "RESP_CODE": "200",
            "RESPONSE": "QUERY_SUCCESS",
            "RESP_MSG": "",
            "DATA": [
            {
            "TRANSACTION_DATE": "2018-01-02 11:20:09.0",
            "TRANSFER_AMOUNT": 5000,
            "BANK_REFERENCE_NO": null,
            "REQUEST_REFERENCE_NO": "I15148722091560",
            "CUSTOMER_MOBILE": "xxxxxx6123",
            "TRANSACTION_STATUSMESSGAE": “PENDING”,
            "TRANSACTION_STATUS": "PENDING"
            },
            {
            "TRANSACTION_DATE": "2018-01-02 11:20:09.0",
            "TRANSFER_AMOUNT": 5000,
            "BANK_REFERENCE_NO": null,
            "REQUEST_REFERENCE_NO": "I15148722091561",
            "CUSTOMER_MOBILE": "xxxxxx6123",
            "TRANSACTION_STATUSMESSGAE": “Funds sent to beneficiary bank, final
            status will be known after 2 hours (NEFT/RTGS)”,
            "TRANSACTION_STATUS": "FAILED"
            },
            {
            "TRANSACTION_DATE": "2018-01-02 11:20:09.0",
            "TRANSFER_AMOUNT": 5000,
            "BANK_REFERENCE_NO": null,
            "REQUEST_REFERENCE_NO": "I15148722091562",
            "CUSTOMER_MOBILE": "xxxxxx6123",
            "TRANSACTION_STATUSMESSGAE": “Funds sent to beneficiary bank, final
            status will be known after 2 hours (NEFT/RTGS)”,
            "TRANSACTION_STATUS": "PENDING"
            },
            {
            "TRANSACTION_DATE": "2018-01-02 11:20:09.0",
            "TRANSFER_AMOUNT": 5000,
            "BANK_REFERENCE_NO": null,
            "REQUEST_REFERENCE_NO": "I15148722091563",
            "CUSTOMER_MOBILE": "xxxxxx6123",
            "TRANSACTION_STATUSMESSGAE": “Either customer does not exist or
            Customer/Account combination is invalid or Customer/Account Relationship
            is invalid”,
            "TRANSACTION_STATUS": "PENDING"
            },
            {
            "TRANSACTION_DATE": "2018-01-02 11:20:09.0",
            "TRANSFER_AMOUNT": 5000,
            "BANK_REFERENCE_NO": null,
            "REQUEST_REFERENCE_NO": "I15148722091564",
            "CUSTOMER_MOBILE": "xxxxxx6123",
            "TRANSACTION_STATUSMESSGAE": “Funds sent to beneficiary bank, final
            status will be known after 2 hours (NEFT/RTGS)”,
            "TRANSACTION_STATUS": "FAILED"
            }
            ]
    }
Response  213
HideShow
Headers
Content-Type: application/json
Body
{
  "RESP_CODE": 213,
  "RESPONSE": "EPMONEY_INVALID_ORDER_ID",
  "RESP_MSG": "Invalid orderId."
}

Callback

Call Back Implementation in status check

Partner will get a call back on their server on status change at Yes Money system. Partner need to share the URL of their system. The call back will be received on the same URL.

Authentication : None

HTTP POST URL :

<Partner-URL>
  • Request (application/json)
{
                "TRANSACTION_DATE": "2017-12-21 17:01:03.0",
                "TRANSFER_AMOUNT": "1.0",
                "TRANSACTION_STATUSMESSGAE": "Transaction successful",
                "TRANSACTION_STATUS": "SUCCESS",
                "BANK_REFERENCE_NO": "",
                "REQUEST_REFERENCE_NO": "I1523419754274133860",
                "CUSTOMER_MOBILE": "xxxxxx6123"
        }

Transaction Status Code

Transaction/Status check Response codes

FT API Response - TRANSACTION_DETAILS Node

RESP_CODE RESPONSE RESP_MSG Remarks by EP
300 SUCCESS Transaction successful Confirmed success
350 FAILED Transaction Failed Confirmed failure - Need to avail for refund in case of ST = REMDOMESTIC (Auto Refund)
302 PENDING Transaction Pending Unknown state - Need to do a status check after 15 min of txn

FT API Response - Auto Refund in below cases

Response Code Auto Refund in below cases
420 Internal Validation error (all cases)
350 Transaction failed
744,991 Required parameter not found in request
650 Agent deactivated
653 Threshold exceeded
660 Commercials not defined for agent
656 Account does not exist
755 Duplicate Order Id
420 IMPS mode is temporarily down

Status check API Response - TRANSACTION_STATUS inside DATA node

Parameter Value Remarks by EP
TRANSACTION_STATUS FAILED Need to avail for Refund by calling refund API
TRANSACTION_STATUS PENDING Unknown state - Need to do a status check after 15 min of txn
TRANSACTION_STATUS REFUNDED Already Refunded - No action required henceforth
TRANSACTION_STATUS SUCCESS No action required henceforth
TRANSACTION_STATUS DECLINED Already Refunded(In Channel Patner Wallet) - Need to refund to your agents

Generic Response Codes

  • Below are the list of response codes, response and message. Usually the response can be received as {“RESP_CODE”:“755”,“RESPONSE”:“DUPLICATE_ORDER_ID”,“RESP_MSG”:“Duplicate reference no. passed (Level 3)(755)”}

  • The RESPONSE parameter is always unique, hence a combination of RESP_CODE AND RESPONSE will always be unique, hence if specific messages need to be configured at partners end then the RESPONSE parameter should be considered.

RESP_CODE RESPONSE Message Response
206 Request failed REQ_FAILED
203 Invalid Request INVALID_JSON_FORMAT
204 Configuration Error. Please contact to administrator CONFIGURATION_ERROR
205 Invalid request for value INVALID_REQUESTFOR
206 Duplicate order id, Please try again ORDERID_DUPLICATE
207 Invalid transfer type (NEFT / IMPS) INVALID_TRANSFERTYPE
420 Transaction amount is exceed than an available limit. Your available limit is $AVAILLIMIT EXCEED_TXNAMOUNT
200 Transaction status fetch successfully EPMONEY_TRANS_QUERY_SUCCESS
420 Transaction status fetch failed EPMONEY_TRANS_QUERY_FAILED
200 OTP sent to registered $MOBILENUMBER for customer verification EPMONEY_GENERATE_OTPCUSTVERIFIC
200 OTP sent to registered $MOBILENUMBER for delete beneficiary EPMONEY_GENERATE_OTPDELETEBENE
200 OTP sent to registered $MOBILENUMBER for beneficiary verification EPMONEY_GENERATE_OTPBENEVALIDA
200 OTP sent to registered $MOBILENUMBER for customer login EPMONEY_GENERATE_OTPCUSTLOGIN_S
200 OTP sent to registered $MOBILENUMBER for customer refund EPMONEY_GENERATE_OTPCUSTREFUND
420 OTP generate failed, Please resend OTP EPMONEY_GENERATE_OTP_FAIL
420 OTP expired EPMONEY_OTP_EXPIRED
200 OTP verification successfully EPMONEY_VERIFY_OTP_SUCCESS
420 Incorrect OTP, Please try again. EPMONEY_VERIFY_OTP_FAIL
200 Customer validate successfully. EPMONEY_CUST_VALIDATE_SUCCESS
420 Customer validate failed EPMONEY_CUST_VALIDATE_FAIL
500 Customer not exist EPMONEY_CUST_NOT_EXIST
700 Customer not verified EPMONEY_CUST_NOT_VERIFIED
420 Customer service has been blocked EPMONEY_CUST_SERVICE_BLOCKED
200 Add beneficiary successfully, OTP sent to registered $MOBILENUMBER EPMONEY_ADD_BENEFICIARY_SUCCESS
420 Add beneficiary failed. EPMONEY_ADD_BENEFICIARY_FAIL
420 Beneficiary already added “EPMONEY_ADD_BENEFICIARY_DUPLICATE”
420 Beneficiary registration limit is $LIMIT,Please delete beneficiary and try again. EPMONEY_ADD_BENEFICIARY_EXCEED
200 Beneficiary fetch successfully. EPMONEY_LIST_BENEFICIARY_SUCCESS
420 No beneficiary found. EPMONEY_LIST_BENEFICIARY_FAILED
420 Beneficiary delete failed. “EPMONEY_DELETE_BENEFICIARY_FAILED”
200 Beneficiary delete successfully. “EPMONEY_DELETE_BENEFICIARY_SUCCESS”
420 Invalid beneficiary. EPMONEY_INVALID_BENEFICIARY
200 Transaction fetch successfully. EPMONEY_LIST_TRANSACTION_SUCCESS
200 Transaction status updated successfully. “EPMONEY_UPDATE_TRANSACTIONSTATUS_SUCCESS”
200 Transaction can not be refunded. “EPMONEY_UPDATE_TRANSACTIONSTATUS_FAILED”
420 No transaction found. EPMONEY_LIST_TRANSACTION_FAILED
200 PIN sent on registered mobile number. EPMONEY_GENERATE_PIN_SUCCESS
200 PIN changed successfully. EPMONEY_CHANGE_PIN_SUCCESS
420 PIN change failed. EPMONEY_CHANGE_PIN_FAILED
420 Old PIN is incorrect. EPMONEY_OLD_PIN_INCORRECT
200 Customer add successfully, PIN sent to registered mobile number EPMONEY_CUST_ADD_SUCCESSWITHPIN
200 Customer add successfully,OTP sent to registered mobile number. “EPMONEY_CUST_ADD_SUCCESSWITHOTP”
420 Customer registration failed EPMONEY_CUST_ADD_FAIL
420 Customer pin invalid. EPMONEY_CUST_PIN_INVALID
990 Required parameter not found or empty in request. REQUIRED_PARAMETER_NOT_FOUND
300 Transaction successful SUCCESS
633 Funds sent to beneficiary bank, final status will be known after 2 hours (NEFT/RTGS) “SENT_TO_BENEFICIARY Need to store this txn as Pending”
634 The transaction will be sent to the beneficiary bank the next working day, (NEFT/RTGS) “SCHEDULED_FOR_NEXT_WORKDAY Need to store this txn as Pending”
635 The transaction is not yet processed, can pass or fail, status will be known after 30 mins “IN_PROCESS Need to store this txn as Pending”
636 Transaction accepted by RBI but beneficiary bank rejected it “RETURNED_FROM_BENEFICIARY Need to initiate for refund”
302 Transaction Pending. PENDING
301 Partial Transaction Successful. PARTIAL
350 Transaction failed. FAILED
755 Duplicate reference no. passed (Level 3)(755) DUPLICATE_ORDER_ID
650 Agent deactivated. (650) DEACTIVATE
999 Server Error. Please contact System Administration (Level 3) (999) SERVER_ERROR
658 Entered IFSC not found. (658) IFSC_NOT_FOUND
799 Invalid Input Format (Level 3) (799)/ System not responding INVALID_JSON_FORMAT
111 Please try after 15 minutes (Level 3) (111) “PLEASE_TRY_AFTER_SPECIFIC_INTERVAL”
643 Refund could not be processed with the requested agent code,as the transaction was not processed with this agent code (Level 3) (643) INVALID_AGENT_CLAIMING_REFUND
642 Refund will not be processed for Beneficiary validation transaction (Level 3) (642) “BENEVALIDATE_REFUND_NOT_ALLOWED”
112 Transaction has already been refunded (Level 3) (112) TXN_ALREADY_REFUNDED
999 Duplicate document found in system Duplicate document found insystem
420 Customer details can not be updated as customer is KYC EPMONEY_CUST_UPDATE_ALREADYKYC
999 Invalid document type. Invalid document type.
420 PAN Card has been rejected, Kindly submit PAN Card (420 REJECTED
420 Your transaction amount limit exceed. Kindly upload PAN card (Level 3) (420) PANCARD_PROCESSING
420 Customer service has been blocked (Level 3) (420) CUSTOMER_BLOCKED
991 Required parameter not found or empty in request REQUIRED_PARAMETER_NOT_EMPTY
520 “Beneficiary can not delete as transactions inpending / failed status” “EPMONEY_BENEFICIARY_REFUND_PENDING”
213 Invalid orderId. EPMONEY_INVALID_ORDER_ID
641 “The transaction is not eligible for refund. Please check the transaction status” NOT_ELIGIBLE_FOR_REFUND

Validations to be implemented by Partners

Validations to be implemented by Partners

  1. Per transaction limit check on customer KYC status. Currently it is 25 k for non-kyc and 2L for KYC customers. If txn amount exceeds 25k for non kyc then partner system should not allow this transaction. The check related to how much limit has been consumed for the customer is already there at yesmoney.
  2. For ST = BENEVALIDATE - Txn amount not to exceed 1 Rs
  3. For ST = REMDOMESTIC - Txn amount should not be < 100
  4. For refund API same AID needs to be passed that was originally passed during transaction
  5. Following validations to be implemented as below:
    a) Bene Name > 5 and < 35 characters
    b) In bene name Special characters not allowed
    c) Account number >5 and < 35 characters
  6. There is no OTP base refund required in BENEVALIDATE.
  7. If Beneficiary is not OTP verifyied then it can not able to do a transaction.
  8. For BENEVALIDATE only IMPS trasction is allowed.
  9. If a customer has done a transaction more than 49,999 and a customer is not uploading Pan Card in KYC documents than upload Pan card popup need to be enabled.
  10. In Manual KYC APIs, all identity proof documents have min and max length Validations.

Generated by aglio on 17 Apr 2018