---
page_source: https://docs.juspay.io/payout-sea/docs/integration/bank-account-validation
page_title: Bank Account Validation
---

## API Version: default


# Bank Account Validation



Merchant can validate beneficiary bank account, VPA using this API## Endpoints:
- Production: https://api.juspay.in/payout/merchant/v1/benedetails

## Request Type: 
POST

## Authorization:

#### Basic Auth:
Consists of two parts.

* Username: API Key obtained from Juspay dashboard
* Password: Empty string

Example:- Basic MUQ2QUxxxxxxxxxxxxU5QTIxQzNFNTQwNkFDMEZCOg==
- Tags: String, Mandatory
## Headers:

#### x-merchantid:
Please pass merchant id provided by Juspay
- Tags: string
## Sample Code Snippets:
### Sample Request:

#### Account IFSC Code Snippet:

```account ifsc
curl --location --request POST 'https://api.juspay.in/payout/merchant/v1/benedetails' \
-u your_api_key: \
--header 'Content-Type: application/json' \
--header 'x-merchantId: <merchant-id>' \
--data-raw '{
    "beneId":"ravibene4",
    "beneDetails" : {
                "details": {
                    "name": "Shubham Kumar",
                    "ifsc": "YESB0000262",
                    "account": "026291800001191"
                },
                "type": "ACCOUNT_IFSC"
            },
    "preferredGateway" : "CFGEN",
    "command" : "validate",
    "customerId" : "ravi1",
    "email": "dummy@gmail.com",
    "phone": "9999999999"

}

```

#### UPI Code Snippet:

```upi
curl --location --request POST 'https://api.juspay.in/payout/merchant/v1/benedetails' \
-u your_api_key: \
--header 'Content-Type: application/json' \
--header 'x-merchantid: <merchant-id>' \
--data-raw '{
    "beneId":"ravibene1",
    "beneDetails" : {
                "details": {
                    "name": "Shubham Kumar",
                    "vpa": "success@upi"    
  },
                "type": "UPI_ID"
            },
    "preferredGateway" : "CFGEN",
    "command" : "validate",
    "customerId" : "ravi1",
    "email": "dummy@gmail.com",
    "phone": "9999999999"

}'

```

#### Mobile Number to VPA Code Snippet:

```mobile number to vpa
curl --location 'https://api.juspay.in/payout/merchant/v1/benedetails' \
--header 'Content-Type: application/json' \
--header 'x-merchantid: <merchant id>' \
--header 'Authorization: Basic (b64 encoded API key)' \
--data-raw '{
    "beneId":"beneID11",
    "beneDetails" : {
                "details": {
                    "name": "Aditya Kadrolkar",
                    "mobile": "8088375524"
                    },
                "type": "UPI_ID"
            },
    "preferredGateway" : "YESBIZ",
    "command" : "resolve",
    "customerId" : "14212551",
    "email": "test@gmail.com",
    "phone": "8088375524"
}'

```

### Sample Response:

#### Account IFSC:
```json
{
  "validateResp": {
    "subCode": "200",
    "status": "SUCCESS",
    "message": "Bank Account details verified successfully",
    "data": {
      "utr": "1643701127355992",
      "refId": "1063069",
      "nameAtBank": "JOHN DOE",
      "micr": 400532038,
      "city": "GREATER BOMBAY",
      "branch": "SANTACRUZ, MUMBAI",
      "bankName": "YES BANK",
      "amountDeposited": "1"
    },
    "accountStatusCode": "ACCOUNT_IS_VALID",
    "accountStatus": "VALID"
  },
  "uniqueId": "ravibene4",
  "status": "VALID",
  "remark": "Bank Account details verified successfully",
  "nameAtBank": "JOHN DOE",
  "fulfillmentMethod": "CFGEN_IMPS",
  "beneDetails": {
    "details": {
      "name": "Shubham Kumar",
      "ifsc": "YESB0000262",
      "account": "026291800001191"
    },
    "type": "ACCOUNT_IFSC"
  }
}
```

#### UPI:
```json
{
  "validateResp": {
    "subCode": "200",
    "status": "SUCCESS",
    "message": "VPA verification successful",
    "data": {
      "nameAtBank": "JOHN SNOW",
      "accountExists": "YES"
    }
  },
  "uniqueId": "ravibene5",
  "status": "VALID",
  "remark": "VPA verification successful",
  "nameAtBank": "JOHN SNOW",
  "fulfillmentMethod": "CFGEN_UPI",
  "beneDetails": {
    "details": {
      "vpa": "success@upi",
      "name": "Shubham Kumar"
    },
    "type": "UPI_ID"
  }
}
```

#### Mobile Number to VPA:
```json
{
	"validateResp": {
    	"status": "SUCCESS",
    	"responseMessage": "SUCCESS",
    	"responseCode": "SUCCESS",
    	"payload": {
        	"vpa": "test@upi",
        	"name": "Aditya",
        	"merchantId": "ECYBUPITEST",
        	"merchantChannelId": "ECYBUPITESTAPP",
        	"isMerchant": "false",
        	"iin": "500007",
        	"ifsc": "AABD0000011",
        	"gatewayTransactionId": "fdbb7168f9d4e90945fa032823f7ea",
        	"gatewayResponseStatus": "SUCCESS",
        	"gatewayResponseMessage": "Your transaction is successful",
        	"gatewayResponseCode": "00"
    	}
	},
	"uniqueId": "beneID11",
	"status": "VALID",
	"responseCode": "VALID_VPA",
	"resolvedVpa": "test@upi",
	"remark": "Mobile Number Resolved Successfully",
	"nameAtBank": "Aditya",
	"gatewayRefId": "fdbb7168f9d4e90945fa032823f7ea",
	"fulfillmentMethod": "YESBIZ_UPI",
	"beneDetails": {
    	"details": {
        	"mobile": "8088375524"
    	},
    	"type": "UPI_ID"
	}
}

```

## Body Parameters:
### Parameters:

#### beneId:
- Description: For each verification to have a unique reference
- Tags: string, Required

#### customerId:
- Description: Merchant customerId
- Tags: string, Required

#### beneDetails:
- Description: Json Object for bene details
- Value:
  - **Details**:
    - Value:
      - **Name**:
        - Description: name of beneficiary
        - Value: *Do not pass any special characters in name
        - Tags: String
      - **Ifsc**:
        - Description: IFSC code of bene bank account. Required for ACCOUNT_IFSC
        - Tags: String, Required
      - **Account**:
        - Description: Account number of beneficiary. Required for ACCOUNT_IFSC
        - Tags: String, Required
      - **Vpa**:
        - Description: VPA to be verified. Required for UPI_ID type when mobile is not being passed
        - Tags: String, Required
      - **Mobile**:
        - Description: Mobile number against which primary VPA needs to be fetched. Required for UPI_ID type when vpa is not being passed
        - Tags: String, Required
    - Tags: object
  - **Type**:
    - Description: Type of beneficiary validation. UPI_ID/ACCOUNT_IFSC/IFSC
    - Tags: string, Required
- Tags: object

#### preferredGateway:
- Description: Preffered gateway through which bene validation should happen
- Tags: string

#### metadata:
- Description: Additional metadata
- Tags: string

#### command:
- Description: Action recommended to Juspay on provided beneficiary details.‘validate’ - this command will create and validate the beneficiary‘create’ - this command will create the beneficiary at Juspay end‘resolve’ - this command will fetch primary VPA linked to the mobile number passed in beneficiary details
- Tags: string

#### email:
- Description: Email id of beneficiary
- Tags: string

#### phone:
- Description: Phone number of beneficiary
- Tags: string
## API Responses:
### 200:

#### 200 : UPI_ID:
- Value:
  - **ValidateResp**:
    - Value:
      - **SubCode**:
        - Tags: String
      - **Status**:
        - Tags: String
      - **Message**:
        - Tags: String
      - **Data. nameAtBank**:
        - Tags: String
      - **Data. accountExists**:
        - Tags: String
    - Tags: Object
  - **UniqueId**:
    - Tags: String
  - **Status**:
    - Tags: String
  - **Remark**:
    - Tags: String
  - **NameAtBank**:
    - Tags: String
  - **FulfillmentMethod**:
    - Tags: String
  - **BeneDetails**:
    - Value:
      - **Details.vpa**:
        - Tags: String
      - **Details.name**:
        - Tags: String
      - **Type**:
        - Tags: String
    - Tags: Object
- Tags: Object

#### 200 : Account_IFSC:
- Value:
  - **ValidateResp**:
    - Value:
      - **SubCode**:
        - Tags: String
      - **Status**:
        - Tags: String
      - **Message**:
        - Tags: String
      - **Data. utr**:
        - Tags: String
      - **Data. refId**:
        - Tags: String
      - **Data. nameAtBank**:
        - Tags: String
      - **Data. micr**:
        - Tags: Integer
      - **Data. city**:
        - Tags: String
      - **Data.branch**:
        - Tags: String
      - **Data.bankName**:
        - Tags: String
      - **Data. amountDeposited**:
        - Tags: String
      - **AccountStatusCode**:
        - Tags: String
      - **AccountStatus**:
        - Tags: String
    - Tags: Object
  - **UniqueId**:
    - Tags: String
  - **Status**:
    - Tags: String
  - **Remark**:
    - Tags: String
  - **NameAtBank**:
    - Tags: String
  - **FulfillmentMethod**:
    - Tags: String
  - **BeneDetails**:
    - Value:
      - **Details.name**:
        - Tags: String
      - **Details.ifsc**:
        - Tags: String
      - **Details.account**:
        - Tags: String
      - **Type**:
        - Tags: String
    - Tags: Object
- Tags: Object
### 400:

#### error:
- Tags: boolean

#### errorCode:
- Description: E05
- Tags: string

#### errorMessage:
- Description: Duplicate BeneId.
- Tags: string

#### userMessage:
- Description: Bad request
- Tags: string
