Belgium holds the record for the shortest IBAN in the euro area: 16 characters, fully numeric BBAN, pattern ^[0-9]{12}$. Compactness comes from a domestic numbering system that was already tightly standardised decades before SEPA.
Structure
The registry example BE68 5390 0754 7034 (a published SWIFT test value, not a live account) reads:
BE68- country code and IBAN check digits539- 3-digit bank code (protocol number identifying the institution)0075470- 7-digit account number34- the national check number
Two modulo-97 checks in one number
Belgium’s domestic check mechanism is elegant: take the first ten digits of the BBAN as a number, divide by 97, and the remainder must equal the final two digits (with 97 standing in when the remainder is zero). The IBAN’s own check digits then apply a second, differently arranged MOD-97 computation over the whole string. A Belgian IBAN that passes both is exceptionally resistant to typing errors. Validators should implement the national rule too, not just the ISO one, because a string can be crafted that passes the IBAN checksum while violating the Belgian internal check - such a number was never issued by any Belgian bank.
From 3-7-2 to IBAN
Generations of Belgians memorised account numbers in the dashed 3-7-2 shape (for example on the old orange transfer slips). The IBAN simply wraps that exact 12-digit string, which made Belgium’s SEPA migration mechanically simple, and the country moved to IBAN-only payments early. Belgium is a founding SEPA member; BE IBANs work for euro credit transfers and direct debits everywhere in the scheme.
The usual caveat applies with extra force to short formats: 16 characters are quick to type but also quick to mistype into another structurally valid number. Formal validity never confirms that an account exists or who owns it. That is the job of Verification of Payee, which Belgian banks apply by matching the beneficiary name before releasing a transfer.