Skip to content

How to find a BIC/SWIFT code from an IBAN (and why you can't just read it off)

6 min read June 16, 2026
ibanbicswiftpayments

An IBAN identifies the account; a BIC identifies the bank. The BIC is not stored in the IBAN, but the bank code inside an IBAN can be looked up to find it.

How to find a BIC/SWIFT code from an IBAN (and why you can't just read it off) — Hivly

You have been given an IBAN, the payment form accepts it, and then a second field appears asking for a BIC or SWIFT code. It feels like the IBAN should already contain that, since it knows the account. It does not, quite, and the reason is worth understanding so you know where to actually get the BIC.

TL;DR: An IBAN identifies the account; a BIC identifies the bank itself. The BIC is not stored inside the IBAN. But an IBAN does carry a bank code, and that code can be looked up to find the matching BIC. So you do not read the BIC off the IBAN, you derive it from the bank code the IBAN contains.

Two codes, two different jobs

The confusion comes from assuming one code is a subset of the other. They are not. They answer different questions.

An IBAN answers “which account.” It is the full account identifier: country, checksum, and your domestic account details rolled into one portable line. It is specific down to the individual account.

A BIC, or SWIFT code, answers “which bank.” It identifies the financial institution, and optionally the branch, on the global SWIFT network. It says nothing about your particular account. A whole bank shares one BIC; millions of accounts sit behind it.

So a payment sometimes wants both because they are complementary. The IBAN says where the money should land; the BIC says which institution to route it through to get there. In much of the IBAN area the bank can be inferred from the IBAN alone, but plenty of forms, especially for cross-border or non-euro transfers, still ask for the BIC explicitly.

Why the BIC is not inside the IBAN

Here is the key point. The IBAN does contain a bank code, sitting in the BBAN, the part after the country code and check digits. In a German IBAN that is the eight-digit Bankleitzahl; in a UK one it is the four-letter bank code. So the IBAN does tell you, in code, which bank the account is at.

What it does not contain is the BIC string itself. The bank code and the BIC are two different identifiers for the same institution, maintained in different systems. There is a mapping between them, but it lives in a register, not in the IBAN. You cannot transform one into the other with arithmetic the way you can with the check digits; you have to look it up.

That is the whole answer to “why can’t I just read it off.” The IBAN points at the bank by its national code. Converting that pointer into a BIC means consulting the directory that links the two.

How to actually get the BIC

In practice there are three reliable routes, in rough order of preference.

Ask the account holder or read the document. The simplest source is the person or invoice that gave you the IBAN. Bank statements, invoices and payment instructions very often print the BIC right next to the IBAN. If it is there, use it; no lookup needed.

Look up the bank code from the IBAN. If you only have the IBAN, pull the bank code out of it and look that code up against the bank register. For German accounts the eight-digit Bankleitzahl maps directly to a BIC in the Bundesbank register, and the BIC finder at finance.hivly.net does exactly that lookup: enter the German bank code or the bank’s name and it returns the matching BIC. For other countries you would use that country’s equivalent directory.

Check with the receiving bank. When in doubt, the bank that holds the account is the authority. Its public pages, or a quick call, will confirm the BIC to use, which matters most for the cases where a bank has more than one.

A quick word on reading a BIC

Once you have it, a BIC is easy to sanity-check because it has a fixed shape: eight or eleven characters, in known blocks. The first four letters identify the bank. The next two are the country code, which should match your IBAN’s country. The two after that are a location code. If there are three more on the end, they specify a branch; their absence just means the bank’s head office.

So if the BIC’s country code does not match the IBAN’s country code, something is wrong, and that is a fast check worth doing before you send. Get the BIC from the document if you can, derive it from the bank code if you cannot, and confirm its country matches the account. That is all the second field is really asking for.

Try the finance calculatorsMortgage, loan, retirement, savings, tax and interest math, plus IBAN tools, worked out instantly.

Frequently asked questions

Is a BIC the same as a SWIFT code?
Yes. BIC stands for Business Identifier Code, and SWIFT code is the everyday name for the same thing, because the codes are managed through the SWIFT network. If a form asks for one and you have the other, they are interchangeable terms for the same eight or eleven character code.
Does an IBAN contain the BIC?
No. An IBAN contains a bank code as part of its national account details, but it does not contain the BIC itself. The two are linked, because a given bank code maps to a bank's BIC, but you have to look that mapping up rather than read the BIC straight out of the IBAN.
Do I still need a BIC if I have an IBAN?
For many payments inside the IBAN area you can pay on the IBAN alone, because the bank can be derived from it. Some banks and some cross-border or non-euro payments still ask for the BIC as well. If the form has a field for it, supply it rather than leaving it blank.
What do the parts of a BIC mean?
A BIC is four characters for the bank, two for the country, two for the location, and an optional three for a specific branch. So the first four letters tell you the institution, the next two the country, and the rest narrows it to a place or branch.

Keep reading

Building something bigger?

Hivly is made by CodingEagles, a software studio that ships production web apps. If you have a real project, get in touch.

See what CodingEagles does →