UPI Verification API Document v1.0

Introduction

Payout Fintech API is organised around REST. Our API has predictable resource-oriented URLs, accepts JSON request and returns response, and uses standard HTTP response codes, authentication, and verbs.

You can use our API in the sandbox and production environment. We provide two different API urls and tokens for sandbox and production.

Pass API token and content-type for all the requests in header, token will be shared to you in an email.

  • content-type: application/json
  • authorization: Bearer <Token>

UPI Verification / UPI VPA Verification

Verify if the UPI VPA / UPI handle exists and return the account name as per bank records if UPI VPA exists.

  • URL: /upivpa
  • Method: POST

Request

Parameters Range Datatype Required Description
requestId Max 36 string Y Unique identifier to identify request, it should be unique to avoid duplicate transactions.
beneficiaryName Max 35 string Y Beneficiary name. Beneficiary information is a mandatory field, merchant can pass what they have for the customer Regular expression: [a-zA-Z0-9_-., ]
beneficiaryVPA Max 60 string Y Customer VPA (UPI handle)

Response

Parameters Datatype Description
requestId string Returns the request value
referenceNo string Unique Reference number generated for the transaction by the Payout Fintech.
beneficiaryName string Returns the request value
beneficiaryVPA string Returns the request value

Example

Request

{

   "requestId" :   "30mar001",

   "beneficiaryName" :   "Sri Krishna",

   "beneficiaryVPA" :   "pftest1@axis"

}

Response

{

   "code" :   200,

   "message" :   "success",

   "data" : {  

"requestId" :   "30mar001",

"referenceNo" :   "PFUVxBNJ2j8KcufJ5u0t",

"beneficiaryName" :   "Sri Krishna",

"beneficiaryVPA" :   "pftest1@axis"

}

}

UPI Verification Status API

Get the verification status of the UPI VPA by request Id, return actual name at bank and statusCode returns "SUCCESS" along with nameAtBank field if UPI VPA exist.

We recommend to compare the nameAtBank and beneficiaryName and decide. In case UPI VPA does not exist statusCode returns FAILURE along with errorDescription

  • URL: /upivpa/{requestId}
  • Method: GET

GET Request

Merchant have to pass the requestId in the GET request as mentioned above.

Request Body

N/A

Response

Parameters Datatype Description
requestId string Returns the request value
referenceNo string Unique Reference number generated for the transaction by the Payout Fintech.
nameAtBank string Account name from the beneficiary bank records associated with UPI VPA
statusCode string Returns the statusCode
  • SUCCESS
  • FAILURE
errorDescription string Returns only for the failure case based on availability. Describe the reason for the error the description returned by bank. You can ignore and relay the statusCode

Example 1

Success Response

{

   "code" :   200,

   "message" :   "success",

   "data" : {  

"requestId" :   "30mar001",

"referenceNo" :   "PFUVxBNJ2j8KcufJ5u0t",

"nameAtBank" :   "Krishna",

"statusCode" :   "SUCCESS",

"errorDescription" :   ""

}

}

Example 2

Failure Response

{

   "code" :   200,

   "message" :   "success",

   "data" : {  

"requestId" :   "30mar002",

"referenceNo" :   "PFUVf2Wc5pG3U20uwIyb",

"nameAtBank" :   "",

"statusCode" :   "FAILURE",

"errorDescription" :   "REJECTED-INVALID VIRTUAL ADDRESS"

}

}

API Success and Error Messages

Http Status Code

200 - Success

400 - Error

Sample Error Response

     {

      "code" :   400,

      "errorCode" :   5002,

      "message" :   "requestId already exists. Duplicate not allowed"

    }

Possible Errors

Common Validation Error

Error code 5001 is same for all validation errors

Error Messages
requestId is mandatory
requestId maximum length should not exceed 36 characters
beneficiaryName is mandatory
beneficiaryName maximum length should not exceed 35 characters
beneficiaryName should contains only [a-zA-Z0-9_-., ] character sets
beneficiaryVPA is mandatory
Invalid beneficiaryVPA
Other Possible Errors
Error Codes Error Messages
5002 requestId already exists. Duplicate not allowed
5004 requestId not found

Postman Collection

Login to your Sandbox / Production environment and UPI Verification API Postman Collection download from the dashboard