API Depot/APIs/IBAN Validation

IBAN Validation

live

Validate an IBAN number using the mod-97 checksum algorithm and decode its embedded bank code, BIC, country, and account number.

POST /v1/iban/validatePer request

Request

FieldTypeDescription
iban*stringIBAN — spaces are stripped, case is normalised before validation

Response

FieldTypeDescription
validbooleanTrue if IBAN passes structure check and mod-97 checksum
ibanstringNormalised IBAN (no spaces, uppercase)
formattedstring | nullIBAN with spaces every 4 characters (print format)
country_codestring | nullISO 3166-1 alpha-2 country code
country_namestring | nullFull country name
bank_codestring | nullBank identifier embedded in the IBAN
bicstring | nullBIC/SWIFT code resolved from the bank registry (may be null)
account_codestring | nullAccount number portion of the IBAN
lengthinteger | nullLength of the normalised IBAN

Example

Request

{
  "iban": "GB82WEST12345698765432"
}

Response

{
  "valid": true,
  "iban": "GB82WEST12345698765432",
  "formatted": "GB82 WEST 1234 5698 7654 32",
  "country_code": "GB",
  "country_name": "United Kingdom",
  "bank_code": "WEST",
  "bic": "WESTGB22",
  "account_code": "98765432",
  "length": 22
}

Notes

  • Sync endpoint — pure computation, under 10ms.
  • valid: false is a legitimate response — returned for any checksum or structure failure.
  • BIC may be null for valid IBANs if the bank is not in the bundled registry.
  • Powered by schwifty — validates both IBAN structure and mod-97 checksum.

Try it