Le WordPress d'aujourd'hui, décodé pour les développeurs

Extensions

Un module de dons associatif : générer un reçu fiscal Cerfa 11580

Construire, pour une association reconnue d'intérêt général, un module qui génère automatiquement le justificatif fiscal Cerfa 11580 après paiement.

Par WordPress Développement • 12 décembre 2020 • 5 min de lecture • Aucun commentaire
Un module de dons associatif : générer un reçu fiscal Cerfa 11580

66 % du montant du don pour un organisme d’intérêt général classique, 75 % pour certains organismes d’aide aux personnes en difficulté : ce taux de réduction d’impôt doit figurer noir sur blanc sur le justificatif remis au donateur, faute de quoi le reçu ne peut pas servir de pièce justificative auprès de l’administration fiscale. Ce point, en apparence anecdotique, a occupé une bonne partie du cahier des charges d’un module de dons développé pour une association d’aide alimentaire reconnue d’intérêt général.

Le formulaire Cerfa 11580 (« Reçu au titre des dons à certains organismes d’intérêt général ») n’est pas un simple PDF récapitulatif : c’est un document normé, dont la structure et les mentions obligatoires sont fixées par l’administration. Le générer automatiquement après chaque don suppose de reproduire fidèlement cette structure, avec les bonnes données, au bon moment du parcours de paiement.

Ce que le Cerfa 11580 exige précisément

Le formulaire impose plusieurs mentions obligatoires : la dénomination et l’adresse de l’organisme bénéficiaire, son objet, la mention explicite du régime fiscal applicable, l’identité complète du donateur, le montant et la date du don, ainsi que la forme de celui-ci (numéraire, chèque, virement). Une case précise si le don ouvre droit à une réduction d’impôt sur le revenu ou sur l’IFI, ce qui n’est pas toujours identique selon la nature de l’organisme.

Pour l’association concernée, reconnue d’intérêt général au sens de l’article 200 du Code général des impôts, le taux applicable était de 66 %, avec un plafond de 20 % du revenu imposable — des informations à reproduire sur le document sans erreur, sous peine de fragiliser juridiquement le reçu émis.

Générer le PDF après confirmation du paiement

Le reçu ne doit jamais être produit à la simple soumission du formulaire de don : seul un paiement confirmé justifie son émission. Le déclenchement se fait donc sur un hook personnalisé, appelé uniquement après vérification du statut de paiement auprès du prestataire :

L'essentiel à retenir : Le formulaire Cerfa 11580 impose des mentions obligatoires précises ; Le reçu se génère après confirmation du paiement, jamais avant ; Le PDF est stocké hors des uploads publics du site

Structurer le module autour d’un CPT don

Chaque don est enregistré comme une entrée d’un type de contenu personnalisé, avec les métadonnées nécessaires à la génération du reçu :

register_post_type( 'don_asso', array(
    'label'        => 'Dons',
    'public'       => false,
    'show_ui'      => true,
    'show_in_menu' => true,
    'supports'     => array( 'title' ),
    'capability_type' => 'post',
) );

register_post_meta( 'don_asso', '_montant_don', array(
    'type'         => 'number',
    'single'       => true,
    'show_in_rest' => false,
) );

register_post_meta( 'don_asso', '_recu_pdf_genere', array(
    'type'         => 'boolean',
    'single'       => true,
    'show_in_rest' => false,
) );

La génération du PDF s’appuie sur la bibliothèque dompdf/dompdf, installée via Composer, à partir d’un gabarit HTML reproduisant fidèlement la mise en page du Cerfa 11580 : en-tête de l’organisme, tableau des informations du don, mentions légales en pied de page.

Stocker le reçu hors des uploads publics

Un reçu fiscal contient des données personnelles (nom, adresse, montant du don) qui n’ont rien à faire dans le dossier wp-content/uploads accessible publiquement par une simple devinette d’URL. Le PDF est généré dans un répertoire protégé, en dehors de la racine web quand c’est possible sur l’hébergement, et servi via un point d’entrée qui vérifie l’identité du donateur :

  • Génération dans un dossier wp-content/uploads/recus-prives/ protégé par un fichier .htaccess refusant l’accès direct.
  • Téléchargement exposé via une action admin-post.php qui vérifie un nonce et l’identité du donateur avant de lire le fichier.
  • Suppression programmée des PDF au-delà de la durée de conservation fiscale applicable (généralement liée à la prescription de trois ans, prolongée par prudence).

Notifier le donateur par email

Le reçu est joint à un email de remerciement envoyé automatiquement, avec un lien de téléchargement de secours en cas de souci de pièce jointe :

  1. Confirmation du paiement reçue depuis le prestataire de paiement.
  2. Génération du PDF Cerfa 11580 à partir des métadonnées du don.
  3. Envoi de l’email avec le PDF en pièce jointe via wp_mail().
  4. Enregistrement du reçu dans l’espace personnel du donateur, s’il en existe un.

Un module de dons n’est jamais qu’un module de paiement : c’est aussi, souvent, un générateur de document fiscal engageant — autant le traiter avec le même sérieux que la partie paiement elle-même.

Notre verdict

Automatiser l’émission du Cerfa 11580 a demandé plus de rigueur documentaire que de complexité technique : la difficulté n’était pas de générer un PDF, mais de s’assurer que chaque mention obligatoire y figure correctement, au bon moment du parcours, avec des données protégées comme il se doit. Pour une association qui dépend de la confiance de ses donateurs, ce niveau de soin sur un document aussi sensible qu’un justificatif fiscal fait clairement partie du produit, pas d’un détail technique secondaire à négliger.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Partager :

À propos de l'auteur

WordPress Développement

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi