Lifecycle · Article 2.6
Statut : Acompte payé — le travail peut commencer
L'acompte est arrivé (webhook Stripe ou confirmation manuelle). Clozo bascule le statut, met en file d'attente le PDF du reçu d'acompte et lance une tâche en arrière-plan pour pré-générer la facture finale. Vous pouvez commencer le travail.

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.

Pour la plupart des freelancers, c'est le moment où le projet commence officiellement. Vous avez un document signé, l'acompte sur votre compte bancaire, et votre client est engagé. L'interface de Clozo évolue subtilement : la bannière du tableau de bord indique désormais « Acompte payé — travaux en cours », le panneau d'actions affiche les boutons pertinents pour la phase de travail (marquer les jalons, émettre la facture finale, marquer comme terminé), et les planifications de rappel sont mises en pause.
Step by step
Acompte confirmé.
Soit le webhook Stripe arrive (automatique, ~2 sec après le succès de la carte), soit vous cliquez sur
Marquer l'acompte comme payé manuellementpour SEPA / espèces / hors canal (une note de référence et une date vous seront demandées).Le statut bascule sur
Acompte payé.Événement enregistré dans la Chronologie avec méthode de paiement et montant. Reçu (REC-) généré et envoyé automatiquement par e-mail.
Arrière-plan : pré-génération de la facture finale.
Aucune indication dans l'interface n'est nécessaire ; vous verrez le résultat lorsque vous cliquerez ensuite sur
Émettre la facture finale.Le statut avance automatiquement vers
En cours.Une fois
prepare_final_invoiceréussi, le statut avance. S'il échoue 5 fois, le statut reste àAcompte payéet un bouton de récupération apparaît.Commencez le travail.
Suivez le temps, atteignez les jalons, communiquez avec le client. Clozo ne suit pas le travail en cours (nous ne sommes pas un outil de gestion de projet) ; lorsque vous avez terminé, cliquez sur
Marquer comme terminé et émettre la facture finale.
Le badge ambre Acompte payé transite automatiquement vers le badge ambre En cours. La Chronologie affiche : événement de paiement de l'acompte, événement de génération du reçu, événement de pré-génération de la facture finale, événement de changement de statut. Le panneau d'actions se transforme : les boutons liés à l'acompte disparaissent, les boutons de phase de travail apparaissent (Émettre la facture finale, Marquer comme terminé, Suivre le temps sur ce projet).
Why this works this way
Un flux asynchrone se déclenche ici que la plupart des utilisateurs ne remarquent pas. Dès que l'événement acompte-payé se déclenche, Clozo met en file d'attente une tâche Celery prepare_final_invoice.delay() qui génère le PDF de la facture finale (Schlussrechnung) en arrière-plan et le stocke dans R2. Pourquoi pré-générer ? Parce que lorsque vous cliquerez ensuite sur Émettre la facture finale et que l'e-mail doit partir, la lourde génération de PDF est déjà faite — la tâche d'e-mail joint simplement le fichier pré-généré. Cela évite un délai de 30 à 60 secondes (et d'éventuels échecs de Gotenberg) au moment où le client attend l'e-mail.
Si prepare_final_invoice échoue (par ex., instabilité de Gotenberg), il réessaie 5 fois avec un backoff exponentiel. Si les cinq tentatives échouent, le devis reste à Acompte payé (plutôt que de transitionner automatiquement vers En cours), et un bouton Réessayer la facture finale apparaît dans le menu Actions. Sentry envoie également une alerte aux opérations.
Troubleshooting
Keep reading
Lifecycle
Status: Signed — legally binding, audit trail captured
The client clicked Sign. Clozo collects an eIDAS-compliant evidence stack, generates the signed Service Agreement PDF, fires confirmation emails to both parties, and queues the deposit invoice. The proposal is now a contract.
Lifecycle
Status: In work — deposit settled, project running, final invoice ready
You're between the deposit and the final payment. The final invoice is pre-rendered and ready to issue when you finish. Clozo doesn't track project progress here — you do — but it's listening for you to say `done`.
Proposals & Invoices
Marking a payment as paid manually — for SEPA, cash, wire, anything outside Stripe
When a payment lands outside the auto-detected channels (SEPA bank transfer, cash, foreign wire), use `Mark as paid manually` to record it. Clozo creates the receipt, fires confirmation emails, and preserves the audit trail.