Skip to main content

Proposals & Invoices · Article 5.5

El flujo de firma electrónica — qué ocurre cuando su cliente hace clic en Firmar

Un solo clic escribe una fila SignatureAudit (nombre escrito, comprobación de posesión del correo mediante PIN, IP, User-Agent, registro de consentimiento), genera el PDF del Contrato de servicios, envía correos de confirmación y pone en cola la factura de anticipo. El resultado es una Firma Electrónica Simple (SES) eIDAS según el Art. 3(10), respaldada por un registro de auditoría de 10 años.

El evento de firma es el momento en que su propuesta deja de ser una oferta y se convierte en un contrato vinculante. Detrás del único botón Firmar hay una secuencia de capturas de auditoría que, tomadas en conjunto, producen una Firma Electrónica Simple (SES) según el Art. 3(10) del eIDAS. No es una Firma Electrónica Avanzada (FEA) — el proceso de firma de Clozo no vincula criptográficamente la firma al contenido del documento como exige el Art. 26(d), y no hay ningún campo pdf_hash en la fila SignatureAudit. Lo que hace que una firma de Clozo sea defendible es el registro de auditoría, no la clasificación de la firma: el Art. 25(1) da a la SES su piso de no discriminación, y la rica fila de auditoría (nombre escrito, posesión del correo mediante PIN, IP, User-Agent, cabeceras de solicitud completas, registro de consentimiento, conservados 10 años) es lo que lleva el peso probatorio en cualquier disputa específica según el derecho civil nacional.

Step by step

  1. El cliente abre el correo y hace clic en Revisar y firmar.

    Aterrizan en la página pública de la propuesta en app.useclozo.com/p/{slug}, protegida por el PIN de 4 dígitos.

  2. Introducen el PIN.

    5 intentos incorrectos dentro de una ventana deslizante de 1 hora bloquean el slug de la propuesta durante 24 horas (bloqueo por slug); también aplica un límite de tasa separado de 10 solicitudes/minuto por IP. La entrada correcta restablece el contador.

  3. Revisan las líneas y los totales.

    El botón Firmar está al final de la página; un botón Rechazar está junto a él.

  4. Hacen clic en Firmar.

    Un modal solicita su nombre completo escrito y una casilla de consentimiento: «Confirmo que estoy autorizado a firmar este contrato en nombre de [nombre del cliente] / para mí mismo.»

  5. El servidor escribe la fila SignatureAudit (en menos de 200 ms).

    Identidad afirmada, posesión mediante PIN verificada previamente, IP/UA/raw_event registrado, consentimiento registrado, PDF firmado renderizado con sello de tiempo integrado.

  6. El estado cambia, los documentos aparecen, los correos se envían.

    Estado de la propuesta → Firmada; AGR-2026-NNNN aparece en su menú desplegable de Documentos; ambas partes reciben un correo de confirmación; la factura de anticipo (DEP-) se genera en ~5 segundos.

La insignia Firmada verde reemplaza al Vista índigo. La Línea de tiempo gana un evento «Firmada a las HH:MM UTC por [nombre del cliente]», expandible para mostrar IP, User-Agent, país y la referencia de la fila SignatureAudit. El menú desplegable de Documentos gana AGR- y DEP-. Un correo de confirmación llega a su bandeja de entrada con el AGR adjunto. Los botones de acción cambian: Retirar desaparece (los contratos firmados no pueden deshacerse — solo las Enmiendas pueden cambiar el alcance); aparecen Marcar anticipo como pagado manualmente, Reenviar factura de anticipo e Emitir factura final (en gris hasta que llegue el anticipo).

Why this works this way

Niveles de eIDAS de un vistazo (del Reglamento de la UE 910/2014):

NivelArtículoQué requiereDónde encaja Clozo
Firma Electrónica Simple (SES)Art. 3(10)«Datos en formato electrónico adjuntos a otros datos electrónicos o asociados lógicamente a ellos y que usa el firmante para firmar» — nombre escrito, clic para firmar, casilla marcadaLo que emite Clozo, respaldado por el registro de auditoría descrito a continuación
Firma Electrónica Avanzada (FEA)Art. 3(11), Art. 26Cuatro condiciones acumulativas: vinculada de forma unívoca, capaz de identificar al firmante, bajo control exclusivo con alta confianza, e infalsificable (el Art. 26(d) requiere un sello criptográfico que vincule la firma al documento)Por encima del nivel de Clozo — requeriría el trabajo de sellado de tiempo de confianza RFC 3161 de la Fase 4 [D-111]
Firma Electrónica Cualificada (FEC)Art. 3(12), Art. 28FEA + certificado cualificado de un Prestador de Servicios de Confianza en la Lista de Confianza de la UE + dispositivo de creación de firma cualificada (token de hardware)Requiere Bundesdruckerei (DE), FNMT (ES), Certinomis o Universign (FR), ARSS (IT), etc. — no es lo que emite Clozo

Según el Art. 25(1), una SES de Clozo «no podrá ser rechazada como prueba en procedimientos judiciales por el único motivo de que sea de forma electrónica o de que no cumpla los requisitos de las firmas electrónicas cualificadas». La estricta equivalencia según el Art. 25(2) («tendrá efectos jurídicos equivalentes a una firma manuscrita») solo aplica a FEC, no a SES o FEA por sí solas. Para el trabajo comercial diario de autónomos — desarrollo de software, diseño, consultoría, fotografía, redacción, formación, traducción — los tribunales de DE / FR / ES / NL / PL / IT aceptan habitualmente SES + registro de auditoría como prueba suficiente de consenso según el derecho contractual nacional. Las excepciones específicas (transferencias inmobiliarias notariadas, ciertos productos financieros regulados, presentaciones judiciales en algunos Estados miembros, contratos del sector público según el Art. 27 donde el organismo receptor exige expresamente FEA o FEC) requieren los canales formales.

La fila SignatureAudit de cuatro partes, capturada en una transacción de base de datos atómica en el momento de la firma (apps/proposals/models.py::SignatureAudit):

1. Afirmación de identidad: el nombre escrito del firmante y la dirección de correo que recibió la propuesta deben coincidir con el registro del cliente registrado (signer_name, signer_email). La discrepancia bloquea la firma. 2. Prueba de posesión: el código de acceso de 4 dígitos (PIN) se introdujo correctamente antes de que se desbloqueara la superficie de firma, demostrando acceso a la bandeja de entrada de correo donde se entregó. Según el código en ejecución (refuerzo HIGH-BE-002, auditoría 2026-04-28): el endpoint de propuesta pública aplica un bloqueo por slug — 5 intentos incorrectos de PIN dentro de una ventana deslizante de 1 hora bloquean el slug de la propuesta durante 24 horas — junto con un límite de tasa separado de 10 solicitudes/minuto por IP en el mismo endpoint. Una entrada correcta del PIN restablece el contador de fallos. La puerta de PIN de enmienda usa el mismo patrón de 5-fallos-→-bloqueo-24h en su propia clave de slug. 3. Contexto técnico: ip_address (GenericIPAddressField), cadena user_agent, cabeceras de solicitud completas en raw_event (JSONB) y la marca de tiempo signed_at — todos escritos en una transacción. 4. Registro de consentimiento: el campo consent captura la confirmación afirmativa de que el firmante está autorizado a vincular a la parte nombrada («Confirmo que estoy autorizado a firmar este contrato en nombre de [nombre del cliente] / para mí mismo.»).

Este es el stack SES + registro de auditoría definido en [A-007] (DECISIONS.md): «Firma electrónica: eIDAS SES (Firma Electrónica Simple) — clic para firmar + confirmación por correo. Almacenar IP + sello de tiempo + cadena de correo durante 10 años.» Note lo que no está en los campos SignatureAudit: no hay pdf_hash, no hay llamada hashlib.sha256 en el código de firma, no hay integración con prestador de servicios de confianza cualificado, no hay flujo de tarjeta inteligente o token de hardware. Estos son los elementos que distinguirían la FEA (infalsificabilidad del Art. 26(d)) y la FEC (certificado cualificado del Art. 28). La integridad a nivel de almacenamiento se proporciona por separado: el PDF del Contrato de servicios renderizado se escribe en Cloudflare R2 (región UE) con el indicador legal_hold, que evita la sobrescritura o eliminación dentro de la ventana de retención — necesario pero distinto de una vinculación criptográfica firma-documento.

Qué es FEC y cuándo la necesita. La FEC requiere un certificado cualificado de un Prestador de Servicios de Confianza en la Lista de Confianza de la UE — en la práctica, obtenga un token USB o tarjeta inteligente de su PSC nacional, instale su middleware y la firma se produce a través de ese hardware. Son ~€50–200/año por firmante y tardará en configurarse. Casos de uso: actos notariados inmobiliarios (BGB §311b en DE junto con la escritura notarial; normas comparables en otros Estados miembros), documentos de constitución de empresas en DE/AT/FR, ciertos productos financieros regulados, presentaciones judiciales en IT/ES/PT, y contratación pública del sector público según el Art. 27 donde el organismo receptor exige FEA o FEC. Clozo no emite FEC. Si genuinamente necesita FEC, el patrón recomendado es usar Clozo como la capa de alcance comercial (líneas, anticipo, condiciones de pago, registro de auditoría de la negociación) y que el acto formal se ejecute a través de su PSC nacional usando su dispositivo de firma cualificada.

Retención de 10 años: el acuerdo firmado, la fila SignatureAudit y el renderizado original del PDF se almacenan en Cloudflare R2 con el indicador legal_hold. Incluso usted no puede eliminarlos dentro de la ventana de retención. Esto es exigido por el §147 GoBD AO (Alemania), Wet OB Art. 52 (Países Bajos), CGI Art. L102 B (Francia), Codice Civile Art. 2220 (Italia) y normas paralelas en otros Estados de la UE. Las solicitudes de supresión según el Art. 17 del RGPD se respetan dentro de los límites del Art. 17(3)(b), que preserva la retención requerida para el cumplimiento de una obligación legal.

Troubleshooting

Keep reading

El flujo de firma electrónica — qué ocurre cuando su cliente hace clic en Firmar · Help · Clozo