PS PrestaShop Intermédiaire

DataFirefly Dunning — Documentation

Installer, configurer et utiliser les relances d'impayés B2B : scénarios en 3 niveaux, calcul des pénalités de retard et de l'indemnité de 40 €, lettres PDF, cron et tableau de bord des créances.

Mis à jour Version du module 1.0.0

Présentation

DataFirefly Dunning automatise le recouvrement amiable des commandes B2B payées par virement et restées impayées. Dès la validation d’une commande éligible, le module ouvre une créance, suit son échéance, déclenche des relances graduées selon un calendrier que vous définissez et calcule les pénalités de retard ainsi que l’indemnité forfaitaire de recouvrement de 40 € prévues par le Code de commerce.

Trois niveaux de relance sont fournis à l’installation (relance courtoise, relance ferme avec pénalités et PDF, mise en demeure) et restent entièrement paramétrables. Un tableau de bord dédié centralise l’encours, la balance âgée et le suivi des envois.

Installation

  1. Déposez le dossier dfdunning dans le répertoire /modules/ de votre boutique, ou installez l’archive ZIP depuis Modules > Gestionnaire de modules.
  2. Cliquez sur Installer. Le module crée ses tables, ses trois niveaux de relance par défaut, sa configuration initiale, un jeton de sécurité pour le cron et l’onglet d’administration sous Commandes > Relances impayés (DF Dunning).
  3. Videz le cache PrestaShop si nécessaire depuis Paramètres avancés > Performances.

Configuration

La configuration est accessible depuis Modules > Gestionnaire de modules > dfdunning > Configurer. Les principaux réglages sont :

  • Modules de paiement suivis : les modules dont les commandes ouvrent une créance. Par défaut, le virement bancaire (ps_wirepayment).
  • États de commande suivis : les états considérés comme « en attente de paiement ». Par défaut, l’état Paiement par virement en attente.
  • Délai de paiement : nombre de jours accordés avant échéance. Par défaut 30 jours.
  • Taux des pénalités de retard : taux annuel appliqué. Par défaut 12,15 % (taux directeur de la BCE majoré de 10 points).
  • Indemnité forfaitaire : montant fixe par facture en retard. Par défaut 40 €.
  • Intervalle minimum entre deux relances : garde-fou anti-spam, par défaut 3 jours.
  • Envoi automatique : active l’envoi des relances lors du passage du cron.
  • Copie cachée (BCC) : adresse recevant une copie de chaque relance, pour la trace comptable.

Le taux par défaut correspond au taux de refinancement de la BCE majoré de 10 points. Ce taux évolue : pensez à le réviser chaque semestre (janvier et juillet) dans la configuration.

Les trois niveaux de relance

Un niveau de relance définit quand et comment un client est relancé. Chaque niveau se paramètre depuis la configuration : position dans la séquence, délai de déclenchement (en jours après l’échéance), modèle d’e-mail, ajout ou non des pénalités, pièce jointe PDF, et activation.

Niveau 1 — Relance courtoise (J+7)

Un rappel simple, sans pénalités ni pièce jointe, envoyé 7 jours après l’échéance. Objectif : signaler l’oubli sans dégrader la relation commerciale.

Niveau 2 — Relance ferme (J+15)

Une relance plus ferme, avec le détail des pénalités de retard et l’indemnité forfaitaire, accompagnée d’une lettre PDF. Envoyée 15 jours après l’échéance.

Niveau 3 — Mise en demeure (J+30)

Une mise en demeure formelle rappelant les sommes dues, les pénalités et la référence à l’article 1231-6 du Code civil, avec lettre PDF et délai de règlement sous 8 jours. Envoyée 30 jours après l’échéance.

Les délais et le contenu de chaque niveau sont indicatifs : adaptez-les à votre politique de recouvrement et à vos conditions générales de vente.

Calcul des pénalités

Pour chaque créance en retard, le module calcule :

  • Les intérêts de retard : montant dû × (taux / 100) × (jours de retard / 365).
  • L’indemnité forfaitaire de recouvrement : un montant fixe par facture (40 € par défaut), dû dès le premier jour de retard.

Le montant dû est déterminé à partir du total payé et du total réellement encaissé sur la commande, ce qui prend en charge les paiements partiels. La base légale est constituée des articles L441-10 et D441-5 du Code de commerce pour l’indemnité et les pénalités, et de l’article 1231-6 du Code civil pour la mise en demeure.

Les modèles de courrier reflètent le cadre légal français en vigueur. Faites-les valider par votre conseil juridique et adaptez-les à votre activité avant la phase de mise en demeure. DataFirefly ne fournit pas de conseil juridique.

Automatisation par cron

La synchronisation des créances et l’envoi automatique des relances reposent sur un contrôleur front sécurisé par un jeton. L’URL complète, avec le jeton généré à l’installation, est affichée dans l’écran de configuration, prête à copier. Elle a la forme suivante :

https://votreboutique.tld/index.php?fc=module&module=dfdunning&controller=cron&token=VOTRE_TOKEN

Programmez un appel quotidien, par exemple à 7 h du matin, via la tâche planifiée (crontab) de votre serveur :

0 7 * * * curl -s "https://votreboutique.tld/index.php?fc=module&module=dfdunning&controller=cron&token=VOTRE_TOKEN"

À chaque passage, le module met à jour les créances (échéances, clôtures, exclusions) puis, si l’envoi automatique est activé, expédie les relances arrivées à échéance en respectant l’intervalle minimum configuré.

Le jeton protège l’accès au cron : sans lui, l’URL renvoie une erreur. Régénérez-le si vous pensez qu’il a été exposé.

Tableau de bord des créances

Le tableau de bord, sous Commandes > Relances impayés (DF Dunning), présente :

  • Six indicateurs clés : encours total, montant échu, créances en retard, dossiers ouverts, pénalités théoriques et relances du mois.
  • Une balance âgée répartissant l’encours par tranche : non échu, 1-30, 31-60, 61-90 et plus de 90 jours.
  • Une liste filtrable des créances (ouvertes, en retard, payées, exclues), avec pour chaque ligne des actions : envoyer un niveau de relance au choix, marquer comme payé, exclure ou réinclure, télécharger la lettre PDF.

Un dossier se clôt automatiquement lorsque la commande passe à un état payé, et s’exclut si la commande est annulée, remboursée ou en erreur de paiement.

Lettres PDF et e-mails

Les relances sont envoyées par e-mail (versions HTML et texte) et, selon le niveau, accompagnées d’une lettre PDF. Les courriers sont générés en français ou en anglais selon la langue de la commande. Les modèles utilisent des variables remplacées à l’envoi : prénom, nom, référence de commande, montant dû, date d’échéance, jours de retard, pénalités, indemnité forfaitaire, total dû, taux appliqué et nom de la boutique.

Les e-mails sont modifiables depuis Design > Traductions > Traductions des e-mails, langue par langue, comme tout e-mail PrestaShop.

FAQ

Quelles commandes sont relancées ?

Uniquement celles qui correspondent aux modules de paiement et aux états sélectionnés dans la configuration. Par défaut, les commandes payées par virement en attente de règlement.

Une commande partiellement payée est-elle gérée ?

Oui. Le montant dû tient compte des sommes déjà encaissées ; seule la part restante est relancée, et le dossier se clôt lorsque le solde est réglé.

Le module est-il compatible PrestaShop 9 et multiboutique ?

Oui. Les contrôleurs d’administration reposent sur ModuleAdminController pour la compatibilité PrestaShop 8 et 9, sans Composer, et le module gère le contexte multiboutique.

Puis-je déclencher une relance manuellement ?

Oui. Depuis le tableau de bord, vous pouvez envoyer immédiatement le niveau de votre choix pour une créance donnée, indépendamment du cron.

Cette page vous a-t-elle été utile ?

Toujours bloqué ? Contactez le support