IBAN identifies the account. SWIFT/BIC code identifies the bank. International transfers usually need both: here is exactly how they differ.
| IBAN | SWIFT/BIC | |
|---|---|---|
| Identifies | A specific bank account | A specific bank/branch |
| Standard | ISO 13616 | ISO 9362 |
| Length | 15 to 32 chars (country-specific) | 8 or 11 chars |
| Example | DE89 3704 0044 0532 0130 00 | COBADEFFXXX |
| Checksum | Yes (mod-97) | No |
| Who assigns it | Your bank, per account | SWIFT, per institution |
When do you need each?
- Within SEPA (Europe): the IBAN alone is usually enough: banks derive the BIC automatically.
- Outside SEPA: you typically need both the recipient’s IBAN (or account number) and the bank’s SWIFT/BIC.
- US transfers: neither: the US uses routing numbers + account numbers instead.
Reading a BIC: COBADEFFXXX
- COBA: bank code (Commerzbank)
- DE: country (Germany)
- FF: location (Frankfurt)
- XXX: head office branch
Try the tools
IBAN generator · SWIFT/BIC generator · IBAN validator
One identifies an account, the other an institution
An IBAN encodes a country-specific bank account structure with international check digits. A BIC identifies a business party, commonly a bank involved in a payment. A branch can have a BIC, but that code does not specify your personal account or balance.
| Feature | IBAN | BIC |
|---|---|---|
| Primary purpose | Account identification | Institution identification |
| Structure | Country prefix, check digits, national component | 4 party letters, 2 country letters, 2 location characters, optional 3-character branch |
| Length | Fixed for each registered country format | 8 or 11 characters |
| What syntax proves | The account identifier has an expected layout | The code has the expected character positions |
Read the bank’s transfer instructions
A payment form may request both identifiers, or it may determine the bank information from other supplied details. Do not assume a BIC is always required or always optional. The applicable route, currency and receiving bank determine the instructions.
If a transfer uses a bank system without IBAN, the bank may provide a domestic account number together with routing and BIC details. That does not mean the domestic number can be converted by adding a country prefix.
A BIC format check is not a directory lookup
A string can match the 8- or 11-character BIC pattern without being assigned to a real institution. Our test generator produces syntax examples; it does not consult the official BIC directory. Use the receiving bank’s published details or an authoritative directory when identifying a real bank.
Do not infer ownership from either identifier
Neither a checksum-valid IBAN nor a syntax-valid BIC proves that the recipient is the person you intend to pay. If an invoice changes its bank details, confirm them through a channel you already trust. For developer tests, keep BIC syntax fixtures separate from bank-directory and payment-provider integration cases.
Sources and scope
Swift: national IBAN formats · Swift: Business Identifier Code.
Examples and test matrices are explanatory fixtures, not receiving instructions. This page covers format checks and software testing. It does not verify account ownership or provide a guarantee that a payment will succeed.
Technical notes updated 8 October 2026. Read the editorial policy. Send a correction.