ISO 20022 Generator
ISO 20022Generator
Blog ISO 20022
·8 min de lecture

Comment créer un fichier SEPA XML : le guide complet

Les fichiers SEPA XML sont le format standard pour les virements et prélèvements bancaires en Europe. Que vous soyez trésorier, comptable ou développeur, comprendre la structure de ces fichiers est essentiel pour automatiser vos flux de paiement. Ce guide détaille chaque étape, de la structure XML aux outils de génération.

Qu'est-ce qu'un fichier SEPA XML ?

Un fichier SEPA XML est un document structuré au format XML qui respecte la norme ISO 20022. Il permet d'initier des virements (pain.001) ou des prélèvements (pain.008) auprès de votre banque. Le format est standardisé dans toute la zone SEPA (Single Euro Payments Area), ce qui garantit l'interopérabilité entre les 36 pays membres.

Contrairement aux anciens formats propriétaires (CFONB en France, DTA en Suisse), le SEPA XML offre une structure universelle acceptée par toutes les banques de la zone euro. Chaque fichier contient un en-tête de lot (GroupHeader), des informations de paiement (PaymentInformation) et les transactions individuelles (CreditTransferTransactionInformation ou DirectDebitTransactionInformation).

Les formats pain.001 et pain.008

Le standard ISO 20022 définit plusieurs types de messages pour les paiements :

pain.001 (CustomerCreditTransferInitiation) : utilisé pour initier un ou plusieurs virements. L'entreprise envoie ce fichier à sa banque pour ordonner des transferts vers les comptes bénéficiaires. C'est le format le plus courant pour les paiements fournisseurs, les salaires et les remboursements.

pain.008 (CustomerDirectDebitInitiation) : utilisé pour initier des prélèvements SEPA. Le créancier envoie ce fichier à sa banque pour collecter des fonds depuis les comptes des débiteurs. Il nécessite un mandat signé (identifié par un RUM — Référence Unique de Mandat) et un identifiant créancier SEPA (ICS).

Chaque format suit un schéma XSD (XML Schema Definition) qui définit précisément les champs autorisés, leur ordre et leurs contraintes.

Structure d'un fichier pain.001

Un fichier pain.001 se compose de trois niveaux :

1. GroupHeader (GrpHdr) : contient l'identifiant du message, la date de création, le nombre de transactions et le montant total de contrôle. Ce bloc apparaît une seule fois par fichier.

2. PaymentInformation (PmtInf) : regroupe les informations de l'émetteur — nom, IBAN, BIC, date d'exécution souhaitée et méthode de paiement (TRF pour les virements). Un fichier peut contenir plusieurs blocs PmtInf.

3. CreditTransferTransactionInformation (CdtTrfTxInf) : détaille chaque transaction — montant, devise, IBAN et nom du bénéficiaire, référence de bout en bout (EndToEndId) et libellé. C'est ici que chaque ligne de paiement est spécifiée.

Champs obligatoires et bonnes pratiques

Chaque fichier SEPA XML doit contenir au minimum :

MsgId : identifiant unique du message (max 35 caractères).
CreDtTm : date et heure de création au format ISO 8601.
NbOfTxs : nombre total de transactions dans le fichier.
CtrlSum : somme de contrôle (total des montants).
IBAN et BIC de l'émetteur et des bénéficiaires.
Montant (InstdAmt) : avec la devise (EUR pour SEPA).
EndToEndId : référence unique par transaction pour le suivi.

Bonnes pratiques : utilisez des identifiants uniques et traçables, vérifiez les IBAN avec l'algorithme MOD 97-10 (ISO 13616), et validez systématiquement le fichier contre le schéma XSD avant envoi à la banque.

Validation XSD : pourquoi et comment

La validation XSD vérifie que votre fichier XML respecte la structure définie par le schéma officiel ISO 20022. Une erreur de structure — un champ manquant, un format de date incorrect ou un montant mal formaté — entraîne un rejet par la banque, souvent avec des frais et des délais supplémentaires.

Pour valider un fichier, vous pouvez utiliser un outil en ligne comme le validateur ISO 20022 intégré à notre plateforme. Celui-ci détecte les erreurs de schéma, vérifie les IBAN et les BIC, et signale les incohérences courantes comme les dates d'exécution passées ou les montants nuls.

La validation en amont réduit considérablement les rejets bancaires et accélère le traitement de vos paiements.

Outils pour générer un fichier SEPA XML

Plusieurs approches existent pour créer des fichiers SEPA XML :

Développement sur mesure : les équipes techniques peuvent utiliser des bibliothèques XML pour construire les fichiers à partir de leurs données. Cette approche offre un contrôle total mais demande du temps de développement et de maintenance.

Export ERP/comptable : certains logiciels comptables (Sage, SAP, Cegid) proposent un export SEPA XML natif. La qualité varie selon les éditeurs et les versions.

Générateur en ligne : des outils comme ISO 20022 Generator permettent de créer des fichiers pain.001 et pain.008 conformes directement depuis le navigateur. Il suffit d'importer un fichier CSV/Excel ou de saisir les données manuellement. Le fichier est validé contre le schéma XSD et téléchargeable immédiatement.

Quelle que soit la méthode, l'essentiel est de valider chaque fichier avant l'envoi pour éviter les rejets coûteux.

Erreurs courantes à éviter

Les causes de rejet les plus fréquentes sont :

IBAN invalide : erreur de saisie ou clé de contrôle incorrecte. Vérifiez chaque IBAN avec un algorithme de validation.
BIC manquant ou incorrect : certaines banques exigent le BIC même s'il est théoriquement optionnel en SEPA.
Date d'exécution passée : la date doit être un jour ouvré futur.
Montant nul ou négatif : chaque transaction doit avoir un montant strictement positif.
MsgId en doublon : l'identifiant du message doit être unique pour chaque fichier envoyé.
Encoding incorrect : le fichier doit être encodé en UTF-8 sans BOM.

Un validateur en amont détecte ces problèmes avant qu'ils n'arrivent à votre banque.

Générez votre fichier SEPA XML maintenant

Créez des fichiers pain.001 et pain.008 conformes en quelques minutes, avec validation XSD intégrée.

Commencer