Refunds & Notifications · Article 6.6
E-mail : « Paiement reçu — devis terminé »
L'e-mail de clôture du parcours standard sans incident. Envoyé lorsque le paiement final est reçu ; les deux parties reçoivent une confirmation et le reçu final.
Where this fits in the lifecycle
Draft
Only you can see this. Edit anything.

Sent
Email landed in the client's inbox.

Viewed
Client opened the link — awaiting decision.

Signed
Legally binding. Audit trail captured.

Deposit paid
Money in escrow. You can start work.

In work
Project running. Final invoice ready when you're done.

Paid
Final invoice settled. Just one click left.

Completed
Closed. Archived. You did the thing.

L'e-mail de paiement final est la clôture formelle de la mission. À partir de là, le devis est au statut Paid et (une fois que vous confirmez l'achèvement) passe à l'état terminal Completed.
Step by step
Paiement final confirmé.
Soit le webhook Stripe arrive, soit vous cliquez sur
Mark final payment as paid manually.Le PDF du reçu est généré.
REC-2026-NNNN-final est généré et téléversé dans R2.
L'e-mail est envoyé.
Vous et le client recevez tous les deux l'e-mail avec le reçu en pièce jointe.
Le statut passe à Paid. La chronologie affiche « Paiement final confirmé via [méthode] » et « Reçu envoyé ». Un nouveau bouton Mark as completed apparaît dans le menu Actions — en cliquant dessus, le devis passe à l'état terminal Completed.
Why this works this way
Les reçus sont séparés par étape de TVA — si l'acompte a été payé à un taux de TVA et le paiement final à un autre (rare, cela ne se produit que si votre régime fiscal a changé en cours de projet), chaque étape reçoit son propre PDF de reçu. La plupart des projets génèrent deux reçus au total : un pour l'acompte, un pour le paiement final. Les PDF sont immuables dans R2 — si vous devez en réémettre un, cliquez sur Regenerate receipt et une nouvelle révision est créée avec un suffixe de version.
Troubleshooting
Keep reading
Lifecycle
Status: Awaiting final payment, then Paid
You've issued the final invoice. The client now owes the remaining balance (full amount minus the deposit they already paid). When the money lands, status flips to `Paid` and the final receipt is generated.
Lifecycle
Status: Completed — the proposal lifecycle is done
You've delivered the work, the client has paid, you're marking the project officially closed. `Completed` is a terminal state: no more emails, no more status changes (except Amendments which create branches). The proposal now lives in your archive.
Refunds & Notifications
Refresh status — pull-based sync when the Stripe webhook didn't land
Webhooks aren't perfect. When a credit note appears stuck in `requested` despite Stripe having processed the refund, click `Refresh status` to pull the current state from Stripe directly. Same transition logic as the webhook; no risk of double-firing side-effects.