Validate an account name (CoP/VoP)
This feature is only available to businesses in the supported regions.
To enable it, please contact Revolut API Support.
Use the Business API to validate an account name before adding a counterparty or making a payment.
What is account name validation?
Account name validation is a feature that helps you prevent misdirected payments. It checks if the name of your recipient (payee) matches the name registered with their bank account.
This type of check is often referred to as Confirmation of Payee (CoP) or Verification of Payee (VoP), after the names of the regional services it relies on to perform this check. We'll use "CoP" for short as the general term for these services.
You can perform this check at two key moments:
- Before making a payment to a new or existing counterparty.
- When adding a new counterparty.
You can make checks for both individual counterparties (personal accounts) and companies (business accounts), provided that their bank and account type support CoP.
The CoP check is not a complete fraud-prevention tool, and it does not guarantee the person is who they claim to be. It only confirms that the name and account details your provide match the bank's records.
Even if the counterparty's details match, you should still exercise due caution when transferring funds.
How CoP works
Supported regions and services
The validation is performed using a single endpoint. The required details depend on the region, currency and type of the recipient's account. Based on the details that you provide, the endpoint routes to the correct underlying service.
| Region | Currency | Use case | Available to businesses based in | Underlying service |
|---|---|---|---|---|
| UK | GBP | local transfers | UK | CoP (UK) |
| AU | AUD | local transfers | Australia | CoP (AU) |
| RO | RON | local transfers | Romania | SANB, also referred to as BNDS or |
| EUR* | EUR | SEPA payments in EEA |
| VoP |
Full list of countries and territories for EUR
Countries that are members of both EEA and SEPA, including their dependent or overseas territories + Ukraine and Switzerland:
Other currencies, regions, or combinations of those are not supported.
Service limits
The number of checks is limited per business as follows:
-
Per minute:
- Australia: 10 validations
- Other supported regions: 60 validations
-
Per day:
- All supported regions: 10000 validations
If you need to increase these limits, please contact our API Support team.
Make a validation request
To validate an account's name with the Business API, make a request to the /account-name-validation endpoint.
This endpoint routes to the correct service based on the details you provide.
Required details
When making a validation request, depending on the region, currency and type of the recipient's account, you must provide the following details:
- Account number
- Sort code
- Name of the recipient:
- For individuals: First and last name
- For businesses: The legal company name
A sample payload might look like this:
{
"account_no": "12345678",
"sort_code": "54-01-05",
"individual_name": {
"first_name": "John",
"last_name": "Smith"
}
}
Validation results
The results returned in the response come from the underlying CoP systems, not from Revolut. The Business API passes them on as received.
Because of this, the overview below should be treated as an approximation rather than complete documentation.
The response depends on the underlying service.
The API compares the name you provided with the account's records, and returns a status (result code) indicating the result of the check:
-
Matched: The name and account type match the provided details.
-
Close match: The name and/or account type are similar to the provided values:
- The name is a match, but the account type is incorrect. For example, an individual recipient's name was provided under
company_name. The actual account type is returned. - The name is similar to the provided values. Account type is correct. The actual name is returned.
- The name is similar to the provided values, and the account type is incorrect. The actual values are returned.
The actual values are returned.
- The name is a match, but the account type is incorrect. For example, an individual recipient's name was provided under
-
Not matched: The name and account type don't match the provided values.
-
Cannot be checked: The check cannot be performed and retries won't help. For example, the recipient's bank doesn't support CoP.
-
Temporarily unavailable: The check cannot be performed right now. For example, the recipient's bank didn't respond to our request. You should retry the request later.
For request and response models:
Sandbox
Keep in mind that the Sandbox cannot be used for actual validation.
The Sandbox environment provides validation for testing purposes only.
- Incomplete or invalid requests return production-like error responses.
- Complete and valid requests do not undergo real validation and will always return:
cannot_be_checked.
This helps you verify request formatting and error handling without relying on real production logic.
Glossary
This section presents the external services that the account name validation relies on, depending on the region and currency. It is meant as a brief overview, and should not be treated as formal or exhaustive definitions.
CoP (UK)
Confirmation of Payee (CoP) is an account name checking service in the UK that helps payers make sure local payments in GBP aren't sent to the wrong bank or building society account.
It checks the recipient's name against the account's sort code and number, and uses a "traffic light" system to indicate whether they're a match, close match, or no match. It is only available to UK-based businesses, for accounts that support CoP.
CoP (AU)
The CoP in Australia is a separate service from the one in the UK. While they serve a similar purpose and share the same name, they are not related.
Confirmation of Payee (CoP) is an account name checking service in Australia that helps payers make sure local payments in AUD aren't sent to the wrong bank, building society, or credit union account.
It validates the recipient's name against the account number and BSB (Bank-State-Branch) code, and uses a "traffic light" system to indicate whether they're a match, close match, or no match. It is only available to businesses based in Australia, for accounts that support CoP.
SANB, BNDS, CoP (RO)
Serviciul Afișare Nume Beneficiar (SANB), or Beneficiary Name Display Service (BNDS) in English, is an account name checking service in Romania that helps payers make sure local payments in RON aren't sent to the wrong bank account. It is only available to businesses based in Romania, for accounts that support this service.
In response to provided name and IBAN, it returns a truncated version of the recipient's name – the first name and initial for personal accounts or part of the company's name for business accounts – for the payer to validate them.
In our API documentation, we'll refer to it as CoP (RO).
VoP
Verification of Payee (VoP) is an account name checking service in Europe that helps payers make sure that EUR payments in supported European countries aren't sent to the wrong payment account.
It checks the recipient's name against the account's IBAN, and uses a "traffic light" system to indicate whether they're a match, close match, or no match.