Proposals & Invoices · Article 5.10
Qué puede cambiar después de `Enviar` — retirar, reenviar, editar, enmendar
Después de hacer clic en `Enviar`, la propuesta se convierte en un artefacto legal y muchos campos se bloquean. La acción correcta depende de si el cliente ya ha firmado: retire antes de la firma, enmiende después.
El ciclo de vida tiene dos estados claros para la edición: Borrador (todo editable, sin obligación de auditoría) y post-firmado (solo Enmiendas). La franja intermedia — Enviado y Visto — es donde surgen la mayoría de las preguntas de «cometí un error tipográfico». Las acciones disponibles dependen del estado exacto.
Step by step
Identifique el estado actual.
Compruebe la insignia en el panel o el banner del detalle de la propuesta.
Si es Borrador
: edite el asistente libremente. Nada ha sido enviado.
Si es Enviada o Vista
: elija retirar o reenviar. - Error tipográfico o cambio de alcance →
Retirar y editar. El enlace antiguo devuelve 404; nuevo borrador prerellenado. - El correo no llegó →Reenviar. Mismo contenido, nuevo PIN.Si es Firmada en adelante
: abra el asistente de Enmienda en
/proposals/{id}/amend. Consulte el artículo 7.3.
El menú de Acciones cambia según el estado. En Enviada/Vista, ve Reenviar y Retirar y editar. En Firmada+, esas se reemplazan por Emitir factura final, Marcar como pagada manualmente y Crear enmienda. La Línea de tiempo registra cada acción con sello de tiempo y usuario.
Why this works this way
El modelo de bloqueo. Cuando hace clic en Enviar, varias cosas ocurren en una transacción:
1. El PDF de la propuesta se renderiza y se carga en R2 con legal_hold habilitado.
2. Se reserva un número de propuesta secuencial (PRO-2026-NNNN) contra su contador anual (atómico por apps/proposals/models.py:DocumentCounter).
3. El estado de la propuesta cambia a Enviada y se establece sent_at.
4. Varios campos se marcan como de solo lectura en la capa del modelo: number, language, currency, vat_breakdown, line_items_snapshot, client_address_snapshot. Estos son los campos que la ley exige que sean inmutables en una factura/propuesta enviada según el Art. 226 de la Directiva del IVA de la UE y el §14 UStG.
Retirar y editar (estado: Enviada o Vista). Disponible antes de la firma. Haga clic en Acciones → Retirar y editar en la página de detalle de la propuesta. Efecto:
1. El enlace público original se invalida inmediatamente. Cualquiera que lo visite (con el PIN antiguo o sin él) ve: «Esta propuesta ha sido retirada por el remitente». El PDF original permanece en sus Documentos (legal_hold), pero el enlace devuelve 404.
2. Se crea un nuevo borrador con todos los valores actuales prellenados. La propuesta original pasa al estado Retirada (terminal) en la Línea de tiempo.
3. El nuevo borrador obtiene un número de propuesta nuevo cuando vuelve a hacer clic en Enviar. Ambos números se conservan en sus registros — el registro de auditoría muestra la cadena (PRO-2026-0042 → retirada → PRO-2026-0043 enviada).
Reenviar (estado: Enviada o Vista). Disponible antes de la firma. Haga clic en Acciones → Reenviar. Efecto:
1. Se envía un nuevo correo con un nuevo PIN de 4 dígitos. El PIN antiguo se invalida. 2. La propuesta en sí no cambia — mismo número, mismo contenido, mismo PDF. 3. Útil cuando el cliente dice «no recibí el correo» — la segunda copia a menudo llega incluso si la primera fue a spam.
Después de la firma (estado: Firmada en adelante). No hay ediciones a la propuesta. La única vía legítima para cambiar el alcance, el precio o el plazo es una Enmienda — una orden de cambio formal que el cliente firma por separado. Consulte la Sección 7. Las enmiendas producen su propia cadena de documentos (addendum + storno + nueva factura final o nota de crédito según el delta), preservando intacto el Contrato de servicios firmado original.
¿Por qué no hay un atajo de «editar y volver a firmar»? Porque bajo el derecho contractual de la UE y el Art. 25(1) del eIDAS (efecto jurídico de una firma electrónica), modificar un acuerdo firmado después de la firma invalidaría la cadena de auditoría. La IP, el User-Agent, la marca de tiempo del servidor y el nombre escrito del firmante capturados en el momento de la firma hacen referencia al estado del documento en ese momento; reescribir el documento silenciosamente dejaría huérfana esa evidencia. También fallaría la inmutabilidad del Art. 226 para la factura correspondiente. Las enmiendas son la vía conforme a la UE: preservan el original Y registran el cambio Y obtienen una nueva firma sobre el cambio.
La matriz completa de disponibilidad de acciones:
| Estado | Retirar | Reenviar | Editar campos | Enmendar | Eliminar |
|---|---|---|---|---|---|
| Borrador | n/a | n/a | Todos los campos | n/a | Sí (eliminación permanente) |
| Enviada | Sí (→ Retirada) | Sí (nuevo PIN) | No | No | No |
| Vista | Sí (→ Retirada) | Sí (nuevo PIN) | No | No | No |
| Firmada | No | No | No | Sí | No |
| Anticipo pagado | No | No | No | Sí | No (eliminación lógica bloqueada de todos modos por la regla de no-dinero-pendiente, pero legal) |
| En trabajo | No | No | No | Sí (use Δ_REEMBOLSO para reembolso) | No — HTTP 409 `in_work_requires_amendment` (según [D-125]) |
| Esperando pago final / Pagada / Completada | No | No | No | Sí | No |
| Rechazada / Caducada / Retirada | No | No | No (terminal) | No | No |
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.