IBAN Validation

Check an IBAN's format, length and checksum, and split out the country, bank code and branch code.

Free to try Pay by wallet (x402) iban-validate

Example

Example answer
{
  "bban": "50000000058398257466",
  "valid": true,
  "bank_code": "500",
  "branch_code": null,
  "check_digits": "45",
  "country_code": "SE",
  "expected_length": 24
}

Try it

Runs the real tool from your browser, with no key. Free calls are limited to 300 a month across all free tools.

Edit the values, then run.

Inputs

FieldTypeRequiredWhat it is
ibanstringYesIBAN to validate (e.g. SE3550000000054910000003)

Output fields

How reliably each field appears in a successful answer.

FieldTypeAppears
errorstringSometimes (present only for some inputs)
validbooleanAlways (present in every successful answer)
bank_codestringAlways (present in every successful answer)
branch_codestringSometimes (present only for some inputs)
country_codestringAlways (present in every successful answer)

How to call it

The same tool through each route. MCP clients reach it through Strale’s server at https://api.strale.io/mcp; the call below is what the agent sends.

# Free tool: works without a key, within a monthly allowance. Add your key for more.
curl -X POST https://api.strale.io/v1/do \
  -H 'Content-Type: application/json' \
  -d '{
    "capability_slug": "iban-validate",
    "inputs": {
      "iban": "SE4550000000058398257466"
    },
    "max_price_cents": 5
  }'

Limitations

  • IBAN checks do not confirm an active account

    Validates structure and checksum only — does not confirm the account is open or active

    What to do instead: Use a SEPA test transaction (€0.01) or bank account verification API to confirm the account is live before large transfers

  • Bank details can be incomplete outside SEPA

    Covers all SEPA-zone IBANs. Non-SEPA country IBANs validated structurally but bank lookup may be incomplete

    What to do instead: For non-SEPA IBANs, cross-reference the bank code portion against SWIFT's IBAN Plus directory