66,25 % du montant du don est déductible de l’impôt sur le revenu pour un don à une association d’intérêt général : ce taux devait apparaître explicitement sur chaque reçu fiscal généré depuis le formulaire de don d’une petite association, construit avec Elementor Pro Forms. L’association ne disposait pas de budget pour un logiciel de gestion associative complet, seulement pour un formulaire de don en ligne relié à Stripe et un besoin ponctuel de justificatif fiscal automatisé.
La contrainte principale : générer un reçu fiscal conforme au format habituellement attendu (identité de l’organisme, mention de l’intérêt général, montant en chiffres et en lettres, numéro séquentiel unique), sans installer de plugin dédié à la comptabilité associative, jugé disproportionné pour le volume de dons traité.
Le déclencheur : la validation du formulaire de don
Comme souvent avec Elementor Pro Forms, le point d’entrée est le hook elementor_pro/forms/new_record, mais ici combiné à une vérification préalable que le paiement Stripe associé a bien été confirmé, pour ne jamais émettre de reçu pour un don non abouti.
add_action('elementor_pro/forms/new_record', function ($record, $handler) {
if ($record->get_form_settings('form_name') !== 'formulaire_don') {
return;
}
$fields = $record->get('fields');
$montant = (float) ($fields['montant']['value'] ?? 0);
$email = $fields['email']['value'] ?? '';
$nom = $fields['nom']['value'] ?? '';
if ($montant <= 0 || empty($email)) {
return;
}
$numero = generer_numero_recu_sequentiel();
$chemin_pdf = generer_pdf_recu_fiscal($numero, $nom, $montant);
wp_mail($email, 'Votre reçu fiscal', 'Merci pour votre don, reçu joint.', [], [$chemin_pdf]);
}, 10, 2);
La numérotation séquentielle, le vrai point sensible
Un reçu fiscal doit porter un numéro unique et séquentiel, sans trou ni doublon, y compris en cas de forte simultanéité de dons (campagne de fin d’année). Une simple option WordPress incrémentée à la volée expose à des conditions de concurrence si deux dons arrivent à la même seconde. La solution retenue s’appuie sur une requête SQL atomique plutôt que sur une lecture puis écriture séparée.

function generer_numero_recu_sequentiel(): int {
global $wpdb;
$wpdb->query(
"INSERT INTO {$wpdb->prefix}compteurs_recus (nom, valeur)
VALUES ('recu_fiscal', 1)
ON DUPLICATE KEY UPDATE valeur = valeur + 1"
);
return (int) $wpdb->get_var(
"SELECT valeur FROM {$wpdb->prefix}compteurs_recus WHERE nom = 'recu_fiscal'"
);
}
Générer le PDF sans plugin de gestion associative
La génération du PDF s’appuie sur une bibliothèque légère installée via Composer dans un plugin maison dédié, avec un gabarit HTML simple converti en PDF, plutôt qu’un service externe payant, pour garder le contrôle total sur la mise en forme et rester conforme aux mentions obligatoires attendues sur ce type de justificatif (identité et objet de l’association, mention de la loi applicable, mode de versement).
- Nom et objet de l’association clairement affichés en en-tête
- Montant du don en chiffres et en toutes lettres
- Numéro séquentiel unique, jamais réutilisé même en cas d’annulation
- Date du don et mode de versement (carte bancaire via Stripe)
Ce que ce dispositif ne remplace pas
Cette automatisation ne se substitue ni à la déclaration fiscale annuelle de l’association auprès de l’administration, ni à sa comptabilité complète, qui reste tenue par ailleurs selon les obligations propres à chaque structure. Le reçu généré ici est un justificatif transmis au donateur, pas un document comptable interne.
Un reçu fiscal mal numéroté ou envoyé en retard coûte plus cher en confiance qu’en argent : pour une petite association, l’automatiser correctement vaut largement l’effort de développement initial.
En résumé
Générer un reçu fiscal PDF depuis Elementor Pro Forms est tout à fait accessible sans plugin de gestion associative dédié, à condition de sécuriser la numérotation séquentielle et de vérifier la confirmation réelle du paiement avant émission. Le coût de développement reste modéré comparé à une licence annuelle de logiciel spécialisé, pour un volume de dons limité.