ediverse Explorer la plateforme

À la une PEPPOL BIS Billing 3.0 L’obligation européenne d’e-invoicing arrive : France sept 2026, Belgique janv 2026, Allemagne 2025.

MT103 — Single Customer Credit Transfer

Le virement client international qui a porté l'essentiel des paiements cross-border SWIFT pendant quarante ans. Désormais remplacé par pacs.008 sur le réseau, mais toujours utilisé en domestique selon les marchés.

Objet du message

Le MT103 est envoyé par une banque ordonnatrice à la banque du bénéficiaire (potentiellement via une banque intermédiaire) pour ordonner le règlement d'un montant unique en faveur d'un bénéficiaire identifié. C'est le message de référence des virements clients transfrontaliers : paiements de factures fournisseurs internationaux, salaires expatriés, transferts familiaux. Il porte nécessairement une partie ordonnatrice et une partie bénéficiaire identifiables, un montant unique, une date de valeur et une option de partage des frais (OUR / SHA / BEN).

MT103 existe en plusieurs variantes : MT103 « Core » (général), MT103 STP (Straight Through Processing — règles d'identification plus strictes pour le routage automatique), et MT103+ (extension SWIFT Remit pour les paiements RemittanceInfo structurés). Le retrait CBPR+ de novembre 2025 concerne toutes ces variantes en cross-border.

Structure des cinq blocs

Comme tout message FIN, le MT103 se compose de cinq blocs (voir aussi la page hub SWIFT MT) :

  • Block 1 — Basic Header : {1:F01...}, application FIN, service 01, BIC émetteur, session, séquence.
  • Block 2 — Application Header : {2:I103...}, sens (Input), MT103, BIC destinataire, priorité (N=Normal, U=Urgent).
  • Block 3 — User Header : porte la {121:UETR} obligatoire depuis novembre 2018 pour tout MT103 SWIFTNet (Unique End-to-end Transaction Reference, format UUID v4).
  • Block 4 — Text : le corps métier, structuré par tags :nn[a]:.
  • Block 5 — Trailer : checksum et contrôles réseau.

Tags du Block 4 obligatoires

Le SWIFT User Handbook impose sept tags obligatoires pour un MT103 valide :

TagNomFormatUsage
:20:Sender's Reference16xRéférence unique côté ordonnateur, sans // ni / en début/fin.
:23B:Bank Operation Code4!cCRED (credit), CRTS (cheque), SPAY (priority paid), SPRI (priority sent), SSTD (standard).
:32A:Value Date / Currency / Interbank Settled Amount6!n3!a15dDate YYMMDD + ISO 4217 + montant (virgule décimale, max 15 chiffres).
:50a:Ordering Customeroption A/F/K50A = BIC; 50F = identifiant et adresse structurés; 50K = numéro de compte (IBAN) + nom et adresse.
:59a:Beneficiary Customeroption « ou » 59 / 59A / 59F59 = compte + nom/adresse; 59A = BIC; 59F = identifiant et adresse structurés.
:71A:Details of Charges3!aOUR (frais à l'ordonnateur), SHA (partagés), BEN (au bénéficiaire). C'est ce tag que SEPA fige à SLEV.

Le tag :70: — Remittance Information — est « optionnel » dans le standard mais en pratique quasi-toujours porté pour la réconciliation comptable côté bénéficiaire. Les tags conditionnels les plus fréquents : :33B: (Instructed Amount — utile dès qu'il y a conversion FX), :36: (Exchange Rate), :52a: (Ordering Institution), :53a: / :54a: / :55a: (Sender's / Receiver's / Third Reimbursement Institution), :56a: (Intermediary Institution), :57a: (Account With Institution), :72: (Sender to Receiver Information).

Exemple réel

Virement de 12 500 EUR d'ACME SARL (Lyon, compte BNP Paribas) vers Hans Mueller GmbH (Francfort, compte Deutsche Bank), avec UETR, frais à l'ordonnateur, pour règlement de la facture 2026-187 :

text mt103-anonymized.txt
{1:F01BNPAFRPPAXXX0000000000}{2:I103DEUTDEFFXXXXN}{3:{108:REF20260514001}{121:1a2b3c4d-5e6f-7890-abcd-ef1234567890}}{4:
:20:REF20260514001
:23B:CRED
:32A:260514EUR12500,00
:33B:EUR12500,00
:50K:/FR7630006000011234567890189
ACME SARL
12 RUE DE LA SOIE
69001 LYON
:52A:BNPAFRPPXXX
:57A:DEUTDEFFXXX
:59:/DE89370400440532013000
HANS MUELLER GMBH
HAUPTSTRASSE 12
60313 FRANKFURT
:70:INVOICE 2026-187
:71A:OUR
-}{5:{CHK:ABC123456789}}
  • {1:F01BNPAFRPPAXXX...} — émetteur BNP Paribas Paris, BIC BNPAFRPP.
  • {2:I103DEUTDEFFXXXXN} — destinataire Deutsche Bank Frankfurt, BIC DEUTDEFF, priorité N.
  • {3:{121:1a2b3c4d-...}} — UETR au format UUID v4, obligatoire.
  • :20:REF20260514001 — référence ordonnateur (max 16 caractères).
  • :23B:CRED — virement crédité, sans condition particulière.
  • :32A:260514EUR12500,00 — date valeur 14 mai 2026, EUR, 12 500,00.
  • :33B:EUR12500,00 — montant instruit (égal au règlement ici, donc pas de conversion).
  • :50K: — ordonnateur en option K : IBAN + nom + adresse non structurée.
  • :52A:BNPAFRPPXXX — ordering institution (la banque qui débite, ici la même que l'émetteur).
  • :57A:DEUTDEFFXXX — account with institution (la banque qui crédite le compte du bénéficiaire).
  • :59:/DE89... — bénéficiaire avec IBAN, nom et adresse.
  • :70:INVOICE 2026-187 — libellé pour la rapprochement comptable.
  • :71A:OUR — frais entièrement à la charge de l'ordonnateur.

Pièges courants

  • BIC vs BICFI — un BIC dans MT est sur 8 ou 11 caractères. Le composant XXX final (branch code) est explicite dans MT (BNPAFRPPXXX). En ISO 20022, l'élément BICFI attend strictement 8 ou 11 caractères mais sans XXX implicite — attention lors d'une traduction MT → MX.
  • IBAN vs proprietary account — le préfixe / devant un compte en :50K: ou :59: indique un IBAN. Sans préfixe, c'est un identifiant propriétaire (RIB, BBAN, account number domestique). C'est une source classique de rejets en migration vers pacs.008.
  • FX et le couple 32A / 33B — quand l'ordonnateur instruit une somme dans une devise et que le règlement final est dans une autre, :32A: porte le montant settled et :33B: porte le montant instructed. Le tag :36: donne le taux de change appliqué. Oublier :33B: sur un FX entraîne un retour en MT199 par la banque destinataire.
  • Charges & SEPA — pour un MT103 dans la zone SEPA, le tag :71A: doit porter SLEV (Service Level — frais partagés selon le rulebook). Imposer OUR ou BEN viole l'EPC SCT Rulebook et provoque un rejet.
  • UETR absente ou mal formée — depuis la Universal Confirmation de SWIFT (novembre 2018), tout MT103 sans {121:UUID} dans le Block 3 est rejeté à l'émission. L'UUID doit être en v4 (RFC 4122), exactement 36 caractères tirets inclus, en minuscules.
  • Caractère X (interdit) — SWIFT MT n'autorise pas le jeu Unicode complet. Les caractères autorisés en Block 4 sont définis par le character set x (latin de base, sans accents). Un caractère é sera remplacé par e par la passerelle SWIFT ou provoquera un rejet selon le mode strict — d'où l'attrait de pacs.008 (UTF-8 natif) pour les noms internationaux.

Équivalent MX — pacs.008

En ISO 20022, le MT103 correspond à pacs.008.001.10 (FI to FI Customer Credit Transfer, version 10, telle qu'utilisée par CBPR+). Les correspondances principales :

MT103pacs.008Note
:20:PmtId/InstrIdRéférence ordonnateur.
Block 3 :121:PmtId/UETRUUID v4 obligatoire dans les deux formats.
:23B:Catégorie + service levelCRED se traduit en l'absence d'instruction particulière; SLEV → SvcLvl/Cd=SEPA.
:32A: dateIntrBkSttlmDtDate ISO YYYY-MM-DD.
:32A: currency + amountIntrBkSttlmAmt Ccy=...Montant interbancaire réglé.
:33B:InstdAmtMontant instruit (avant FX).
:50a:Dbtr + DbtrAcctNom et compte structurés.
:52a:DbtrAgtBanque ordonnatrice (BIC en BICFI).
:57a:CdtrAgtBanque du bénéficiaire.
:59a:Cdtr + CdtrAcctNom et compte structurés.
:70:RmtInf/Ustrd ou StrdRemittance non structurée (Ustrd) ou structurée (Strd avec référence créancier ISO 11649).
:71A:ChrgBrOUR → DEBT, BEN → CRED, SHA → SHAR, SLEV → SLEV.

Voir la page détaillée pacs.008 pour le schéma XSD et un exemple complet.

Messages liés

  • MT199 — Free Format Message, utilisé pour les retours, demandes d'information, status simples.
  • MT900 / MT910 — Debit / Credit Confirmation envoyés par les banques correspondantes après imputation.
  • MT202 / MT202 COV — General FI Transfer, pour le règlement interbancaire du virement (le MT103 étant l'instruction côté client, le MT202 est le règlement côté correspondant).
  • MTn92 / MTn95 / MTn96 — Cancellation, Query, Answer pour les investigations post-règlement.
  • Équivalent ISO 20022 : pacs.008, avec accusé pacs.002, retour pacs.004, annulation camt.056.