Digital signature patterns
Digital signature patterns
8 reglasOfrece siempre tres métodos: dibujar, escribir nombre y subir imagen
Un flujo que solo permite dibujar excluye a usuarios con discapacidades motoras, a quienes están en desktop sin lapiz, y a entornos corporativos que exigen consistencia tipografica. Ofrecer dibujo libre, nombre tipografiado con fuente script y carga de imagen cubre todos los perfiles sin degradar a ninguno. La selección de método debe ser visible desde el primer paso del modal, nunca escondida bajo un acordeon. El default es "escribir nombre" en desktop y "dibujar" en móvil, detectado por pointerType o ancho de pantalla.
No puedes dibujar? Escribe tu nombre
Canvas con Pointer Events, trazo suave y controles de limpiar y deshacer
Usar eventos de raton (mousedown/mousemove) excluye touch y lapiz; usar touchstart rompe en desktop. La Pointer Events API del W3C unifica mouse, pen y dedo en un solo modelo, con presión y tilt donde el hardware lo soporta. El canvas captura pointerdown/pointermove/pointerup y llama a setPointerCapture() para retener el trazo fuera del área. Suaviza el trazo interpolando puntos con curvas cuadraticas. Expon "Limpiar" siempre visible y al menos un nivel de "Deshacer" vía snapshot de ImageData.
onmousedown solo · sin deshacer
Pide consentimiento explicito de firma electronica antes de firmar
La ESIGN Act (15 U.S.C. § 7001) exige que el consumidor "haya consentido afirmativamente" al uso de registros electronicos, tras informarle de su derecho a recibir el documento en papel y a retirar el consentimiento. El reglamento eIDAS (UE 910/2014) requiere demostrar la intención de firmar. En la interfaz esto es una casilla explicita o texto de consentimiento visible, no enterrado en los Términos, que el usuario acepta antes de poder aplicar la firma. Nunca infieras la firma de un scroll o de un clic en "Siguiente".
15 U.S.C. § 7001 (Cornell LII) · FTC Report on ESIGN Consumer Consent · eIDAS Regulation EU 910/2014Al continuar aceptas los Términos y Condiciones.
Muestra el documento completo antes de firmar: nada de firma ciega
El usuario debe poder leer o desplazarse por la totalidad del documento antes de que aparezca el control de firma. Las plataformas maduras (DocuSign, Adobe Sign) muestran el documento en un visor scrolleable y solo exponen el campo de firma después. Un resumen por IA complementa la lectura pero jamas la sustituye: la firma vincula al texto legal completo, no al resumen. En documentos multipagina, una barra de progreso de lectura anade transparencia sin bloquear el flujo.
CM.com "Sign 2.0 UX" · Adobe Acrobat "Sign in preview" · Docusign eSignature · CRITERIO: ESIGN/eIDAS no fija porcentaje de lectura, la obligación es de intenciónSenala donde firmar y que campos faltan antes de enviar
Los campos de firma y los requeridos (fecha, iniciales, nombre) deben diferenciarse con un estado "pendiente" destacado: borde punteado de atención, etiqueta "Requerido". Un indicador global ("2 de 4 completados") y un botón "Ir al siguiente campo" que desplaza al proximo vacio eliminan la fricción de busqueda. Al intentar enviar con campos vacios, scrollea al primer incompleto y muestra el error inline, nunca solo un toast genérico al inicio de la página.
OneSpan "e-Signature Workflow" · Qwilr "9 Best Practices" · reloadux "eSignature UX" · CRITERIO: patrón estandar de formularios, sin cifra auditada para firmaFaltan campos por completar.
Comunica la validez legal y el audit trail con timestamp del servidor
Los usuarios no técnicos necesitan saber que su firma tiene respaldo legal y que existe una traza inviolable. El mensaje post-firma debe mencionar la fecha y hora UTC, que se genero un registro de auditoria, y el ID de transacción o certificado. El audit trail captura como mínimo: timestamp del servidor en ISO 8601 (no el reloj local del firmante), IP origen, método de firma, hash SHA-256 del documento antes y después, y evidencia de consentimiento. Ofrece descargar el "Certificate of Completion" en la pantalla de confirmación.
eSign.ai "Legal Elements of Audit Trail" · Formfy "Audit Trail (2026)" · Nitro Sign "eSignature Audit Trails"Da alternativa de teclado a la firma dibujada para movilidad reducida
WCAG 2.1 SC 2.1.1 (Keyboard, nivel A) exige que toda funcionalidad sea operable por teclado, salvo la entrada "path-dependent" como el dibujo libre. Cuando el proposito es registrar la intención de firmar y no la trayectoria del trazo, la alternativa tipografiada satisface el requisito. El flujo completo (abrir modal, elegir método, aplicar, confirmar, cerrar) debe navegarse con Tab/Shift+Tab y activarse con Enter/Space, con foco visible (SC 2.4.7) y nombre/rol/valor expuestos (SC 4.1.2). Un <canvas> inalcanzable por teclado necesita un control de firma alternativo.
<canvas> sin tabindex ni aria-label
Entrega la copia firmada al firmante de inmediato, sin que la pida
El firmante tiene derecho a conservar una copia del documento ejecutado. La ESIGN Act y la practica de la industria exigen suministrarla integra: por email automático con el PDF firmado adjunto o por enlace de descarga en la pantalla de confirmación. La copia incluye las firmas incrustadas y el certificado de auditoria embebido. El enlace debe permanecer activo al menos 30 días; si caduca antes, el sistema avisa proactivamente. No es aceptable que el firmante deba recordar descargar su copia sin ningun aviso.
15 U.S.C. § 7001(c)(1)(B) (Cornell LII) · WeSignature "E-Signature Legality" · ShareFile "Legally Binding" · Formfy "Audit Trail (2026)"- R-831 Ofrece siempre tres métodos: dibujar, escribir nombre y subir imagen
- R-832 Canvas con Pointer Events, trazo suave y controles de limpiar y deshacer
- R-833 Pide consentimiento explicito de firma electronica antes de firmar
- R-834 Muestra el documento completo antes de firmar: nada de firma ciega
- R-835 Senala donde firmar y que campos faltan antes de enviar
- R-836 Comunica la validez legal y el audit trail con timestamp del servidor
- R-837 Da alternativa de teclado a la firma dibujada para movilidad reducida
- R-838 Entrega la copia firmada al firmante de inmediato, sin que la pida