Parser SWIFT MT
Parser et analyser les messages SWIFT MT
Les messages SWIFT MT sont le format de messagerie standard utilise par plus de 11 000 institutions financieres dans le monde pour les paiements transfrontaliers et les transactions sur titres.
Qu’est-ce que SWIFT MT ?
SWIFT MT (Message Type) est le format de messagerie historique utilise par le reseau SWIFT (Society for Worldwide Interbank Financial Telecommunication) pour faciliter les transactions financieres transfrontalieres. Depuis 1977, les messages MT constituent l’epine dorsale de la communication bancaire internationale, connectant plus de 11 000 institutions financieres dans plus de 200 pays.
Chaque type de message MT est identifie par un numero a trois chiffres. Le premier chiffre indique la categorie du message (par ex., 1xx pour les virements clients, 2xx pour les transferts entre institutions financieres, 9xx pour la gestion de tresorerie). Le type de message complet — tel que MT103 pour les virements clients ou MT940 pour les releves de compte — determine les champs et la structure exactes requis.
Les messages MT utilisent un format proprietaire a tags ou chaque element de donnees est identifie par un numero de tag delimite par des deux-points. Bien que ce format ait servi l’industrie pendant des decennies, il est progressivement remplace par les messages XML ISO 20022 dans le cadre de l’initiative de migration mondiale.
Structure du message
Chaque message SWIFT MT est compose de cinq blocs, chacun jouant un role distinct dans le routage, le traitement et l’authentification du message.
Le bloc 1 (Basic Header) identifie l’expediteur et la session. Il contient l’identifiant d’application, l’identifiant de service, l’adresse du terminal logique (LT) de l’expediteur, le numero de session et le numero de sequence.
Le bloc 2 (Application Header) specifie le type de message et le destinataire. L’indicateur I/O indique s’il s’agit d’un message entrant (envoye) ou sortant (recu), suivi du type MT a trois chiffres, du BIC du destinataire et de la priorite du message.
Le bloc 3 (User Header) est optionnel et contient des metadonnees definies par l’utilisateur telles que la reference utilisateur du message (MUR) utilisee pour le rapprochement, la priorite bancaire et les identifiants de service.
Le bloc 4 (Text Body) est le coeur du message. Il contient les donnees de transaction proprement dites a l’aide de champs etiquetes (par ex., :20: pour la reference de transaction, :32A: pour la date de valeur/devise/montant). Les tags requis varient selon le type de message.
Le bloc 5 (Trailer) assure l’authentification et la verification. Le MAC (Message Authentication Code) garantit l’integrite, tandis que le CHK (checksum) verifie que le contenu n’a pas ete altere en transit.
Types de messages courants
| Type MT | Nom | Description |
|---|---|---|
| MT103 | Virement client | Paiement client unitaire — le type de message SWIFT le plus courant |
| MT202 | Transfert entre institutions financieres | Paiement de banque a banque, souvent utilise pour couvrir les obligations MT103 |
| MT940 | Releve de compte client | Releve de compte en fin de journee avec soldes et details des transactions |
| MT199 | Message en format libre | Message non structure pour les demandes d’information, investigations ou communications ad hoc |
| MT300 | Confirmation de change | Confirme les details d’une operation de change entre deux contreparties |
| MT760 | Garantie / Lettre de credit standby | Emission d’une garantie bancaire ou d’une lettre de credit standby |
| MT700 | Emission d’un credit documentaire | Ouverture d’une lettre de credit pour le financement du commerce |
Flux d’un paiement transfrontalier
Un paiement transfrontalier typique utilisant le MT103 suit ce parcours :
- Initiation : le client donneur d’ordre instruit sa banque (banque d’origine) d’envoyer des fonds
- Creation du MT103 : la banque d’origine cree un message MT103 avec les details complets du beneficiaire
- Reseau SWIFT : le message est achemine via le reseau SWIFT (SWIFTNet FIN) vers la banque du beneficiaire
- Banque correspondante : en l’absence de relation directe, le message transite par une ou plusieurs banques correspondantes, chacune generant un MT202 (paiement de couverture)
- Credit : la banque du beneficiaire credite le compte du beneficiaire et envoie une confirmation MT199 ou MT910
- Releve : en fin de journee, les deux banques generent des releves MT940 refletant la transaction
Cas d’utilisation courants
- Virements internationaux : le MT103 est le standard pour les paiements clients transfrontaliers entre banques
- Operations de tresorerie : les MT202, MT300 et MT320 gerent les transferts interbancaires, les operations de change et les depots a terme
- Gestion de tresorerie : les MT940 et MT942 delivrent les releves de compte en fin de journee et en cours de journee aux tresoreries d’entreprise
- Financement du commerce : les MT700, MT760 et messages associes prennent en charge les lettres de credit et les garanties bancaires
- Reglement de titres : les messages MT5xx gerent les instructions de reglement, les confirmations et les operations sur titres
- Investigations : les MT199 et MT299 offrent des canaux en format libre pour les demandes de renseignements sur les paiements et le traitement des exceptions
Essayez ces exemples
Un virement client MT103 complet avec tous les tags obligatoires : reference de transaction (20), code operation bancaire (23B), date de valeur/devise/montant (32A), client donneur d'ordre (50K), beneficiaire (59) et instruction de frais (71A). Le bloc 5 contient l'authentification (MAC) et la somme de controle (CHK).
{1:F01BANKFRPPAXXX0000000000}{2:I103BANKDEFFXXXXN}{3:{108:MT103}}{4:
:20:TXREF20240315001
:23B:CRED
:32A:240315EUR25000,00
:50K:/FR7630006000011234567890189
JOHN DOE
10 RUE DE LA PAIX
PARIS FR
:59:/DE89370400440532013000
JANE SMITH
BERLINER STR 45
BERLIN DE
:71A:SHA
-}{5:{MAC:00000000}{CHK:123456789ABC}} Ce MT103 ne contient pas le tag obligatoire 32A (date de valeur/devise/montant). Sans ce tag, la banque receptrice ne peut pas determiner le montant du virement, la devise ou la date de reglement. Les blocs 3 et 5 sont egalement absents.
{1:F01BANKFRPPAXXX0000000000}{2:I103BANKDEFFXXXXN}{4:
:20:TXREF20240315001
:23B:CRED
:50K:/FR7630006000011234567890189
JOHN DOE
:59:/DE89370400440532013000
JANE SMITH
:71A:SHA
-}