La norme ISO 20022 définit une famille de messages XML pour les paiements. Les plus courants — pain.001, pain.002 et pain.008 — jouent chacun un rôle précis dans la chaîne de paiement. Cet article explique leurs différences, leurs cas d'usage et leur complémentarité.
Vue d'ensemble des messages ISO 20022
ISO 20022 est un standard international de messagerie financière qui remplace progressivement les formats propriétaires et les messages SWIFT MT. Il couvre l'ensemble du cycle de paiement : initiation, compensation, règlement et reporting.
Les messages sont organisés en domaines. Le domaine « pain » (Payment Initiation) concerne l'échange entre l'entreprise et sa banque. Les principaux messages sont :
• pain.001 : initiation de virement (Customer Credit Transfer Initiation)
• pain.002 : rapport de statut (Customer Payment Status Report)
• pain.008 : initiation de prélèvement (Customer Direct Debit Initiation)
D'autres domaines existent : « pacs » pour la compensation interbancaire, « camt » pour les relevés de compte, et « acmt » pour la gestion de compte.
Les messages sont organisés en domaines. Le domaine « pain » (Payment Initiation) concerne l'échange entre l'entreprise et sa banque. Les principaux messages sont :
• pain.001 : initiation de virement (Customer Credit Transfer Initiation)
• pain.002 : rapport de statut (Customer Payment Status Report)
• pain.008 : initiation de prélèvement (Customer Direct Debit Initiation)
D'autres domaines existent : « pacs » pour la compensation interbancaire, « camt » pour les relevés de compte, et « acmt » pour la gestion de compte.
pain.001 : l'initiation de virement
Le message pain.001 (CustomerCreditTransferInitiation) est envoyé par l'entreprise à sa banque pour ordonner un ou plusieurs virements. C'est le point de départ de tout virement SEPA ou international.
Le fichier contient les informations de l'émetteur (nom, IBAN, BIC), la date d'exécution souhaitée et le détail de chaque transaction : bénéficiaire, montant, devise et référence. Un seul fichier peut regrouper des centaines de virements en lot.
Le pain.001 est utilisé pour les virements SEPA en euros, mais aussi pour les virements internationaux multi-devises depuis la migration ISO 20022 de SWIFT. Le générateur de virements SEPA produit des fichiers pain.001 conformes que vous pouvez transmettre directement à votre banque.
Le fichier contient les informations de l'émetteur (nom, IBAN, BIC), la date d'exécution souhaitée et le détail de chaque transaction : bénéficiaire, montant, devise et référence. Un seul fichier peut regrouper des centaines de virements en lot.
Le pain.001 est utilisé pour les virements SEPA en euros, mais aussi pour les virements internationaux multi-devises depuis la migration ISO 20022 de SWIFT. Le générateur de virements SEPA produit des fichiers pain.001 conformes que vous pouvez transmettre directement à votre banque.
pain.002 : le rapport de statut
Le message pain.002 (CustomerPaymentStatusReport) est la réponse de la banque à un pain.001 ou un pain.008. Il informe l'entreprise du statut de son lot de paiements : accepté, partiellement accepté ou rejeté.
Pour chaque transaction, le pain.002 peut indiquer :
• ACCP (Accepted) : la transaction est acceptée et sera exécutée.
• RJCT (Rejected) : la transaction est rejetée, avec un code motif (par exemple AC01 pour IBAN incorrect, AM04 pour fonds insuffisants, FF01 pour format invalide).
• PDNG (Pending) : la transaction est en attente de traitement.
Le pain.002 n'est pas généré par l'entreprise mais par la banque. Il est essentiel de le traiter pour identifier les rejets et les corriger rapidement. Les codes erreur standardisés permettent d'automatiser ce suivi.
Pour chaque transaction, le pain.002 peut indiquer :
• ACCP (Accepted) : la transaction est acceptée et sera exécutée.
• RJCT (Rejected) : la transaction est rejetée, avec un code motif (par exemple AC01 pour IBAN incorrect, AM04 pour fonds insuffisants, FF01 pour format invalide).
• PDNG (Pending) : la transaction est en attente de traitement.
Le pain.002 n'est pas généré par l'entreprise mais par la banque. Il est essentiel de le traiter pour identifier les rejets et les corriger rapidement. Les codes erreur standardisés permettent d'automatiser ce suivi.
pain.008 : l'initiation de prélèvement
Le message pain.008 (CustomerDirectDebitInitiation) est envoyé par le créancier à sa banque pour initier des prélèvements sur les comptes des débiteurs. Il est le pendant du pain.001 pour les flux entrants.
Chaque prélèvement nécessite :
• Un mandat signé identifié par un RUM (Référence Unique de Mandat) et une date de signature.
• L'ICS (Identifiant Créancier SEPA) du créancier.
• Le type de séquence : FRST (premier prélèvement), RCUR (récurrent), OOFF (ponctuel) ou FNAL (dernier).
Le pain.008 est utilisé pour les abonnements, les factures récurrentes et tout encaissement automatisé. Le générateur de prélèvements SEPA permet de créer ces fichiers avec gestion complète des mandats.
Chaque prélèvement nécessite :
• Un mandat signé identifié par un RUM (Référence Unique de Mandat) et une date de signature.
• L'ICS (Identifiant Créancier SEPA) du créancier.
• Le type de séquence : FRST (premier prélèvement), RCUR (récurrent), OOFF (ponctuel) ou FNAL (dernier).
Le pain.008 est utilisé pour les abonnements, les factures récurrentes et tout encaissement automatisé. Le générateur de prélèvements SEPA permet de créer ces fichiers avec gestion complète des mandats.
Tableau comparatif
| Caractéristique | pain.001 | pain.002 | pain.008 |
|---|---|---|---|
| Direction | Entreprise → Banque | Banque → Entreprise | Entreprise → Banque |
| Fonction | Initier des virements | Rapporter le statut | Initier des prélèvements |
| Qui le génère ? | L'entreprise | La banque | L'entreprise |
| Mandat requis | Non | Non | Oui (RUM + ICS) |
| Devises | EUR + multi-devise | N/A | EUR |
Comment ces messages s'articulent
Le flux typique d'un virement SEPA suit cette séquence :
1. L'entreprise génère un fichier pain.001 contenant ses ordres de virement et le transmet à sa banque (par upload ou canal bancaire).
2. La banque traite le fichier et renvoie un pain.002 avec le statut de chaque transaction : acceptée, rejetée ou en attente.
3. Pour les prélèvements, le créancier envoie un pain.008 à sa banque, qui le transmet au système de compensation. La banque du débiteur peut ensuite renvoyer un pain.002 en cas de rejet.
Comprendre ce cycle permet d'automatiser le traitement des retours et de réduire les délais de réconciliation. Le validateur ISO 20022 vous aide à vérifier vos fichiers pain.001 et pain.008 avant envoi, réduisant ainsi le nombre de rejets signalés dans les pain.002.
1. L'entreprise génère un fichier pain.001 contenant ses ordres de virement et le transmet à sa banque (par upload ou canal bancaire).
2. La banque traite le fichier et renvoie un pain.002 avec le statut de chaque transaction : acceptée, rejetée ou en attente.
3. Pour les prélèvements, le créancier envoie un pain.008 à sa banque, qui le transmet au système de compensation. La banque du débiteur peut ensuite renvoyer un pain.002 en cas de rejet.
Comprendre ce cycle permet d'automatiser le traitement des retours et de réduire les délais de réconciliation. Le validateur ISO 20022 vous aide à vérifier vos fichiers pain.001 et pain.008 avant envoi, réduisant ainsi le nombre de rejets signalés dans les pain.002.
