Cerfa mécénat : mode de versement coché et dates repositionnées
- 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:
co-authored by
Claude Opus 5.5
parent
770a12e3aa
commit
c60bc11795
@@ -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.
@@ -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)
|
||||
|
||||
|
||||
|
||||
@@ -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.",
|
||||
|
||||
Reference in New Issue
Block a user