Skip to main content
POST
Resolve a bank account

Authorizations

Authorization
string
header
required

Bearer token authentication. Pass your API key as Authorization: Bearer sk_.... See Authentication for keys, scopes, and sandbox vs production.

Body

application/json
account_number
string
required

The account number to look up, digits only and exactly as the account holder typed it.

Example:

"0123456789"

bank_code
string
required

Code of the bank holding the account, taken from code on the bank list.

Example:

"101"

country
string | null

Two-letter ISO 3166-1 country of the bank. Send it on every call. If you leave it out, we use your account's country, so a Nigerian bank looked up from an account set to another country comes back resolved: false. Only NG can be looked up today. Any other country comes back resolved: false with lookup_supported: false, not an error.

Example:

"NG"

Response

The lookup result. Check resolved before you trust account_name.

resolved
boolean

Whether the account number was matched. false covers a wrong number, an unsupported country, and a lookup that could not be completed, so read message to tell them apart. A false here is not an HTTP error.

Example:

true

lookup_supported
boolean

Whether we can look up names for this country and bank at all. When false, no lookup will ever work for it, so let the account holder type the name exactly as it appears on the account. A false resolved with a true lookup_supported means this one account was not found.

Example:

true

account_name
string | null

Name registered on the account. Show it back for confirmation before you submit the payout destination. null when resolved is false.

Example:

"ADA OKAFOR"

account_number
string | null

The account number as it is held on record, which can be normalised from what you sent. null when resolved is false.

Example:

"0123456789"

message
string | null

Why the lookup did not resolve, safe to show the account holder. null on a successful match.

Example:

null