ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

MT940 — Customer Statement Message

The end-of-day customer account statement. Forty years of use in corporate treasuries and accounting reconciliation: the standard output of bank cash management gateways.

Purpose

MT940 carries an account statement: opening balance, every debit and credit movement for the period, closing balance, and sometimes a "forward available" balance (j+1 available). It is the input artefact for the corporate-treasury reconciliation process: every movement gets matched to an invoice, an outgoing or incoming transfer, or a direct debit.

MT940 is typically sent once a day, at the close of the banking day, but some banks send several per day for high-turnover accounts. For intraday reporting, banks use MT942 (Interim Transaction Report). When the customer asks for a balance summary without movement detail, it is MT941 (Balance Report).

Block 4 structure

The Block 4 of an MT940 follows a strict sequence: statement identification, opening balance, a series of statement lines (alternating :61: and its optional :86:), closing balance, then complementary balances.

TagNameStatusCardinality
:20:Transaction Reference NumberMandatory1
:21:Related ReferenceOptional1
:25:Account IdentificationMandatory1
:28C:Statement Number / Sequence NumberMandatory1
:60a:Opening Balance (60F = first, 60M = intermediate)Mandatory1
:61:Statement LineMandatory if movement0..n
:86:Information to Account Owner (after the preceding line)Optional0..1 per :61:
:62a:Closing Balance (62F = final, 62M = intermediate)Mandatory1
:64:Closing Available BalanceOptional1
:65:Forward Available BalanceOptional0..n
:86:Information to Account Owner (statement footer)Optional0..1

Tags in detail

  • :20: Unique statement reference on the bank side (16x). Identifier the client will quote in every later query.
  • :25: Account identification. Either the IBAN or a proprietary number. For a multi-currency account, the currency can accompany the value (option 25P with BIC).
  • :28C: Statement number / sequence number. Format 5n[/5n]. Sequential, restarting per year as per the bank's convention.
  • :60F: Opening balance at the start of the day. Format: D/C + date YYMMDD + ISO currency + amount. C260513EUR1502345,67 = credit 1,502,345.67 EUR on 13 May 2026.
  • :61: Movement line. Full format: YYMMDD [MMDD] D/C [Funds] amount N tt ref [//bankRef] [\\nDetail]. Breakdown:
    • YYMMDD: value date;
    • MMDD optional: entry date if different;
    • D/C: Debit, Credit, RD (reversed debit), RC (reversed credit);
    • Funds: currency letter if different from the account;
    • amount: comma decimal;
    • N + 3 letters: transaction type code (NTRF = Transfer, NCHG = Charges, NDDT = Direct Debit, NINT = Interest, NMSC = Miscellaneous);
    • ref: customer reference;
    • //bankRef: optional bank reference after the double slash;
    • a second physical line (continuation after \\n) may complete the detail.
  • :86: Information to Account Owner. Following a :61: line, up to 6 lines of 65 characters. Carries the wording, counterparty address, transaction ID, sometimes a proprietary sub-format (German DTAUS, structured CMXL).
  • :62F: Closing balance. Same format as :60F:.
  • :64: Closing available balance — the usable balance after pending-operation reservation.
  • :65: Forward available balance — projected balance on j+1, j+2… based on already-known operations.

Real-world example

EOD statement of an EUR account at BNP Paribas on 14 May 2026, with one debit (the outgoing transfer of the MT103 example) and one incoming credit:

text mt940-anonymized.txt
{1:F01BNPAFRPPAXXX0000000000}{2:O9401200260513DEUTDEFFXXXX12345678952605140730N}{4:
:20:STMT20260514001
:25:FR7630006000011234567890189
:28C:00134/001
:60F:C260513EUR1502345,67
:61:2605140514D12500,00NTRFREF20260514001//BNPP
:86:OUR REF: REF20260514001 PAYMENT TO HANS MUELLER GMBH INVOICE 2026-187
:61:260514C8750,50NTRF99002//BNPP
:86:INCOMING TRANSFER FROM CLIENT 0042
:62F:C260514EUR1498596,17
:64:C260514EUR1498596,17
-}
  • :20:STMT20260514001 — statement reference.
  • :25:FR76300... — account IBAN.
  • :28C:00134/001 — statement 134, sequence 1.
  • :60F:C260513EUR1502345,67 — opening credit balance 1,502,345.67 EUR on 13 May 2026.
  • Line :61: 1: 14 May, debit, 12,500.00, type Transfer (NTRF), customer reference REF20260514001, bank reference BNPP.
  • Paired :86:: wording of the payment to Hans Mueller GmbH.
  • Line :61: 2: 14 May, credit, 8,750.50, incoming transfer.
  • Paired :86:: wording of the origin.
  • :62F:C260514EUR1498596,17 — closing credit balance 1,498,596.17 EUR.
  • :64: — same available balance (nothing pending).

Common pitfalls

  • Value date vs entry date — the YYMMDD + optional MMDD pair in :61: is a confusion magnet. If the bank only sends YYMMDD, it is the value date. For the accounting entry date, look at the second pair or at :86:.
  • Comma decimal — every amount uses comma as the decimal separator (a francophone legacy of the standard). English-speaking parsers that force a dot create silent corruption.
  • :25: option and multi-currency — for a multi-currency account, the bank may send one MT940 per currency, or a single MT940 with intermediate :60M: / :62M: sub-accounts (rare). Confirm the convention with the bank.
  • NMSC = Miscellaneous — a debit with type NMSC is by default a catch-all. Banks often dump fees and interest there, and ERPs categorise them poorly. Map carefully against the :86: wording.
  • Character set X — like MT103, accented characters are substituted at send time. For foreign names, plan a tolerant parser or ask the bank for a camt.053 feed (UTF-8).
  • Orphaned :86: — a :86: is associated only with the :61: that immediately precedes it (or with the statement header in footer position). A naive parser that aggregates all :86: at the end loses the line-to-wording link.

MX equivalent — camt.053

In ISO 20022, MT940 maps to camt.053.001.10 (Bank to Customer Statement). The XML structure is substantially different: where MT940 interleaves statement lines and wording, camt.053 organises everything under BkToCstmrStmt > Stmt > Ntry, with a rich NtryDtls/TxDtls object per movement.

MT940camt.053Note
:20:Stmt/IdStatement identifier.
:25:Stmt/Acct/Id/IBANStructured IBAN.
:28C:Stmt/StmtPgntnPagination replaces the 28C number.
:60F:Stmt/Bal/Tp/CdOrPrtry/Cd=OPBDOpening Booked balance.
:61:Stmt/NtryOne Ntry per movement, with Amt, CdtDbtInd, ValDt, BookgDt.
type code NTRFBkTxCd (Bank Transaction Code)ISO 20022 uses a 4-level BTC (Domain, Family, SubFamily) — for example PMNT/RCDT/DMCT for a domestic credit.
:86:NtryDtls/TxDtls/RmtInfStructured Remittance Information, plus RltdPties, RltdAgts, RfrdDocInf.
:62F:Stmt/Bal/Tp/CdOrPrtry/Cd=CLBDClosing Booked balance.
:64:Stmt/Bal/Tp/CdOrPrtry/Cd=CLAVClosing Available balance.
:65:Stmt/Bal/Tp/CdOrPrtry/Cd=FWAVForward Available balance.

See the hub page ISO 20022 for the full camt family and the European banks' camt.053 migration roadmap (generalised between 2026 and 2028 depending on the group).

  • MT942 — Interim Transaction Report, intraday variant of MT940.
  • MT941 — Balance Report, no movement detail.
  • MT950 — Statement Message for nostro/loro accounts between banks.
  • MT900 / MT910 — Debit / Credit Confirmation in real time, complementing the EOD statement.
  • ISO 20022 equivalents: camt.053 (statement), camt.052 (intraday), camt.054 (single notification).
  • See also: MT103 — the outgoing transfer that will appear as a debit on the next day's MT940.