Proposals & Invoices · Article 5.10
Ce que vous pouvez modifier après `Envoyer` — retirer, renvoyer, modifier, amender
Après le clic sur `Envoyer`, le devis devient un artefact juridique et de nombreux champs se verrouillent. La bonne action dépend de la signature du client : retirer avant la signature, amender après.
Le cycle a deux états propres pour la modification : Brouillon (tout est éditable, pas d'obligation d'audit) et après signature (avenants seuls). La fine bande entre les deux — Envoyé et Vu — est l'endroit où surgissent la plupart des questions « j'ai fait une faute de frappe ». Les actions disponibles dépendent du statut exact.
Step by step
Identifiez le statut courant.
Vérifiez le badge sur le tableau de bord ou la bannière de détail du devis.
Si Brouillon
: modifiez librement dans l'assistant. Rien n'a été envoyé.
Si Envoyé ou Vu
: choisissez retirer ou renvoyer. - Faute de frappe ou changement de périmètre →
Retirer et modifier. L'ancien lien renvoie 404 ; nouveau brouillon prérenseigné. - L'e-mail n'est pas arrivé →Renvoyer. Même contenu, nouveau PIN.Si Signé et au-delà
: ouvrez l'assistant d'avenant à
/proposals/{id}/amend. Voir l'article 7.3.
le menu Actions change selon le statut. Sur Envoyé/Vu, vous voyez Renvoyer et Retirer et modifier. Sur Signé+, ceux-ci sont remplacés par Émettre la facture de solde, Marquer comme payé manuellement et Créer un avenant. La chronologie consigne chaque action avec horodatage et utilisateur.
Why this works this way
Le modèle de verrouillage. Quand vous cliquez sur Envoyer, plusieurs choses se produisent dans une transaction :
1. Le PDF du devis est rendu et téléversé sur R2 avec legal_hold activé.
2. Un numéro de devis séquentiel (PRO-2026-NNNN) est réservé contre votre compteur annuel (atomique par apps/proposals/models.py:DocumentCounter).
3. Le statut du devis bascule sur Envoyé et sent_at est défini.
4. Plusieurs champs sont marqués en lecture seule au niveau du modèle : number, language, currency, vat_breakdown, line_items_snapshot, client_address_snapshot. Ce sont les champs que la loi exige immuables sur une facture/un devis envoyé(e) au titre de l'art. 226 de la directive TVA UE et du §14 UStG.
Retirer et modifier (statut : Envoyé ou Vu). Disponible avant signature. Cliquez sur Actions → Retirer et modifier sur la page de détail du devis. Effet :
1. Le lien public d'origine est invalidé immédiatement. Quiconque le visite (avec l'ancien PIN ou sans) voit : « Ce devis a été retiré par l'expéditeur ». Le PDF d'origine reste dans vos Documents (legal_hold), mais le lien renvoie 404.
2. Un nouveau brouillon est créé avec toutes les valeurs courantes prérenseignées. Le devis d'origine passe au statut Retiré (terminal) sur la chronologie.
3. Le nouveau brouillon reçoit un nouveau numéro de devis quand vous cliquez de nouveau sur Envoyer. Les deux numéros sont conservés dans vos archives — la piste d'audit montre la chaîne (PRO-2026-0042 → retiré → PRO-2026-0043 envoyé).
Renvoyer (statut : Envoyé ou Vu). Disponible avant signature. Cliquez sur Actions → Renvoyer. Effet :
1. Un nouvel e-mail part avec un nouveau PIN à 4 chiffres. L'ancien PIN est invalidé. 2. Le devis lui-même est inchangé — même numéro, même contenu, même PDF. 3. Utile quand le client dit « je n'ai pas reçu l'e-mail » — le second exemplaire arrive souvent même si le premier a été marqué comme indésirable.
Après signature (statut : Signé et au-delà). Pas de modification du devis. Le seul chemin légitime pour changer le périmètre, le prix ou le calendrier est un avenant — un ordre de modification formel que le client signe séparément. Voir Section 7. Les avenants produisent leur propre chaîne de documents (addendum + storno + nouvelle facture de solde ou facture d'avoir selon le delta), préservant le contrat de prestation de services signé d'origine intact.
Pourquoi pas de raccourci « modifier et signer à nouveau » ? Parce qu'au titre du droit UE des contrats (et de l'effet juridique d'une signature électronique au sens de l'art. 25, par. 1 eIDAS), la signature qualifie le document tel qu'il a été signé. Modifier le devis après signature et signer à nouveau soit (a) invaliderait la preuve de signature d'origine, soit (b) serait une réécriture silencieuse contraire à l'immutabilité de l'art. 226. Les avenants sont la voie conforme à l'UE : ils préservent l'original ET enregistrent le changement ET obtiennent une nouvelle signature sur le changement.
La matrice complète de disponibilité des actions :
| Statut | Retirer | Renvoyer | Modifier des champs | Amender | Supprimer |
|---|---|---|---|---|---|
| Brouillon | s/o | s/o | Tous les champs | s/o | Oui (suppression définitive) |
| Envoyé | Oui (→ Retiré) | Oui (nouveau PIN) | Non | Non | Non |
| Vu | Oui (→ Retiré) | Oui (nouveau PIN) | Non | Non | Non |
| Signé | Non | Non | Non | Oui | Non |
| Acompte payé | Non | Non | Non | Oui | Non |
En cours (in_work) | Non | Non | Non | Oui | Non — HTTP 409 `in_work_requires_amendment` (au titre de [D-125]) |
| En attente du paiement final / Payé / Achevé | Non | Non | Non | Oui | Non |
| Refusé / Expiré / Retiré | Non | Non | Non (terminal) | Non | Non |
Troubleshooting
Keep reading
Lifecycle
Status: Sent — the proposal is in your client's inbox
You've clicked `Send`. The PDF is rendered, the email is on its way, the proposal number is assigned, and the audit trail starts here. Now you wait — until the client opens it (`Viewed`) or signs (`Signed`).
Lifecycle
Status: Viewed — your client has opened the link
The client clicked the email button, entered the PIN correctly, and saw the proposal. Status flips from `Sent` to `Viewed` automatically. From here, the next state is `Signed` (or `Declined`).
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.
Proposals & Invoices
Creating an amendment (the 4-step wizard)
The amendment wizard at `/proposals/{id}/amend` walks you through line items, reason, preview, and email — in that order. Five minutes for a simple change, ten minutes for a complex one. The client doesn't see anything until you click Send on Step 4.
Proposals & Invoices
When to use an amendment (vs a new proposal vs withdraw)
Three paths exist to change a deal: amend it, withdraw and resend, or start a new proposal. Pick the wrong one and you'll either break the audit trail or scare the client. Here's the decision tree.