Skip to main content

Validate IBAN

IBANs follow a specific algorithm to ensure that the chance of an error is minimized. You can query it individually or with other inputs POST /payments/validations
Request
Response

Validate IBAN and BIC

You might want to check that the IBAN (beneficiary’s account) is from the right BIC (bank). It’s helpful when you ask for both fields in the UI.
Two or more BICs can be associated with a single IBAN (for example, REVOGB21 and REVOGB2L for GB85REVO04007549976222), and their use varies based on the currency and payment scheme. For EUR payments within the SEPA region, the optimal scheme is typically SEPA or SEPA Instant, and the correct BIC for this is REVOGB21. Using REVOGB2L will lead to payment failure or unintended routing through Target2 with intermediary fees.By default, we assume you prefer SEPA/SEPA Instant for eligible EUR transfers. Therefore, if you indicate that a transfer is in EUR, we will alert you if the BIC provided does not support SEPA/SEPA Instant. This alert won’t be triggered if the currency is not specified.Outside of the SEPA context, we opt for softer consistency checks in order to compensate for potential issues in how banks share the account details with their customers. For example, if your user enters an AE IBAN and a BIC that corresponds to that bank’s branch (like ABINAEAADXB) instead of the head entity (like ABINAEAAXXX), we won’t return an alert.
POST /payments/validations
Request
Response

Validate bank identifier

When sending local transfers, you might want to ensure that the customer input for the bank identifier (BIC, sort code, ABA routing number,
clearingnummer…) is correct. You need to clarify the country of that local bank identifier, so we know what you’re dealing with.
POST /payments/validations
Request
Response

Validate account number

Some account numbers can be validated through specific algorithms. POST /payments/validations
Request
Response

Differences in corridor requirements

When working with different providers in various corridors, there can be discrepancies in how they handle inputs. The most common variation occurs when there are two identifiers for the bank - such as a bank code and a branch code. Some providers expect separate fields for each identifier, while others require the two to be combined into a single string. Our API is designed to accommodate these differences and aims to support the well-known formatting patterns used by different providers.

Validate chain of intermediaries

When processing payments that involve an intermediary bank, you might want to ensure that the customer input for the intermediary BICs is correct and appropriate for the creditor agent and currency. By validating this information, we help confirm that the intermediary bank is suitable for the transaction, preventing potential routing errors. POST /payments/validations
Request
Response

Validate settlement system

You can validate that a bank identifier supports the specified settlement system. Different banks may support different settlement systems, and validating this compatibility helps prevent payment failures caused by routing through unsupported settlement methods. POST /payments/validations
Request
Response

Validate document identifiers

In some corridors, the settlement scheme or your payment provider may require you to specify the creditor’s personal identifier - such as a tax ID or passport number. You can validate these identifiers before submitting a payment. We validate format and, where applicable, checksum for well-known document types. Some corridors have well-known formatting patterns using special symbols (e.g. Brazilian CPF - 231.002.999-00). We respect those formatting patterns and validate both 231.002.999-00 and 23100299900 in the same way. POST /payments/validations
Request
Response
Supported document types by corridor

Bulk validation

If you need to validate multiple payments at once, use the bulk validation endpoint. Each item in the array follows the exact same schema as POST /payments/validations and produces the same alert codes. The response returns validation results in the same order as the input. The maximum number of items per request is 20. POST /payments/bulk-validations
Request
Response

Alert codes

Here’s the list of the alerts with explanations, which you can use in UI localization. In some cases, there can be more than one alert code in our response.