Documentation : Fichier de Prélèvement SEPA (ISO 20022)

Cette documentation détaille la structure et les champs obligatoires pour la génération des fichiers de prélèvement SEPA au format pain.008.001.02 (norme en vigueur).

1. Présentation générale

Le prélèvement SEPA (SDD - SEPA Direct Debit) repose sur l'échange de fichiers XML. Un fichier est structuré en trois niveaux hiérarchiques :

GrpHdr (En-tête) : Informations communes à tout le fichier.

PmtInf (Information de paiement) : Informations relatives au créancier et au type de prélèvement.

DrctDbtTxInf (Transaction) : Détails de chaque débit individuel (un par client).

2. Tableau des champs obligatoires

Rôle	Balise XML	Nom du champ	Description / Format
Commun	`<MsgId>`	ID du message	Identifiant unique du fichier (max 35 car.).
Commun	`<CreDtTm>`	Date et heure	Date de création (ex: 2026-03-27T15:45:00).
Commun	`<NbOfTxs>`	Nb Transactions	Nombre total de prélèvements dans le fichier.
Créancier	`<InitgPty>`	Partie initiatrice	Nom de l'entité qui transmet le fichier (votre entreprise).
Créancier	`<Cdtr>`	Nom du créancier	Nom officiel de votre entreprise.
Créancier	`<CdtrAcct>`	IBAN Créancier	Votre compte à créditer.
Créancier	`<CdtrAgt>`	BIC Créancier	Le code BIC de votre banque.
Créancier	`<CdtrSchmeId>`	ID Créancier (ICS)	Votre identifiant émis par la Banque de France.
Débiteur	`<Dbtr>`	Nom du débiteur	Nom ou raison sociale de votre client.
Débiteur	`<DbtrAcct>`	IBAN Débiteur	Le compte client à débiter.
Débiteur	`<DbtrAgt>`	BIC Débiteur	Le code BIC de la banque de votre client.
Mandat	`<MndtId>`	Référence Mandat (RUM)	L'identifiant unique du mandat signé (max 35 car.).
Mandat	`<DtOfSgntr>`	Date de signature	Date à laquelle le client a signé le mandat.
Paiement	`<InstdAmt>`	Montant	Montant de la transaction (ex: 125.50).
Paiement	`<EndToEndId>`	ID Transaction	Référence unique de bout en bout (souvent le n° de facture).
Paiement	`<ReqdColltnDt>`	Date de collection	Date souhaitée du débit sur le compte client.

3. Types de séquences (SeqTp)

Il est crucial de bien définir le type de prélèvement dans la balise <SeqTp> :

FRST : Premier prélèvement d'une série récurrente (optionnel selon les banques depuis 2016, souvent remplacé par RCUR).

RCUR : Prélèvements suivants d'une série récurrente.

OOFF : Prélèvement ponctuel unique.

FNAL : Dernier prélèvement d'une série.

4. Bonnes pratiques et contraintes

Avertissement : * Jeu de caractères : Utilisez uniquement le jeu de caractères LATIN. Évitez les accents (é, à, ç), les caractères spéciaux (&, $, %) et les symboles de ponctuation complexes. * Délais : La date de collection (ReqdColltnDt) doit être un jour ouvré bancaire (système TARGET2). * Validation : Avant envoi, le fichier doit être validé contre le schéma XSD fourni par l'EPC (European Payments Council).

5. Exemple de structure XML (Squelette)

<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.008.001.02">
<CstmrDrctDbtInitn>
<GrpHdr> </GrpHdr>
<PmtInf>
<DrctDbtTxInf>
</DrctDbtTxInf>
<DrctDbtTxInf>
</DrctDbtTxInf>
</PmtInf>
</CstmrDrctDbtInitn>
</Document>