Cómo ofrecer firma de documentos dentro de tu propia web
Si tu producto o tu sitio necesita que los usuarios puedan firmar documentos sin salir de tu dominio ni notar que hay un proveedor externo de por medio, hay dos formas de lograrlo: integrar un panel embebido mediante un iframe, o construir tu propia interfaz sobre la API REST.
Opción 1: un panel embebido en tu sitio
La forma más rápida de ofrecer firma de documentos dentro de tu propio sitio es embeber un panel ya construido dentro de un iframe, autenticado con un token de embed propio de tu cuenta. El usuario interactúa con ese panel —sube el documento, agrega firmantes, posiciona campos— sin salir de tu página, y el panel se comunica con tu sitio mediante eventos (por ejemplo, para avisarte cuando una solicitud de firma se creó correctamente), de forma que tu propia interfaz pueda reaccionar a lo que ocurre dentro del panel embebido.
Esta opción es la más rápida de implementar si no quieres construir tu propia interfaz de usuario para el proceso de firma: solo necesitas incluir el iframe con el token correspondiente y escuchar los eventos que te interesan.
Opción 2: construir tu propia interfaz sobre la API
Si prefieres que la experiencia de subir el documento, agregar firmantes y hacer seguimiento tenga el diseño exacto de tu producto —sin ningún elemento visual de un proveedor externo, ni siquiera dentro de un iframe—, puedes construir tu propia interfaz y comunicarte directamente con la API REST: tu backend crea la solicitud de firma, y puedes mostrar el estado del proceso con tus propios componentes, usando webhooks para enterarte en tiempo real de eventos como una firma completada. Ver qué es una API de firma electrónica y para qué sirve.
Cuál elegir según tu caso
| Si necesitas... |
Considera |
| Integrar firma rápido, sin construir tu propia interfaz |
Panel embebido (iframe con token) |
| Control total sobre el diseño de cada pantalla del proceso |
Tu propia interfaz sobre la API REST |
| El firmante final complete su firma desde un enlace estándar |
Cualquiera de las dos opciones, el firmante recibe su enlace de firma igual |
Qué parte del proceso ve realmente el firmante final
Conviene distinguir entre dos roles: quien crea y envía la solicitud de firma (que puede hacerlo desde el panel embebido o desde tu propia interfaz sobre la API) y quien firma el documento. El firmante final siempre completa su firma a través del enlace único que recibe por correo, que lo lleva a la página de firma estándar — ese paso no cambia según cómo hayas integrado la creación de la solicitud.
Si tu necesidad es más simple —que cualquiera que llegue a un enlace público pueda registrarse como firmante y firmar un acuerdo estándar, sin que necesites una interfaz propia de creación de solicitudes— un formulario público puede ser suficiente, sin necesidad de integrar un panel ni la API. Ver formularios con firma online para captar clientes.
Qué considerar sobre el diseño visual de cada opción
Con el panel embebido, el diseño visual del proceso de creación de la solicitud sigue el diseño del proveedor, aunque vive dentro de tu página. Con tu propia interfaz sobre la API, tienes control total sobre cada elemento visual, pero también la responsabilidad de diseñar y mantener esa interfaz tú mismo. Para un equipo pequeño sin recursos de diseño dedicados, el panel embebido suele ser el punto de partida más razonable, migrando a una interfaz propia más adelante si el caso de uso lo justifica.
Pruebas antes de integrar en producción
Independientemente de qué opción elijas, prueba el flujo completo con un documento real antes de exponerlo a tus usuarios finales: crea una solicitud de prueba, verifica que los eventos o webhooks que esperas recibir efectivamente llegan, y confirma que el documento final se genera correctamente.
Empieza a integrar
Si quieres ofrecer firma de documentos dentro de tu propio producto, la documentación de Esignapi detalla cómo embeber el panel mediante un token, y cómo usar la API REST directamente si prefieres construir tu propia interfaz.
Costos a considerar más allá del plan de firma
Al evaluar integrar firma electrónica en tu propio producto, considera también el costo de desarrollo (tiempo de tu equipo construyendo la integración) y de mantenimiento a futuro, no solo el precio del plan de la plataforma de firma. Una integración más simple como el panel embebido reduce el costo de desarrollo inicial frente a construir tu propia interfaz completa sobre la API.
Mantener la integración cuando cambia el producto
Si integras firma electrónica en una etapa temprana de tu producto, es probable que tu interfaz y tus necesidades cambien con el tiempo. Diseñar la integración de forma desacoplada —por ejemplo, aislando las llamadas a la API en una sola parte de tu código en lugar de esparcirlas por todo el sistema— facilita actualizar o cambiar de proveedor más adelante si tu producto evoluciona, sin tener que reescribir la integración desde cero.
Cómo probar los eventos del panel embebido antes de integrarlos a fondo
Antes de construir toda la lógica de tu interfaz alrededor de los eventos que envía el panel embebido, prueba primero con un registro simple (por ejemplo, mostrar en la consola del navegador cada evento recibido) para confirmar que efectivamente llegan y con qué datos, antes de conectar esos eventos a acciones reales en tu producto como actualizar una base de datos o notificar a un usuario.
Qué pasa si tu sitio y el panel embebido usan idiomas distintos
Si tu sitio está en un idioma y necesitas que el panel embebido coincida, confirma en la documentación si el token de embed o la configuración del panel permiten especificar el idioma de la interfaz, para evitar que el usuario vea tu página en un idioma y el panel de firma en otro, lo que puede sentirse inconsistente incluso si técnicamente todo funciona bien.
Empieza con la opción más simple y evoluciona después
Si no estás seguro de cuál de las dos opciones elegir, empezar con el panel embebido y evaluar después si realmente necesitas migrar a tu propia interfaz sobre la API suele ser la ruta más segura. Es más fácil pasar de un panel embebido a una interfaz propia más adelante, cuando ya conoces mejor tu caso de uso real, que invertir tiempo de desarrollo en una interfaz completa desde el principio sin haber validado todavía que el flujo de firma funciona bien para tus usuarios específicos.
Preguntas frecuentes
¿Necesito conocimientos técnicos para embeber el panel con iframe?
Sí, aunque es una integración más simple que construir tu propia interfaz sobre la API: básicamente necesitas incluir el iframe con el token correspondiente en tu página y, opcionalmente, escuchar los eventos que el panel envía.
¿El usuario final nota que está usando un proveedor externo?
Con el panel embebido, el proceso ocurre dentro de tu página, aunque técnicamente es un iframe de un dominio distinto. Con tu propia interfaz sobre la API, el proceso puede diseñarse para que no tenga ningún elemento visual distinguible de un proveedor externo.
¿El firmante final necesita salir de mi sitio para completar su firma?
El firmante recibe su enlace de firma por correo y completa el proceso en la página estándar de firma, que es un paso separado del panel de creación de la solicitud, independientemente de cómo hayas integrado ese primer paso.
¿Puedo usar el panel embebido y la API al mismo tiempo?
Depende de tu caso de uso: podrías usar el panel embebido para que los usuarios creen solicitudes de firma, y aun así consultar el estado de esas solicitudes mediante la API desde tu backend si lo necesitas.