IBAN format · LU

Luxembourg IBAN format

The Luxembourg IBAN format is defined by ISO 13616 and is fixed for every account opened in Luxembourg. A Luxembourg IBAN is always 20 characters long and uses the structure pattern 3!n13!c: 3 digits (0–9), then 13 characters (A–Z, 0–9). The first two characters are the country code LU, the next two are MOD 97 check digits, and the remaining 16 characters form the BBAN, which Luxembourg divides into 2 fields. This page breaks down each field, shows a worked LU IBAN, and explains how the check digits are computed.

Country code
LU
Total length
20 chars
Check-digit algo
MOD 97-10
ISO 13616 pattern
3!n13!c
3 digits (0–9), then 13 characters (A–Z, 0–9)

Structure breakdown

The Luxembourg BBAN (positions 5–20) is the country-specific part of the IBAN and is 16 characters long. Luxembourg splits it into 2 fields: Field 1 is 3 digits; Field 2 is 13 characters. The exact meaning of each field (bank code, branch, account number) is defined by Luxembourg's national registry and is stable, so any LU IBAN that matches the pattern and length is structurally valid even before the MOD 97 check.

Country code
ISO 3166 — Luxembourg
LU
Check digits
MOD 97-10 checksum
80
BBAN field 1
3 digits · digits (0–9)
012
BBAN field 2
13 characters · alphanumeric (A–Z, 0–9)
D1234EFGH5678

The table below applies the 3!n13!c pattern to a real, MOD 97-valid Luxembourg IBAN (LU80012D1234EFGH5678). Each row shows one field of the IBAN — country code, check digits, then the BBAN fields in order — so you can see exactly how the LU IBAN is assembled. This is the same breakdown the IBAN validator produces when you paste a Luxembourg IBAN.

Luxembourg IBAN examples by bank

Bank-specific Luxembourg IBAN examples are useful for testing parsers because the national skeleton stays constant while the BBAN values change. The table below gives three distinct, deterministic fixtures labelled for Spuerkeess, BGL BNP Paribas, Banque Internationale à Luxembourg. They are generated to match the Luxembourg pattern (3!n13!c), exact 20-character length, and MOD 97-10 checksum; they are not live accounts and must never be used to send funds. In production, copy the beneficiary's complete IBAN from an official bank document rather than trying to derive one from a public BIC or a bank name. Compare the rows field by field. The country prefix and two check digits occupy positions 1–4 in every row, while the BBAN fields carry the bank's national routing and account data. A parser should preserve every leading zero, retain letters where the pattern allows them, and avoid assuming that all European IBANs have the same length. These fixtures are intentionally different so automated tests can catch code that accidentally hard-codes one sample value or validates only the prefix. When documenting a bank integration, record the source and date of any real example separately from these synthetic fixtures. Banks merge branches, change correspondent arrangements, and may publish different BICs for head office and specialist offices. The IBAN format page can confirm structure; only the account holder or receiving bank can confirm that a particular IBAN is open and ready to receive a payment.

Synthetic IBAN fixtures for common Luxembourg banks
BankBIC/SWIFTSynthetic IBAN fixtureChecks
SpuerkeessConfirm with the receiving bankLU201231234EFGH5678A20 chars · MOD 97 valid
BGL BNP ParibasConfirm with the receiving bankLU05234234EFGH5678AB20 chars · MOD 97 valid
Banque Internationale à LuxembourgConfirm with the receiving bankLU7434534EFGH5678ABC20 chars · MOD 97 valid

Luxembourg IBAN check digits

Positions 3–4 of a Luxembourg IBAN hold two MOD 97-10 check digits. ISO 13616 computes them by rearranging the IBAN so the BBAN leads and the country code plus check digits trail, converting letters to numbers (A=10 … Z=35), and taking the giant resulting integer mod 97. The check digits are chosen so the whole IBAN leaves a remainder of 1. If any single character in the LU IBAN is mistyped, the remainder changes and validation fails — which is why the format checker on this page can flag a typo from one wrong digit.

What makes a Luxembourg IBAN valid

A Luxembourg IBAN is structurally valid only when it passes three independent checks at once. First, the character set: the first two characters must be the letters LU, the next two must be digits, and the BBAN may contain only digits and uppercase letters. Second, the length: the LU IBAN must be exactly 20 characters, because Luxembourg fixes its BBAN at 16 characters and ISO 13616 fixes the country code and check digits at four. Third, the MOD 97 checksum. The 3!n13!c pattern adds one more layer — it confirms the BBAN splits into 2 fields of the right size and type, so a Luxembourg IBAN with the right total length but the wrong internal split still fails. This is why the format checker on this page is stricter than a generic length-only check.

Using a Luxembourg IBAN in an international transfer

Use this Luxembourg IBAN format reference as one step in a complete international-transfer workflow. First ask the beneficiary for the legal account name, complete IBAN, receiving-bank SWIFT/BIC, bank address, currency, and payment reference. Normalize the IBAN to uppercase without spaces for the payment payload, but show four-character groups when a person reviews it. Confirm that the first two characters are LU, the value is exactly 20 characters, and every BBAN field follows 3!n13!c. Then confirm the receiving bank's SWIFT/BIC through its official instructions or a trusted lookup. Do not substitute a domestic clearing number, card number, or branch phone number for an IBAN. If the bank portal offers separate fields for bank code, branch, and account number, follow that bank's documented split; never guess from character positions alone. Some portals require an 8-character BIC, while others accept the 11-character branch form. Preserve an 11-character BIC exactly as supplied and do not append XXX unless the bank instructs you to. Before submitting, run the normalized value through the validator and save the result with the invoice or transfer reference. A valid MOD 97 result proves only syntax and arithmetic. It cannot check sanctions screening, account status, beneficiary-name matching, currency restrictions, or correspondent-bank rules. For a first payment or a last-minute change of bank details, verify the instruction through a known phone number or secure banking channel. If a transfer is rejected, give support the exact submitted IBAN, BIC, value date, and return reason; editing digits until the checksum passes can route money to the wrong account.

Common Luxembourg IBAN format mistakes

Most Luxembourg IBAN format errors come from a handful of avoidable mistakes. Pasting a domestic Luxembourg account number instead of the IBAN is the most common: the IBAN always starts with LU and is exactly 20 characters, while a local account number is usually shorter and has no country prefix. Dropping or adding a character when copying from a statement is next; because the length is fixed, even one extra digit fails. Confusing the country code with a similar one changes both the expected length and the check digits, so the whole IBAN fails. Including spaces in the stored value is harmless when a checker normalizes input, but can break payment forms that count characters literally — strip spaces before submitting the LU IBAN. The internal BBAN boundaries matter as much as the total length. Luxembourg defines field 1 (3 digits), field 2 (13 alphanumeric characters); do not move a leading zero from one field to the next or convert an alphanumeric field to a number in your database. A spreadsheet may silently trim zeroes, an OCR scan may change O to 0, and a copy from a PDF may insert a non-breaking space. Normalize only approved separators, convert letters to uppercase, then validate the complete value again. Never “repair” a failed checksum by changing random digits: request a fresh beneficiary instruction from the bank. For QA, keep negative fixtures for Luxembourg IBANs: one value with the wrong country prefix, one that is 19 characters, one that is 21 characters, one with an illegal symbol, and one with a single changed check digit. A robust parser should reject all five and accept the grouped human display form after removing spaces. A mathematically valid checksum still does not prove that a bank account exists, belongs to the named beneficiary, or accepts the intended currency, so operational verification remains essential.

Luxembourg IBAN and SWIFT codes

When you send or receive an international payment to Luxembourg, the IBAN tells the network which account to credit, and the bank's SWIFT/BIC code tells it which bank holds that account. After checking the LU IBAN format here, look up the receiving bank's BIC with a SWIFT code lookup tool to complete the wire instructions.

Luxembourg IBAN overview →View LU IBAN example →Validate this LU IBANFind SWIFT code from an IBAN →Generate a test IBAN →