Guide · 6 min read
How to find the BIC from an IBAN (manually and via API)
Last updated 17 July 2026
Every SEPA IBAN embeds a national bank code, and every bank code maps to a BIC. The mapping data exists — the question is whether you resolve it by hand, once, or programmatically, at scale.
Method 1 — read the national registry yourself
Each country’s central bank or banking association publishes its own mapping between domestic bank codes and BICs. For one-off lookups this works; for anything recurring it becomes a maintenance burden, because each source has a different format and update cadence.
| Country | Bank code in IBAN | Registry source |
|---|---|---|
| Germany | 8-digit Bankleitzahl | Deutsche Bundesbank BLZ file (updated quarterly) |
| Italy | 5-digit ABI code | Banca d’Italia / ABI tables |
| France | 5-digit Code Banque | Banque de France establishment files |
| Spain | 4-digit Código de Entidad | Banco de España entity register |
| Netherlands | 4-letter BIC prefix | Readable directly from the IBAN |
Method 2 — ask the counterparty
Reliable when you have one supplier to onboard; useless when you process thousands of payouts, imports or sign-ups. People mistype BICs far more often than IBANs, because the BIC has no checksum — nothing catches a typo before the payment fails.
Method 3 — resolve it with an API
A conversion API keeps the registries so you don’t have to. iban2bic validates the IBAN locally (structure + mod-97), then resolves the bank code against multiple upstream sources with automatic failover, and returns a typed JSON payload: BIC, bank name, full address, and the four SEPA reachability flags (SCT, SCT Inst, SDD Core, SDD B2B).
Pricing is per successful answer: €0.009 for each HTTP 200, and nothing for invalid, not-found or errored lookups. For payment operations that means the failure mode is free.
- One endpoint (POST /v1/convert) instead of 36 national registries.
- Checksums verified before any billable call — malformed input never costs anything.
- Repeat lookups of the same bank resolve from cache in under 100 ms.
Edge cases to plan for
- Fintech and e-money IBANs (Revolut, N26, Wise…) — the BIC may belong to the e-money institution rather than a traditional branch network.
- Virtual IBANs issued for reconciliation map many account numbers to one institution.
- Bank mergers retire BICs: a mapping that was correct last year may now point to an absorbed institution — one reason to resolve at payment time, not from a stale snapshot.
Frequently asked
Related guides
Resolve IBANs to BICs programmatically
One endpoint returns the BIC, bank details and SEPA reachability for any SEPA IBAN — €0.009 per successful call, failures always free.