Skip to main content

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

  1. Identifique el estado actual.

    Compruebe la insignia en el panel o el banner del detalle de la propuesta.

  2. Si es Borrador

    : edite el asistente libremente. Nada ha sido enviado.

  3. 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.

  4. 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:

EstadoRetirarReenviarEditar camposEnmendarEliminar
Borradorn/an/aTodos los camposn/aSí (eliminación permanente)
EnviadaSí (→ Retirada)Sí (nuevo PIN)NoNoNo
VistaSí (→ Retirada)Sí (nuevo PIN)NoNoNo
FirmadaNoNoNoNo
Anticipo pagadoNoNoNoNo (eliminación lógica bloqueada de todos modos por la regla de no-dinero-pendiente, pero legal)
En trabajoNoNoNoSí (use Δ_REEMBOLSO para reembolso)No — HTTP 409 `in_work_requires_amendment` (según [D-125])
Esperando pago final / Pagada / CompletadaNoNoNoNo
Rechazada / Caducada / RetiradaNoNoNo (terminal)NoNo

Troubleshooting

Keep reading