Cerfa mécénat : mode de versement coché et dates repositionnées
ci-cd / build-backend (push) Successful in 28s
ci-cd / build-frontend (push) Successful in 17s
ci-cd / deploy (push) Successful in 12s

- nouveau modèle PDF du cerfa
- case « Virement, prélèvement, carte bancaire » cochée (paiement SumUp)
- date du versement et date de signature repositionnées
- message de confirmation du paiement : annonce l'email de confirmation
  et le reçu fiscal pour le mécénat

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
AdamThomas
2026-10-03 16:34:22 +02:00
co-authored by Claude Opus 5.5
parent 770a12e3aa
commit c60bc11795
4 changed files with 6 additions and 3 deletions
+1
View File
@@ -851,6 +851,7 @@ Aucune dépendance locale requise hors Docker.
| 34 | Numéro d'ordre unique sur chaque reçu fiscal mécénat (`Volunteer.mecenat_receipt_number`, `202600001`…, migration `0020`), attribué au paiement ou au premier export puis figé | à valider |
| 35 | Type de paiement à montant libre (`FormPaymentOption.free_amount`, migration `0021`) : case « Montant libre » sur l'écran Inscriptions, montant configuré = minimum, saisie du montant sur le formulaire public (validée côté client et serveur, 10 000 € max) — pensé pour le mécénat | à valider |
| 36 | Écran Inscriptions : état « Actif / Inactif » des types de paiement (`SumUpStatus`, `FormBuilderPage.tsx`) — sans identifiants SumUp ou sans type de paiement, le formulaire public n'affiche qu'une case « cotisation » (ni choix du type, ni étape mécénat, ni paiement en ligne), ce que rien ne signalait | à valider |
| 37 | Cerfa mécénat : nouveau modèle PDF, date du versement repositionnée, date de signature remplie (date du paiement), case « Virement, prélèvement, carte bancaire » cochée (paiement SumUp) ; message de confirmation du paiement annonçant l'email et le reçu fiscal | à valider |
**Reste hors périmètre** (modèle prêt à les accueillir) : SMS, constructeur
de formulaire, pointage sur site, IA. Frontend : squelette + 6 écrans +
Binary file not shown.
+4 -2
View File
@@ -54,11 +54,12 @@ _CITY = _Field(x=232, bottom=295.5, max_width=310, font_size=9)
_COUNTRY = _Field(x=67, bottom=310.5, max_width=125, font_size=9)
_AMOUNT = _Field(x=44, bottom=365.2, max_width=110, font_size=9)
_AMOUNT_IN_WORDS = _Field(x=356, bottom=363.1, max_width=190, font_size=8)
_PAYMENT_DATE = _Field(x=184, bottom=385, max_width=76, font_size=9)
_PAYMENT_DATE = _Field(x=264, bottom=385, max_width=76, font_size=9)
# Page 1 : case « Numéro d'ordre du reçu » (x 418,7 → 566,8, haut 111 → bas
# 128,2), texte centré dedans (`x` = centre de la case).
_RECEIPT_NUMBER = _Field(x=492.75, bottom=124.0, max_width=140, font_size=11, bold=True)
_CERFA_DATE = _Field(x=320, bottom=640, max_width=76, font_size=9)
_CERFA_DATE = _Field(x=320, bottom=630, max_width=76, font_size=9)
_CHECK_VIRMENT = _Field(x=291.8, bottom=592.1, max_width=10, font_size=8)
@dataclass(frozen=True)
@@ -136,6 +137,7 @@ def _overlay_page(receipt: MecenatReceipt) -> PageObject:
_draw(c, amount_in_words(receipt.amount), _AMOUNT_IN_WORDS)
_draw(c, receipt.payment_date.strftime("%d/%m/%Y"), _PAYMENT_DATE)
_draw(c, receipt.payment_date.strftime("%d/%m/%Y"), _CERFA_DATE)
_draw(c, "X", _CHECK_VIRMENT)
return _finish(c, buffer)
+1 -1
View File
@@ -467,7 +467,7 @@
"publicForm.confirmation.title": "Confirmation du paiement",
"publicForm.confirmation.pending": "Vérification du paiement en cours…",
"publicForm.confirmation.paid": "Merci ! Cotisation « {label} » de {amount} € payée. Ton inscription est enregistrée.",
"publicForm.confirmation.paid": "Merci ! Cotisation « {label} » de {amount} € payée. Ton inscription est enregistrée. Tu vas recevoir un mail de confirmation de ton inscription et ton reçu fiscal si tu as choisi le mécénat.",
"publicForm.confirmation.failed": "Le paiement n'a pas abouti (refusé ou expiré).",
"form.closed": "Les inscriptions sont actuellement fermées.",
"form.captcha_failed": "Vérification anti-robot invalide, réessaie.",