Gérer les prélèvements SEPA
Le prélèvement SEPA est le mode de paiement récurrent le plus utilisé en self-stockage. Il offre une automatisation complète du recouvrement mensuel et réduit considérablement les démarches manuelles. Ce guide couvre l'ensemble du cycle : création du mandat, génération du lot, envoi à la banque, traitement des rejets et archivage.
Comprendre le prélèvement SEPA : B2C vs B2B
SEPA Core (B2C) — le standard utilisé par Boxanet
Le prélèvement SEPA Core (aussi appelé SDD Core — SEPA Direct Debit Core) est conçu pour les paiements entre une entreprise et des consommateurs particuliers. C'est le schéma utilisé par défaut dans Boxanet.
Caractéristiques principales :
- Le client dispose d'un délai de contestation de 8 semaines (sans justification) après le débit
- En cas de mandat non autorisé, le délai de contestation est de 13 mois
- Le créancier (vous) assume le risque de retour
- Délai de présentation : 5 jours ouvrés avant la date de valeur pour un premier prélèvement, 2 jours ouvrés pour les prélèvements suivants
SEPA B2B — pour les clients professionnels
Le prélèvement SEPA B2B est destiné aux transactions entre entreprises. Il offre des garanties supplémentaires pour le créancier :
- Aucun droit de remboursement pour le débiteur une fois le prélèvement effectué
- La banque du débiteur vérifie le mandat avant d'autoriser le prélèvement
- Délai de présentation : 1 jour ouvré avant la date de valeur
Création du mandat SEPA
Qu'est-ce qu'un mandat SEPA ?
Le mandat SEPA est le document légal par lequel le client autorise votre société à prélever son compte bancaire. Sans mandat valide, aucun prélèvement ne peut être effectué légalement.
Un mandat Boxanet contient obligatoirement :
- La Référence Unique de Mandat (RUM) — identifiant unique généré par Boxanet
- L'identifiant créancier SEPA de votre société (ICS)
- Le nom et l'adresse du débiteur
- Les coordonnées bancaires (IBAN + BIC)
- La date de signature
- Le type de prélèvement (récurrent ou ponctuel)
Processus de signature électronique
Dans Boxanet, la collecte du mandat SEPA est intégrée au parcours de signature du contrat :
- Lors de la signature du contrat, le client saisit son IBAN dans le formulaire dédié
- Boxanet génère le document de mandat au format PDF
- Le client signe électroniquement (signature qualifiée ou avancée selon votre configuration)
- Le mandat est archivé automatiquement dans la fiche client
- La Référence Unique de Mandat (RUM) est enregistrée en base de données
Vérification de l'IBAN
Boxanet effectue une vérification de format IBAN à la saisie (algorithme MOD-97). Il vérifie également que le BIC correspond à un établissement bancaire connu. En revanche, il ne vérifie pas que l'IBAN est actif ou correspond bien au titulaire — seul le premier prélèvement confirmera cela.
Génération d'un lot SEPA (sepa_batches)
Concept des lots SEPA
Plutôt que d'envoyer un prélèvement individuel par facture, Boxanet regroupe toutes les factures éligibles dans un lot SEPA (table sepa_batches). Ce lot est ensuite exporté en un seul fichier XML transmis à votre banque.
Factures éligibles à un lot SEPA
Une facture est incluse dans le lot SEPA si elle remplit ces conditions :
- Statut
issuedouoverdue - Mode de paiement du contrat = Prélèvement SEPA
- Mandat SEPA valide associé au client
- Pas déjà incluse dans un lot SEPA en cours de traitement
Créer un lot SEPA dans Boxanet
- Allez dans Paiements > Prélèvements SEPA > Nouveau lot
- Sélectionnez la date de prélèvement souhaitée (date de débit chez le client)
- Boxanet affiche la liste des factures éligibles avec le montant total
- Vérifiez les éléments inclus (vous pouvez exclure manuellement certaines factures)
- Cliquez sur Générer le lot
- Le lot est créé en base (table
sepa_batches) avec un statutpending - Les lignes individuelles sont créées dans
sepa_batch_items(une ligne par facture)
Format SEPA XML (pain.008.001.02)
Structure du fichier XML
Le fichier généré par Boxanet respecte la norme ISO 20022, format pain.008.001.02 (Payment Initiation — Direct Debit — version 02). C'est le format standard accepté par l'ensemble des banques françaises et européennes.
Structure du fichier :
pain.008.001.02
├── GrpHdr (Group Header)
│ ├── MsgId (identifiant unique du message)
│ ├── CreDtTm (horodatage de création)
│ ├── NbOfTxs (nombre total de transactions)
│ └── CtrlSum (somme totale des montants)
├── PmtInf (Payment Information) [1 par type SEPA]
│ ├── PmtMtd = DD (Direct Debit)
│ ├── SeqTp (FRST / RCUR / FNAL / OOFF)
│ ├── ReqdColltnDt (date de prélèvement demandée)
│ └── DrctDbtTxInf [1 par transaction]
│ ├── MndtRltdInf (RUM + date signature mandat)
│ ├── DbtrAgt (BIC de la banque débiteur)
│ ├── Dbtr (nom du client)
│ ├── DbtrAcct (IBAN du client)
│ └── InstdAmt (montant)
SeqTp est crucial. FRST (First) s'applique au tout premier prélèvement sur un mandat. Les prélèvements suivants utilisent RCUR (Recurrent). Boxanet gère cette distinction automatiquement en suivant l'historique des lots par mandat.Télécharger le fichier XML
Depuis la fiche du lot SEPA (statut pending) :
- Cliquez sur Télécharger le fichier XML
- Le fichier est nommé
SEPA_AAAAMMJJ_NNNNN.xml - Transmettez ce fichier à votre banque via votre outil de banque en ligne (EBICS, portail web…)
Envoi du fichier XML à la banque
Méthodes de transmission
| Méthode | Description | Banques concernées |
|---|---|---|
| Portail web banque | Upload manuel du fichier XML via l'interface web | La plupart des banques retail |
| EBICS | Protocole sécurisé de transmission automatisée | Banques professionnelles (BNP, CA, SG…) |
| API bancaire | Transmission via API (Open Banking) | Certaines banques innovantes |
- Ouvrez le lot SEPA
- Cliquez sur Marquer comme envoyé
- Le statut passe de
pendingàsubmitted
Confirmation de réception par la banque
La plupart des banques envoient un accusé de réception (fichier pain.002 ou simple notification email). Conservez ces confirmations dans votre dossier mensuel.
Délais de traitement SEPA
Calendrier détaillé
| Étape | Délai SEPA Core | Délai SEPA B2B |
|---|---|---|
| Remise du fichier à la banque (1er prélèvement) | J-5 jours ouvrés | J-1 jour ouvré |
| Remise du fichier à la banque (prélèvements suivants) | J-2 jours ouvrés | J-1 jour ouvré |
| Débit du compte client | J (date de valeur) | J (date de valeur) |
| Crédit sur votre compte | J à J+1 | J à J+1 |
| Délai maxi de retour (rejet) | J+5 jours ouvrés | J+3 jours ouvrés |
La prénotification (obligatoire en SEPA Core)
Avant tout premier prélèvement — et lors de tout changement de montant — vous devez envoyer une prénotification au client au moins 14 jours calendaires avant la date de débit (sauf accord contractuel réduisant ce délai).
Boxanet envoie automatiquement cette prénotification par email si la fonctionnalité est activée dans Paramètres > SEPA > Prénotification.
Rejets SEPA : causes et procédures
Tableau des codes de rejet les plus courants
| Code | Libellé | Cause | Action recommandée |
|---|---|---|---|
AC01 | IncorrectAccountNumber | IBAN invalide ou compte fermé | Contacter le client, mettre à jour l'IBAN |
AC04 | ClosedAccountNumber | Compte définitivement fermé | Obtenir un nouvel IBAN du client |
AC06 | BlockedAccount | Compte bloqué (saisie, succession…) | Contacter le client, envisager recouvrement |
AM04 | InsufficientFunds | Solde insuffisant | Relancer le client, proposer paiement CB |
MD01 | NoMandate | Aucun mandat valide en banque | Refaire signer un nouveau mandat |
MD02 | MissingMandatoryInformationInMandate | Données mandat incomplètes | Vérifier et corriger le mandat en base |
MD06 | ReturnedReasonByEndCustomer | Contestation du client | Contacter le client, vérifier le contrat |
MS02 | NotSpecifiedReasonCustomerGenerated | Refus sans motif du client | Contacter le client |
MS03 | NotSpecifiedReasonAgentGenerated | Refus de la banque sans motif précis | Contacter la banque du client |
RC01 | BankIdentifierCodeInvalid | BIC invalide | Vérifier et corriger le BIC |
RR04 | RegulatoryReason | Blocage réglementaire (gel des avoirs…) | Consulter votre service juridique |
SL01 | DueToSpecificServiceOfferedByDebtorAgent | Restriction du service bancaire | Contacter le client pour mode de paiement alternatif |
Procédure de traitement d'un rejet
- La banque retourne un fichier de rejet (pain.002 ou notification)
- Dans Boxanet : Paiements > Prélèvements SEPA > Lots > [Votre lot] > Rejets
- Identifiez les
sepa_batch_itemsen échec et leur code de rejet - Cliquez sur Enregistrer le rejet pour chaque transaction concernée
- Les factures correspondantes repassent en statut
overdue - Déclenchez une relance manuelle ou automatique selon votre procédure
AM04 (fonds insuffisants) sont les plus fréquents. Mettez en place une relance SMS ou email automatique le lendemain du rejet pour maximiser les chances de recouvrement rapide. Proposez systématiquement un paiement par CB en ligne comme alternative immédiate.Annuler un prélèvement en lot (avant envoi à la banque)
Tant que le lot est en statut pending, vous pouvez l'annuler entièrement ou exclure des lignes individuelles :
- Annuler le lot entier : Fiche du lot > Annuler le lot — toutes les
sepa_batch_itemssont libérées, les factures restent enissuedouoverdue - Exclure une ligne : Fiche du lot > Lignes > Exclure sur la ligne concernée
submitted (envoyé à la banque), vous ne pouvez plus le modifier côté Boxanet. Pour annuler un prélèvement déjà transmis, contactez directement votre banque — des délais et des frais peuvent s'appliquer.Archivage des mandats SEPA
Obligations légales
Le Règlement SEPA impose la conservation des mandats pendant au moins 14 mois après la date du dernier prélèvement effectué sur ce mandat. La réglementation française est plus stricte et recommande 5 ans dans le cadre de la prescription contractuelle générale.
Archivage dans Boxanet
Boxanet archive automatiquement :
- Le PDF signé du mandat
- La date de signature
- La Référence Unique de Mandat (RUM)
- L'historique de tous les prélèvements liés
- Les éventuelles révocations ou modifications
revoked. Il ne sera jamais réutilisé, même si le client revient.
Questions fréquentes (FAQ)
Q : Un client conteste un prélèvement. Que se passe-t-il ?En SEPA Core, le client a 8 semaines pour demander le remboursement à sa banque, sans avoir à se justifier. La banque vous débite alors du montant. Dans Boxanet, enregistrez ce retour comme rejet avec le code MD06. La facture repasse en overdue. Contactez immédiatement le client pour comprendre la situation et récupérer le paiement par un autre moyen.
Oui. Lors de la création du mandat, sélectionnez le type Ponctuel (SeqTp = OOFF). Ce mandat ne peut être utilisé qu'une seule fois. Pour les clients en self-stockage, ce cas est rare : le prélèvement récurrent (RCUR) est la norme.
Si le client change de banque mais garde son IBAN (portabilité bancaire), le mandat existant reste valide. Si l'IBAN change, vous devez mettre à jour les coordonnées dans Boxanet et envoyer une notification de modification au client. La RUM reste identique mais le prochain prélèvement sera traité comme un FRST (premier prélèvement sur le nouvel IBAN).
Pour un prélèvement récurrent (RCUR) en SEPA Core : vous remettez le fichier à votre banque au minimum 2 jours ouvrés avant la date de débit souhaitée. En pratique, comptez 3 à 4 jours pour avoir une marge. Le crédit sur votre compte intervient généralement le jour même du débit (J) ou le lendemain (J+1).