Hungarian bank account handling is a two-format world, and good test data has to respect that. Domestically, accounts are identified by the pénzforgalmi jelzőszám, a 16- or 24-digit GIRO number; internationally, the same account appears as a 28-character HU IBAN. A correct test IBAN for Hungary is HU, two mod-97 check digits, then a 24-digit BBAN: 3-digit bank code, 4-digit branch code, a national check digit, a 15-digit account number, and a second national check digit at the end.
Two national check digits, one weighted algorithm
Both internal check digits are computed with Hungary’s 9-7-3-1 weighting scheme: the first protects the 7-digit bank-and-branch prefix, the second protects the account body. A validator built for the Hungarian market checks these in addition to the outer mod-97 digits, so random-digits-plus-fixed-checksum fixtures fail exactly where it matters. The generator here computes all three checks consistently. For a stable, well-known reference value, the published registry example is HU42 1177 3016 1111 1018 0000 0000.
Where Hungarian test IBANs earn their keep
If you integrate with Hungarian payroll, utility e-billing, or the instant payment system’s ecosystem, your test suite will include forms where users paste either a GIRO number or an IBAN. Table-driven unit tests should cover: valid 28-char IBAN, valid 16-digit domestic number, the same account in both notations, and near-misses with a single wrong check digit. Seeding a staging environment with distinct, structurally valid HU IBANs also keeps SEPA export jobs and reconciliation scripts honest.
Generation happens entirely in your browser. No IBAN leaves your machine, and each one is stamped with a TEST label so synthetic values stay recognisable in tickets and screenshots.
Responsible use
These IBANs are format-valid strings, nothing more. No account exists behind them, and using them outside testing, on an invoice, in a payment request, or to mislead anyone, is misuse. EU Verification of Payee rules mean banks now compare recipient names against IBANs before executing transfers, which is one more reason test data must stay in test systems.