DocuSeal: Alternativa open source a DocuSign para firma digital de documentos

Publicado por


docuseal
Open Source

DocuSeal: Alternativa open source a DocuSign para firma digital de documentos

Plataforma de firma y relleno de documentos PDF autohospedada con API y webhooks

Vídeo tutorial en YouTube

Mira el vídeo completo sobre cómo instalar y usar DocuSeal: Alternativa open source a DocuSign para firma digital de documentos en el canal GENBYTE:

¿Qué es DocuSeal: Alternativa open source a DocuSign para firma digital de documentos?

DocuSeal es una plataforma open source que proporciona firma y procesamiento seguro y eficiente de documentos digitales. Permite crear formularios PDF para que sean rellenados y firmados en línea desde cualquier dispositivo mediante una herramienta web fácil de usar y optimizada para móviles. Está distribuida bajo licencia AGPLv3 con términos adicionales y desarrollada principalmente en Ruby on Rails con frontend en Vue y TailwindCSS.

Ofrece construcción de formularios PDF WYSIWYG con 12 tipos de campo, múltiples firmantes por documento, envío automático de emails vía SMTP, almacenamiento en disco o cloud (AWS S3, Google Storage, Azure), verificación de firma PDF y API con webhooks para integraciones.

Características principales

Constructor de formularios PDF WYSIWYG

Editor visual para crear campos de formulario directamente sobre el documento PDF.

12 tipos de campo disponibles

Incluye Firma, Fecha, Archivo, Casilla de verificación, Texto, Número, Email, Desplegable, Radio, Texto largo, Contraseña y Campo oculto.

Múltiples firmantes por documento

Permite definir varios destinatarios que deben firmar o rellenar el mismo documento en orden secuencial o paralelo.

Envío automático de emails vía SMTP

Notificaciones y recordatorios automáticos configurables mediante servidor SMTP.

Almacenamiento flexible

Guarda archivos en disco local, AWS S3, Google Cloud Storage o Azure Blob Storage.

Firma electrónica PDF automática

Genera documentos firmados con certificación digital integrada.

Verificación de firma PDF

Valida la integridad y autenticidad de los documentos firmados.

Gestión de usuarios

Administración de cuentas, roles y permisos dentro de la plataforma.

Optimizado para móviles

Interfaz responsive que funciona correctamente en dispositivos móviles y tablets.

Soporte multiidioma

Interfaz en 7 idiomas y proceso de firma disponible en 14 idiomas.

API y Webhooks

API REST completa y webhooks para integración con sistemas externos.

Despliegue rápido

Instalación en minutos mediante Docker o Docker Compose.

Requisitos del sistema

  • Docker y Docker Compose instalados
  • Servidor con arquitectura x86_64 o aarch64
  • Mínimo 2 GB de RAM recomendados
  • Espacio en disco para base de datos PostgreSQL y almacenamiento de documentos
  • Puerto 80 y 443 disponibles para Caddy (HTTPS automático)
  • Puerto 3000 para la aplicación si se expone directamente
  • Dominio configurado con DNS apuntando al servidor para certificados SSL automáticos

Instalación con Docker Compose

Descargar docker-compose.yml

Obtener el archivo de composición oficial del repositorio.

curl https://raw.githubusercontent.com/docusealco/docuseal/master/docker-compose.yml > docker-compose.yml

Levantar la stack con dominio personalizado

Inicia los contenedores (app, PostgreSQL, Caddy) con HTTPS automático mediante Let's Encrypt. Requiere que el DNS del dominio apunte al servidor.

sudo HOST=tu-dominio.com docker compose up -d

Despliegue simple con SQLite (sin dominio)

Ejecución directa del contenedor usando base de datos SQLite integrada, accesible en puerto 3000.

docker run –name docuseal -p 3000:3000 -v $(pwd)/data:/data docuseal/docuseal

Acceder al proyecto

Acceso vía HTTPS con dominio

Tras el despliegue con HOST=tu-dominio.com, la aplicación está disponible en https://tu-dominio.com. Caddy gestiona certificados TLS automáticamente.

Acceso directo por puerto (desarrollo/pruebas)

Si se usa docker run simple o docker compose sin variable HOST, la interfaz web responde en http://localhost:3000 o http://IP_DEL_SERVIDOR:3000.

Casos de uso

  • Firma de contratos y acuerdos en sectores bancario, sanitario, inmobiliario, transporte y eCommerce
  • Procesos KYC y onboarding de clientes con verificación de identidad
  • Integración en CRM y software de gestión para envío masivo de documentos (CSV, XLSX)
  • Firma embebida en aplicaciones web o móviles propias mediante SDKs (React, Vue, Angular, JavaScript)
  • Automatización de flujos de trabajo con recordatorios, campos condicionales y fórmulas
  • Cumplimiento normativo de firma electrónica en múltiples jurisdicciones

Configuración avanzada

Configurar base de datos externa

Por defecto usa PostgreSQL en el compose. Para usar MySQL o PostgreSQL externo, define la variable DATABASE_URL en el servicio app.

environment:
– DATABASE_URL=postgresql://usuario:password@host:5432/docuseal

Almacenamiento en cloud (S3, GCS, Azure)

Configura variables de entorno para usar proveedores de almacenamiento de objetos en lugar del disco local. Consulta la documentación oficial para las variables exactas.

# Ejemplo conceptual (variables reales en docs oficiales)
AWS_S3_BUCKET=mi-bucket
AWS_ACCESS_KEY_ID=xxx
AWS_SECRET_ACCESS_KEY=xxx
AWS_REGION=us-east-1

Configuración SMTP para emails

Define variables de entorno del servidor SMTP para habilitar notificaciones y recordatorios automáticos.

SMTP_ADDRESS=smtp.ejemplo.com
SMTP_PORT=587
SMTP_USER=usuario
SMTP_PASSWORD=password
SMTP_AUTHENTICATION=plain
SMTP_ENABLE_STARTTLS_AUTO=true

Forzar HTTPS sin Caddy

Si se usa proxy inverso externo, la variable FORCE_SSL=true obliga a la app a generar URLs seguras.

environment:
– FORCE_SSL=true

Gestión y mantenimiento

Actualizar a nueva versión

Descargar la imagen más reciente y recrear contenedores manteniendo volúmenes de datos.

docker compose pull
docker compose up -d

Backup de base de datos PostgreSQL

Ejecutar pg_dump dentro del contenedor de base de datos para respaldar datos.

docker exec -t docuseal-postgres-1 pg_dump -U postgres docuseal > backup_$(date +%F).sql

Backup de archivos subidos

Copiar el volumen de datos de la aplicación que contiene documentos y configuración.

tar -czf docuseal_data_$(date +%F).tar.gz ./docuseal

Ver logs de la aplicación

Consultar logs de los servicios para diagnóstico.

docker compose logs -f app
docker compose logs -f postgres
docker compose logs -f caddy

Stack técnico

  • Ruby 4.0.5
  • Ruby on Rails
  • Vue 3
  • TailwindCSS
  • PostgreSQL 18
  • Caddy (reverse proxy + TLS automático)
  • PDFium (renderizado PDF)
  • ONNX Runtime (detección de campos IA)
  • Puma (servidor de aplicaciones)
  • Shakapacker (webpack para Rails)
  • Yarn (gestor de paquetes JS)
  • Docker / Docker Compose

Referencias oficiales

Apoya el canal GENBYTE

Sígueme en mis redes sociales

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *