MT940 — Customer Statement Message
Le relevé de compte client de fin de journée. Quarante ans d'usage en trésorerie d'entreprise et en réconciliation comptable : c'est la sortie standard des cash management gateways bancaires.
Objet du message
Le MT940 transporte un relevé de compte : solde d'ouverture, ensemble des mouvements (débits et crédits) de la période, solde de clôture, parfois un solde « forward available » (j+1 disponible). C'est la pièce d'entrée du processus de réconciliation comptable côté trésorier : chaque mouvement est rapproché d'une facture, d'un virement émis ou reçu, d'un prélèvement.
Le MT940 est typiquement envoyé une fois par jour, en fin de journée bancaire, mais certaines banques en émettent plusieurs par jour pour les comptes à forte rotation. Pour la version intraday (intra-journée), la banque utilise MT942 (Interim Transaction Report). Quand le client demande un état sans détail de mouvements, c'est MT941 (Balance Report).
Structure du Block 4
Le Block 4 d'un MT940 suit une séquence stricte : identification du relevé,
solde d'ouverture, une suite de statement lines (alternance d'un :61: et de son :86: facultatif), solde de clôture, puis
soldes complémentaires.
| Tag | Nom | Statut | Multiplicité |
|---|---|---|---|
:20: | Transaction Reference Number | Obligatoire | 1 |
:21: | Related Reference | Optionnel | 1 |
:25: | Account Identification | Obligatoire | 1 |
:28C: | Statement Number / Sequence Number | Obligatoire | 1 |
:60a: | Opening Balance (60F = first, 60M = intermediate) | Obligatoire | 1 |
:61: | Statement Line | Obligatoire si mouvement | 0..n |
:86: | Information to Account Owner (sur la ligne précédente) | Optionnel | 0..1 par :61: |
:62a: | Closing Balance (62F = final, 62M = intermediate) | Obligatoire | 1 |
:64: | Closing Available Balance | Optionnel | 1 |
:65: | Forward Available Balance | Optionnel | 0..n |
:86: | Information to Account Owner (footer du relevé) | Optionnel | 0..1 |
Tags en détail
:20:Référence unique du relevé côté banque (16x). Identifiant que le client utilisera dans toute requête ultérieure.:25:Identification du compte. Soit l'IBAN, soit le numéro propriétaire. Pour un compte multi-devises, la devise peut accompagner la mention (option25Pavec BIC).:28C:Numéro de relevé / numéro de séquence. Format5n[/5n]. Numérotation croissante, redémarrage annuel selon convention banque.:60F:Solde d'ouverture en début de journée. Format :D/C+ date YYMMDD + devise ISO + montant.C260513EUR1502345,67= créditeur 1 502 345,67 EUR au 13/05/2026.:61:Ligne de mouvement. Format complet :YYMMDD [MMDD] D/C [Funds] amount N tt ref [//bankRef] [\\nDetail]. Décomposition :- YYMMDD : date de valeur ;
- MMDD facultatif : date d'entrée (entry date) si différente ;
- D/C : Debit, Credit, RD (reversed debit), RC (reversed credit) ;
- Funds : lettre devise si différente du compte ;
- amount : virgule décimale ;
- N + 3 lettres : transaction type code (NTRF = Transfer, NCHG = Charges, NDDT = Direct Debit, NINT = Interest, NMSC = Miscellaneous) ;
- ref : référence client ;
//bankRef: référence banque optionnelle après le double slash ;- une seconde ligne (suite après
\\n) peut compléter les détails.
:86:Information to Account Owner. Sur une ligne:61:précédente, jusqu'à 6 lignes de 65 caractères. Porte le libellé métier, l'adresse du contrepartie, l'ID de transaction, parfois un sous-format propriétaire (DTAUS allemand, structured CMXL).:62F:Solde de clôture. Format identique à:60F:.:64:Solde disponible (closing available balance) — c'est le solde réellement utilisable, après réservation des opérations en cours.:65:Forward available balance — solde projeté à j+1, j+2… selon les opérations déjà connues.
Exemple réel
Relevé EOD d'un compte EUR à BNP Paribas le 14 mai 2026, avec un débit (le virement sortant du MT103 illustré dans l'autre page) et un crédit entrant :
{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— référence du relevé.:25:FR76300...— IBAN du compte.:28C:00134/001— relevé 134, séquence 1.:60F:C260513EUR1502345,67— solde d'ouverture créditeur 1 502 345,67 EUR au 13 mai 2026.- Ligne
:61:1 : 14 mai, débit, 12 500,00, type Transfer (NTRF), référence clientREF20260514001, référence banque BNPP. :86:associé : libellé du paiement vers Hans Mueller GmbH.- Ligne
:61:2 : 14 mai, crédit, 8 750,50, virement reçu. :86:associé : libellé de l'origine.:62F:C260514EUR1498596,17— solde de clôture créditeur 1 498 596,17 EUR.:64:— solde disponible identique (rien en suspens).
Pièges courants
- Date de valeur vs date d'entrée — le couple YYMMDD + MMDD optionnel dans
:61:source de confusion. Si la banque n'envoie que YYMMDD, c'est la date de valeur. Pour la date d'entrée comptable, regarder le second couple ou le tag:86:. - Décimale virgule — toutes les valeurs monétaires utilisent la virgule comme séparateur décimal (héritage francophone du standard). Les parseurs anglo-saxons qui forcent le point génèrent des silent corruptions.
- :25: option et multi-devises — pour un compte multi-devises, la banque peut envoyer un MT940 par devise, ou un MT940 unique avec plusieurs sous-comptes
:60M:/:62M:intermédiaires (cas d'usage rare). Vérifier la convention auprès de la banque. - NMSC = Miscellaneous — un débit avec type
NMSCest par défaut un fourre-tout. La banque met souvent les frais et les agios là, et l'ERP les classe mal. Mapper soigneusement vers le tag:86:qui porte le détail. - Caractère set X — comme MT103, les caractères accentués sont remplacés en émission. Pour les noms étrangers, prévoir un parsing tolérant ou demander à la banque un flux camt.053 (UTF-8).
- Tag :86: orphelin — un
:86:n'est associé qu'au:61:qui le précède immédiatement (ou au header de relevé en footer). Un parsing naïf qui agrège tous les :86: à la fin perd l'association ligne-libellé.
Équivalent MX — camt.053
En ISO 20022, le MT940 correspond à camt.053.001.10 (Bank to Customer
Statement). La structure XML diffère substantiellement : là où MT940 entrelace
statement lines et libellés, camt.053 structure tout en BkToCstmrStmt > Stmt
> Ntry, avec un objet NtryDtls/TxDtls riche par mouvement.
| MT940 | camt.053 | Note |
|---|---|---|
:20: | Stmt/Id | Identifiant du relevé. |
:25: | Stmt/Acct/Id/IBAN | IBAN structuré. |
:28C: | Stmt/StmtPgntn | Pagination remplace le numéro 28C. |
:60F: | Stmt/Bal/Tp/CdOrPrtry/Cd=OPBD | Opening Booked balance. |
:61: | Stmt/Ntry | Une Ntry par mouvement, avec Amt, CdtDbtInd, ValDt, BookgDt. |
type code NTRF | BkTxCd (Bank Transaction Code) | ISO 20022 utilise le BTC à 4 niveaux (Domain, Family, SubFamily) — par exemple PMNT/RCDT/DMCT pour un crédit domestique. |
:86: | NtryDtls/TxDtls/RmtInf | Remittance Information structurée, plus RltdPties, RltdAgts, RfrdDocInf. |
:62F: | Stmt/Bal/Tp/CdOrPrtry/Cd=CLBD | Closing Booked balance. |
:64: | Stmt/Bal/Tp/CdOrPrtry/Cd=CLAV | Closing Available balance. |
:65: | Stmt/Bal/Tp/CdOrPrtry/Cd=FWAV | Forward Available balance. |
Voir la page hub ISO 20022 pour la liste complète de la famille camt et la roadmap de migration des banques européennes (camt.053 généralisé entre 2026 et 2028 selon les groupes).
Messages liés
- MT942 — Interim Transaction Report, version intraday du MT940.
- MT941 — Balance Report, sans détail de mouvements.
- MT950 — Statement Message pour les comptes nostro/loro entre banques.
- MT900 / MT910 — Debit / Credit Confirmation au fil de l'eau, complémentaires du relevé EOD.
- Équivalents ISO 20022 : camt.053 (statement), camt.052 (intraday), camt.054 (notification single).
- Voir aussi : MT103 — le virement qui apparaîtra le lendemain en débit d'un MT940.