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.
Verify if the UPI VPA / UPI handle exists and return the account name as per bank records if UPI VPA exists.
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) |
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 |
{
"requestId" : "30mar001",
"beneficiaryName" : "Sri Krishna",
"beneficiaryVPA" : "pftest1@axis"
}
{
"code" : 200,
"message" : "success",
"data" : {
"requestId" : "30mar001",
"referenceNo" : "PFUVxBNJ2j8KcufJ5u0t",
"beneficiaryName" : "Sri Krishna",
"beneficiaryVPA" : "pftest1@axis"
}
}
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
Merchant have to pass the requestId in the GET request as mentioned above.
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
|
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 |
{
"code" : 200,
"message" : "success",
"data" : {
"requestId" : "30mar001",
"referenceNo" : "PFUVxBNJ2j8KcufJ5u0t",
"nameAtBank" : "Krishna",
"statusCode" : "SUCCESS",
"errorDescription" : ""
}
}
{
"code" : 200,
"message" : "success",
"data" : {
"requestId" : "30mar002",
"referenceNo" : "PFUVf2Wc5pG3U20uwIyb",
"nameAtBank" : "",
"statusCode" : "FAILURE",
"errorDescription" : "REJECTED-INVALID VIRTUAL ADDRESS"
}
}
Http Status Code
200 - Success
400 - Error
{
"code" : 400,
"errorCode" : 5002,
"message" : "requestId already exists. Duplicate not allowed"
}
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 |
Error Codes | Error Messages |
---|---|
5002 | requestId already exists. Duplicate not allowed |
5004 | requestId not found |
Login to your Sandbox / Production environment and UPI Verification API Postman Collection download from the dashboard