API Test Keys

Validate a VPA

POST
/v1/fund_accounts/validations

Click to copy

Use this endpoint to create a VPA (UPI) account validation transaction.

Is this page helpful?

Curl

1
curl -u <YOUR_KEY>:<YOUR_SECRET> \
2
-X POST https://api.razorpay.com/v1/fund_accounts/validations \
3
-H "Content-Type: application/json" \
4
-d '{
5
"source_account_number": "7878780080316316",
6
"validation_type": "pennydrop",
7
"reference_id": "112233",
8
"notes": {
9
"key_1": "value_1",
10
"key_2": "value_2"
11
},
12
"fund_account": {
13
"account_type": "vpa",
14
"vpa": {
15
"address": "gaurav.kumar@exampleupi"
16
},
17
"contact": {
18
"name": "Gaurav Kumar",
19
"email": "gaurav.kumar@example.com",
20
"contact": "9123456789",
21
"type": "employee",
22
"reference_id": "Contact_12345"
23
}
24
}
25
}'

Success

Failure

1
{
2
"id": "fav_00000000000001",
3
"entity": "fund_account.validation",
4
"status": "completed",
5
"validation_results": {
6
"account_status": "active",
7
"registered_name": "Gaurav Kumar",
8
"details": "The beneficiary account is valid",
9
"name_match_score": 100,
10
"validated_account_type": "bank_account",
11
"bank_account": {
12
"bank_routing_code": "ICIC0000047",
13
"account_number": "XXXXXXXX5599",
14
"bank_name": "ICICI Bank",
15
"account_type": "savings"
16
}
17
},
18
"status_details": {
19
"description": "Validation request is completed",
20
"source": "beneficiary_bank",
21
"reason": "validation_completed"
22
},
23
"reference_id": "112233",
24
"fund_account": {
25
"id": "fa_00000000000001",
26
"entity": "fund_account",
27
"account_type": "vpa",
28
"vpa": {
29
"address": "gaurav.kumar@exampleupi"
30
},
31
"active": true,
32
"created_at": 1567064019,
33
"contact": {
34
"id": "cont_00000000000001",
35
"entity": "contact",
36
"name": "Gaurav Kumar",
37
"email": "gaurav.kumar@example.com",
38
"contact": "9123456789",
39
"type": "employee",
40
"reference_id": "Contact_12345",
41
"active": true
42
}
43
}
44
}
Request Parameters
source_account_number

*

string

The account from which money should be deducted for the account validation transaction.

  • Pass your customer identifier if you want money to be deducted from RazorpayX Lite.

Watch Out!

  • This is not your contact's bank account number. Log in to your and go to My Account & Settings → Banking → Customer Identifier.
  • This value is different for Test Mode and Live Mode.

validation_type

*

string

The method used for validating the bank account. In this case, pennydrop.

reference_id
string

Maximum 40 characters. A user-entered reference for the contact. For example, Acme Contact ID 12345.

notes
object

Key-value pair that can be used to store additional information about the entity. Maximum 15 key-value pairs, 256 characters (maximum) each. For example, "note_key": "Beam me up Scotty”.

fund_account

*

object

The fund account id you want to validate.

Show child parameters (2)

contact

*

object

The details of the contact.

name
string

The customer’s name. For example, Gaurav Kumar.

email
string

The customer’s email address. For example,

.

contact
string

The customer's phone number. A maximum length of 15 characters, including country code. For example, +919000090000.

type
string

Defines the contact type . For example, employee

Response Parameters
id
string

The unique identifier linked to the fund account validation. For example, fav_0000000001.

entity
string

Here it is fund_account.validation.

status
string

The status of the account validation transaction. Possible values:

  • created
  • completed
  • failed

validation_results
object

Details extracted from the results of the fund account validation.

Show child parameters (4)

validated_account_type
string

Here it is bank_account.

Show child parameters (1)

status_details
object

Status of the fund account validation.

Show child parameters (3)

reference_id
string

Unique reference_id generated for the validation transaction.

fund_account
object

The details of the fund account which was validated.

Show child parameters (3)

vpa
object

The details associated with the account holder's virtual payment address.

Show child parameters (1)

active
boolean

Possible values of fund account status:

  • true: active
  • false: inactive

created_at
integer

Timestamp, in unix, when the fund account was created. For example, 1543650891.

contact
object

The contact's details.

Show child parameters (8)

Validate a VPA

POST
/v1/fund_accounts/validations

Click to copy

Use this endpoint to create a VPA (UPI) account validation transaction.

Is this page helpful?

Request Parameters
source_account_number

*

string

The account from which money should be deducted for the account validation transaction.

  • Pass your customer identifier if you want money to be deducted from RazorpayX Lite.

Watch Out!

  • This is not your contact's bank account number. Log in to your and go to My Account & Settings → Banking → Customer Identifier.
  • This value is different for Test Mode and Live Mode.

validation_type

*

string

The method used for validating the bank account. In this case, pennydrop.

reference_id
string

Maximum 40 characters. A user-entered reference for the contact. For example, Acme Contact ID 12345.

notes
object

Key-value pair that can be used to store additional information about the entity. Maximum 15 key-value pairs, 256 characters (maximum) each. For example, "note_key": "Beam me up Scotty”.

fund_account

*

object

The fund account id you want to validate.

Show child parameters (2)

contact

*

object

The details of the contact.

name
string

The customer’s name. For example, Gaurav Kumar.

email
string

The customer’s email address. For example,

.

contact
string

The customer's phone number. A maximum length of 15 characters, including country code. For example, +919000090000.

type
string

Defines the contact type . For example, employee

Response Parameters
id
string

The unique identifier linked to the fund account validation. For example, fav_0000000001.

entity
string

Here it is fund_account.validation.

status
string

The status of the account validation transaction. Possible values:

  • created
  • completed
  • failed

validation_results
object

Details extracted from the results of the fund account validation.

Show child parameters (4)

validated_account_type
string

Here it is bank_account.

Show child parameters (1)

status_details
object

Status of the fund account validation.

Show child parameters (3)

reference_id
string

Unique reference_id generated for the validation transaction.

fund_account
object

The details of the fund account which was validated.

Show child parameters (3)

vpa
object

The details associated with the account holder's virtual payment address.

Show child parameters (1)

active
boolean

Possible values of fund account status:

  • true: active
  • false: inactive

created_at
integer

Timestamp, in unix, when the fund account was created. For example, 1543650891.

contact
object

The contact's details.

Show child parameters (8)

Curl

1
curl -u <YOUR_KEY>:<YOUR_SECRET> \
2
-X POST https://api.razorpay.com/v1/fund_accounts/validations \
3
-H "Content-Type: application/json" \
4
-d '{
5
"source_account_number": "7878780080316316",
6
"validation_type": "pennydrop",
7
"reference_id": "112233",
8
"notes": {
9
"key_1": "value_1",
10
"key_2": "value_2"
11
},
12
"fund_account": {
13
"account_type": "vpa",
14
"vpa": {
15
"address": "gaurav.kumar@exampleupi"
16
},
17
"contact": {
18
"name": "Gaurav Kumar",
19
"email": "gaurav.kumar@example.com",
20
"contact": "9123456789",
21
"type": "employee",
22
"reference_id": "Contact_12345"
23
}
24
}
25
}'

Success

Failure

1
{
2
"id": "fav_00000000000001",
3
"entity": "fund_account.validation",
4
"status": "completed",
5
"validation_results": {
6
"account_status": "active",
7
"registered_name": "Gaurav Kumar",
8
"details": "The beneficiary account is valid",
9
"name_match_score": 100,
10
"validated_account_type": "bank_account",
11
"bank_account": {
12
"bank_routing_code": "ICIC0000047",
13
"account_number": "XXXXXXXX5599",
14
"bank_name": "ICICI Bank",
15
"account_type": "savings"
16
}
17
},
18
"status_details": {
19
"description": "Validation request is completed",
20
"source": "beneficiary_bank",
21
"reason": "validation_completed"
22
},
23
"reference_id": "112233",
24
"fund_account": {
25
"id": "fa_00000000000001",
26
"entity": "fund_account",
27
"account_type": "vpa",
28
"vpa": {
29
"address": "gaurav.kumar@exampleupi"
30
},
31
"active": true,
32
"created_at": 1567064019,
33
"contact": {
34
"id": "cont_00000000000001",
35
"entity": "contact",
36
"name": "Gaurav Kumar",
37
"email": "gaurav.kumar@example.com",
38
"contact": "9123456789",
39
"type": "employee",
40
"reference_id": "Contact_12345",
41
"active": true
42
}
43
}
44
}