OpenIBAN API
Free IBAN validation API with no key: check international bank account numbers for structural and checksum validity, with bank data lookup. Tested example.
Endpoint tested and returned HTTP 200 on 2026-08-19
What is the OpenIBAN API?
OpenIBAN is a free, key-free API that validates International Bank Account Numbers, checking country-specific structure and the mod-97 checksum, and optionally returning bank information for the account.
IBAN validation is more involved than it looks: each country has its own length and format, and there is a mod-97 checksum across the whole string. Getting it right catches most typos before a payment fails.
What validation cannot tell you is whether the account actually exists or who owns it — only that the number is structurally well-formed. That distinction matters: a valid IBAN can still be a closed or non-existent account, so never treat validation as verification.
Quick facts
- Base URL
https://openiban.com- Authentication
- No API key required.
- Rate limit
- No published limit; fair use expected.
- Pricing
- Free.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the OpenIBAN API
Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.
1. Validate an IBAN
GET https://openiban.com/validate/DE89370400440532013000
curl 'https://openiban.com/validate/DE89370400440532013000'const res = await fetch("https://openiban.com/validate/DE89370400440532013000");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://openiban.com/validate/DE89370400440532013000", timeout=20)
res.raise_for_status()
print(res.json()){
"valid": true,
"messages": [],
"iban": "DE89370400440532013000",
"bankData": {
"bankCode": "",
"name": ""
},
"checkResults": {}
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
<iban> | path | Required | The IBAN to validate, without spaces. DE89370400440532013000 |
getBIC | boolean | Optional | Include the BIC/SWIFT code where known. true |
validateBankCode | boolean | Optional | Additionally check the bank code against known banks. true |
Response fields
validboolean- Whether the IBAN passes structure and checksum validation.
messagesarray- Validation error messages when invalid.
ibanstring- The normalised IBAN that was checked.
bankDataobject- Bank code and name where the country's bank directory is available.
checkResultsobject- Detail of which individual checks passed.
What you can build with the OpenIBAN API
- Validate bank details at checkout before submitting a payment
- Catch IBAN typos in payroll and supplier onboarding forms
- Normalise IBANs stored in inconsistent formats
- Look up the bank behind an account number
Common errors and how to fix them
valid: false with checksum message
The mod-97 checksum failed — usually a typo.
Fix: Ask the user to re-enter; a single transposed digit fails the checksum, which is the point.
Empty bankData
No bank directory is available for that country.
Fix: Bank lookup coverage is strongest for Germany; treat it as optional enrichment.
Spaces in the IBAN
Formatted IBANs with spaces may fail.
Fix: Strip whitespace before sending.
OpenIBAN API — frequently asked questions
Is there a free IBAN validation API?
Yes, OpenIBAN validates IBAN structure and checksum with no API key required.
Does a valid IBAN mean the account exists?
No. Validation only confirms the number is well-formed and passes its checksum. It cannot confirm the account is open or who owns it — never treat it as account verification.
Which countries are supported?
Structural and checksum validation works for all IBAN countries. Bank name lookup is only available where a bank directory exists, with the best coverage in Germany.
Should I strip spaces before validating?
Yes. IBANs are often displayed in groups of four for readability, but the API expects the continuous string.
Tools that pair with this API
OpenIBAN is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.