UPI Verification API
This document outlines the details of the UPI Verification API.
API Description
Objective
The UPI Verification API confirms the existence and the validity of a UPI ID. It returns the following details as a part of its verification process:
- If the user's UPI ID exists and is a valid UPI ID.
- The name of the account holder as registered in the associated bank.
API URL
https://ind-engine.thomas.hyperverge.co/v1/UPIVerification
API URL
UPIVerification
Overview
The API is RESTful and uses standard HTTP verbs and status codes. The responses are in JSON format and you should upload all images and files as form-data through a POST request.
Authentication
You need a unique pair of application ID ( appId ) and application key (appKey) from HyperVerge to verify your identity for accessing the API.
API Request Details
Method - POST
Headers
| Parameter | Mandatory or Optional | Description | Valid Values |
|---|---|---|---|
| content-type | Mandatory | This parameter defines the media type for the request payload. | application/json |
| appId | Mandatory | Application ID shared by HyperVerge | N/A. This is a unique value. |
| appKey | Mandatory | Application Key shared by HyperVerge | N/A. This is a unique value. |
| transactionId | Mandatory | Unique ID for the customer journey. | N/A. The unique identifier for the customer's application. |
Inputs
The following the only field required for the API's request body.
UPIId - Enter the UPI ID of the customer. For example, "123abc456@sbi" , "xyz987@okicici".
Sample Request
The following code snippet demonstrates a standard curl request for the API:
curl --location --request POST 'https://ind-engine.thomas.hyperverge.co/v1/UPIVerification' \
--header 'Content-Type: application/json' \
--header 'appId: <Enter_the_HyperVerge_appId>' \
--header 'appKey: <Enter_the_HyperVerge_appKey>' \
--header 'transactionId: <Enter_the_HyperVerge_transactionID>' \
--data '{
"UPIId": "<Enter_the_UPI_ID>"
}'
Success Response Sample
The following is a sample response for a valid UPI ID.
{
"status": "success",
"statusCode": "200",
"result": {
"data": {
"accountExists": true,
"UPIHolderName": "<Name_of_UPI_account_holder>"
}
}
}
Success Response Details
The following table provides the details of the fields in a success response.
| Parameter | Description |
|---|---|
UPIHolderName | The name of the UPI holder according to the bank records. |
accountExists | The boolean value indicates if an account exists for the given UPI ID. |
Failure Response Sample
The following is a sample response for an invalid UPI ID.
{
"status": "success",
"statusCode": "200",
"result": {
"data": {
"accountExists": false
}
}
}
Error Response Sample
The following is a sample response for an invalid UPI ID.
- Error - Failed at Bank
{
"status": "failure",
"statusCode": "500",
"error": {
"message": "Failed at bank"
}
}
Error Response Details
| Status Code | Error Message | Error Description |
|---|---|---|
| 400 | Missing required request parameters. | Some mandatory request parameters are missing in the API request made. Check if "UPIId" is given in request body. |
| 401 | Missing/Invalid credentials | The appId / appKey is missing or incorrect in the request headers. |
| 429 | Requests rate limit | Rate limit breached. Wait for some time before sending the next request |
| 500 | Something went wrong with API request or Internal Server Error / Failed at Bank | Check API request headers and/or contact HV for investigation |
| 403 | Access Denied | Please contact Hyperverge |