MT940 — ING Belgium, structured :86:
The ING Belgium dialect: the :86: information line is structured into ?00 ?20 ?30 subfields rather than free text. This is the single biggest source of MT940 parsing bugs.
SWIFT MT940 — Valid
The ING Belgium dialect: the :86: information line is structured into ?00 ?20 ?30 subfields rather than free text. This is the single biggest source of MT940 parsing bugs.
What this file shows
The ING Belgium dialect: the :86: information line is structured into ?00 ?20 ?30 subfields rather than free text. This is the single biggest source of MT940 parsing bugs.
Every party, IBAN and amount below is fictitious. The IBANs are structurally valid — they pass the mod-97 check — but they belong to no real account.
File content
:20:0000000001
:25:BE68539007547034
:28C:105/1
:60F:C240115EUR5000,00
:61:2401160116C1500,00NTRFNONREF//08951234567890
:86:001?00OVERSCHRIJVING?20FACTUUR 2024-001?30GEBABEBB?31BE71096123456769?32KLANT NV
:61:2401170117D89,99NDDTMANDATE123//08957654321098
:86:005?00DOMICILIERING?20ENERGIE JAN?30BBRUBEBB?31BE00012345678901
:62F:C240117EUR6410,01
-How we know these results hold
Every file in this library is run through the site's own validator on each build. The expected result stated above is asserted by an automated test — if a file stopped matching what this page claims, the build would fail. Two inherited fixtures were repaired this way before publication: three IBANs failed the mod-97 check and several names used characters outside the basic SEPA character set.
SWIFT MT940 statement
- MT940 — Rabobank / Deutsche Bank dialect
- MT940 — Commerzbank, one-decimal amount
- MT940 — two statements in one file
- MT940 — reversal (RC) and intermediate balances
- MT940 — overdrawn account (debit balances)
- MT940 — closing balance does not reconcile
- MT940 — 500 transactions (load test)
- MT940 — statement split over two pages (62M / 60M)
- MT940 — USD account with an RD reversal