What is an IBAN?
The IBAN (International Bank Account Number) is an internationally standardised account number. It ensures that payments in the SEPA area can be assigned unambiguously and automatically. In Germany, for example, every IBAN starts with the country code DE.
A German IBAN follows this scheme:
- DE – country code
- 2 check digits
- 8‑digit bank code
- 10‑digit account number (with leading zeros if needed)
In total a German IBAN therefore has 22 characters: country code + 2 check digits + 18 further characters.
What is a BIC?
The BIC (Business Identifier Code) is an international identifier for banks and payment providers. It is usually 8 or 11 characters long, for example GENODEF1S02. The BIC indicates which bank an IBAN belongs to.
In everyday life you will mainly see the BIC in international transfers or on older forms. In SEPA payments the requirement to provide a BIC has gradually been removed for many domestic payments.
Is the BIC mandatory in GiroCode?
During the early SEPA migration the BIC used to be a mandatory field. Today for domestic payments it is often no longer required, as banks can determine the recipient bank from the IBAN alone.
In GiroCodes the BIC is therefore optional in many implementations. Some generators and banking apps accept an empty BIC, others still expect one. If you want maximum compatibility, it's a good idea to provide the BIC – but in many cases it is no longer strictly necessary.
IBAN validation: how does the Mod‑97 check work?
To detect input errors, every IBAN contains a two‑digit check number. This is calculated using the Mod‑97 algorithm. Simplified, the process works like this:
- The first four characters (country code + check digits) are moved to the end.
- Letters are converted to numbers (A=10, B=11, ..., Z=35).
- The resulting large number is divided by 97.
- If the remainder is 1, the IBAN is considered formally valid.
Our GiroCode generator can perform this check and warns you if an IBAN is obviously wrong – for example due to swapped digits or missing characters.
Common mistakes when entering the IBAN
In practice the same types of errors occur again and again, for example:
- Swapped digits when copying account or bank code parts.
- Too few or too many characters, especially when spaces are copied.
- Wrong country code for foreign accounts.
With integrated IBAN validation you can ensure that account details are formally correct when you create the GiroCode. This avoids failed payments and follow‑up questions – especially for invoices and recurring payments.