Skip to content

Validate Account

Request

Check that a beneficiary bank account or, with payment_method instant_payment, a UPI virtual payment address exists and, when a name is supplied, that it matches the account holder. India only (country must be IND).

Security
bearerAuth
Bodyapplication/jsonrequired
One of:
countrystring(ApiCountry)required

Destination country. Must be IND - account validation is available for India only, because it is the only corridor with the bank reference data the validation backends need. Any other value is a 400.

Enum:"BGD""IND""PAK""PHL""NPL""EGY""VNM""NGA"
payment_typestring(PaymentType)

Payment type the beneficiary will be paid out under; picks the provider route the validation runs on

Default:"C2C"
Enum:"B2B""B2C""C2B""C2C"
beneficiary_namestring or null(Beneficiary Name)
Any of:

Account holder name, when known

string
payment_methodstring(Payment Method)

Validate a bank account (the default)

Default:"bank_transfer"
Value:"bank_transfer"
account_numberstring(Account Number)required

Bank account id of the beneficiary

branch_codestring(Branch Code)required

Bank branch code (IFSC code for India)

curl -i -X POST \
  https://docs.swiftxpay.com/_mock/openapi/v3/validate_account \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "account_number": "99345724439934",
    "beneficiary_name": "Nikhil Sharma",
    "branch_code": "FDRL0001883",
    "country": "IND",
    "payment_type": "C2C"
  }'

Responses

Successful Response

Bodyapplication/json
countrystring(ApiCountry)required

Destination country

Enum:"BGD""IND""PAK""PHL""NPL""EGY""VNM""NGA"
statusstring(BankAccountStatus)required

Account status as reported by the validation backend. pending means the backend has queued the check and the account should be validated again later

Enum ValueDescription
invalid

The account was not found, or is blocked, closed or inactive, or the IFSC code is invalid. Do not send a payment to it.

nre

The account exists and is an Indian NRE (Non-Resident External) account. It passes validation; payments to it are handled under NRE rules.

pending

The check is still running at the provider. This is not a failure: check again later.

valid

The account exists and is active.

namestring or null(Name)
Any of:

Account holder name reported by the backend

string
payment_methodstring(Payment Method)
Default:"bank_transfer"
Enum:"bank_transfer""instant_payment"
Discriminator
Value:"bank_transfer"
account_numberstring(Account Number)required

Bank account id of the beneficiary

branch_codestring(Branch Code)required

Bank branch code (IFSC code for India)

Response
{ "account_number": "99345724439934", "branch_code": "FDRL0001883", "country": "IND", "name": "Nikhil Sharma", "payment_method": "bank_transfer", "status": "valid" }