
¿Alguna vez has pasado 20 minutos buscando una factura que sabes que guardaste «en algún sitio»? ¿O tienes cajones llenos de papeles que «algún día» digitalizarás? Paperless-ngx es la solución que convierte tu NAS en un archivo digital inteligente con OCR automático, búsqueda full-text y organización por etiquetas. En esta guía te muestro cómo montarlo paso a paso.
¿Qué es Paperless-ngx?
Paperless-ngx es un sistema de gestión documental open source, fork activo del original Paperless-ng, diseñado para convertir pilas de documentos físicos en un archivo digital organizado y completamente buscable. No es solo un almacén de PDFs: es una solución inteligente que entiende el contenido de tus documentos.
Las características principales que lo hacen indispensable en cualquier homelab:
- OCR automático con Tesseract: Convierte documentos escaneados en texto buscable, soportando múltiples idiomas incluyendo español
- Búsqueda full-text avanzada: Encuentra cualquier documento por su contenido, no solo por el nombre de archivo
- Organización flexible: Etiquetas, correspondientes (remitentes), tipos de documento y campos personalizados
- Workflows automáticos: Reglas que procesan documentos automáticamente según su contenido o fuente
- API REST completa: Integración con otras aplicaciones y automatizaciones
- Consumo por email: Procesa automáticamente adjuntos de correos
- Soporte para Office: Integración con Tika y Gotenberg para indexar DOCX, XLSX y más
A diferencia de soluciones propietarias como Evernote o Dropbox Paper, tus documentos permanecen en tu infraestructura, con total control sobre tu privacidad y sin cuotas de almacenamiento.
Requisitos previos
Antes de empezar, asegúrate de tener:
Hardware recomendado
| Componente | Mínimo | Recomendado |
|---|---|---|
| RAM | 2 GB | 4+ GB (OCR más rápido) |
| CPU | 2 cores | 4+ cores (procesamiento paralelo) |
| Almacenamiento | 10 GB (sistema) | SSD para datos + HDD para archivos |
| Red | 1 GbE | 2.5 GbE (subida de documentos) |
Software necesario
- NAS con Docker y Docker Compose instalados
- Sistema operativo: Linux (TrueNAS SCALE, Synology DSM 7+, QNAP QTS, Unraid, o NAS DIY con Debian/Ubuntu)
- Acceso SSH o terminal para ejecutar comandos
NAS recomendados para Paperless-ngx
Si estás buscando un NAS nuevo para montar Paperless-ngx, estos modelos ofrecen el mejor rendimiento/precio:
Synology DS224+: El clásico de 2 bahías con CPU Intel Celeron J4125, 2GB RAM ampliables y soporte nativo de Docker en DSM 7. Perfecto para hogares con volumen documental medio. También disponible en AliExpress.
UGREEN DXP4800 Plus: NAS de 4 bahías con CPU Intel Gold 8505 (mucho más potente que el Celeron de Synology), 8GB RAM DDR5 y puerto 10GbE incluido. Ideal si planeas procesar miles de documentos o quieres futuro-proofing. Ver ofertas en UGREEN.
Para un NAS DIY, cualquier Mini PC con Intel N100 o superior funcionará perfectamente, incluso con Proxmox VE si quieres virtualizar.
Instalación con Docker Compose
La forma más sencilla y mantenible de instalar Paperless-ngx es usando Docker Compose. Este stack incluye todos los servicios necesarios: base de datos PostgreSQL, broker Redis, procesador de documentos, y servicios opcionales Tika y Gotenberg para documentos Office.
Estructura del docker-compose.yaml
version: "3.8"
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
volumes:
- redisdata:/data
db:
image: docker.io/library/postgres:16
restart: unless-stopped
volumes:
- pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- db
- broker
- gotenberg
- tika
ports:
- "8000:8000"
healthcheck:
test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./consume:/usr/src/paperless/consume
- ./export:/usr/src/paperless/export
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_DBUSER: paperless
PAPERLESS_DBPASS: paperless
PAPERLESS_DBNAME: paperless
PAPERLESS_TIME_ZONE: Europe/Madrid
PAPERLESS_OCR_LANGUAGE: spa+eng
PAPERLESS_TIKA_ENABLED: "1"
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
PAPERLESS_ADMIN_USER: admin
PAPERLESS_ADMIN_PASSWORD: cambia-esta-contraseña
PAPERLESS_ADMIN_MAIL: admin@nasencasa.local
gotenberg:
image: docker.io/gotenberg/gotenberg:8
restart: unless-stopped
command:
- "gotenberg"
- "--chromium-disable-javascript=true"
- "--chromium-allow-list=file:///tmp/.*"
tika:
image: docker.io/apache/tika:latest
restart: unless-stopped
volumes:
data:
media:
pgdata:
redisdata:Explicación de cada servicio
| Servicio | Función | Notas |
|---|---|---|
| broker (Redis) | Cola de mensajes para tareas asíncronas | Esencial para el procesamiento en segundo plano |
| db (PostgreSQL) | Base de datos principal | Más robusto que SQLite para producción |
| webserver | Aplicación principal de Paperless-ngx | Expone la UI web y la API REST |
| gotenberg | Conversión de documentos Office a PDF | Necesario para procesar DOCX, XLSX, etc. |
| tika | Extracción de metadatos de documentos | Complementa a Gotenberg para indexación |
Variables de entorno importantes
PAPERLESS_OCR_LANGUAGE: Idiomas para OCR. Usaspa+engpara español e inglésPAPERLESS_TIME_ZONE: Zona horaria para fechas correctas en documentosPAPERLESS_CONSUMPTION_DIR: Carpeta donde Paperless busca nuevos documentosPAPERLESS_ADMIN_USER/PASSWORD: Crea automáticamente un superusuario al iniciarUSERMAP_UID/GID: Mapea permisos con tu usuario del host (obtén conid $USER)
Despliegue
Guarda el archivo como docker-compose.yaml y ejecuta:
# Crear directorios necesarios
mkdir -p paperless-ngx/{consume,export}
cd paperless-ngx
# Desplegar el stack
docker compose up -d
# Verificar que todos los contenedores están corriendo
docker compose psEl primer arranque descargará las imágenes y configurará la base de datos. Puede tardar 2-5 minutos dependiendo de tu conexión y hardware.
Primeros pasos con Paperless-ngx
Acceso a la interfaz web
Una vez desplegado, accede a http://IP-de-tu-NAS:8000. Verás el login inicial. Si configuraste PAPERLESS_ADMIN_USER, usa esas credenciales. Si no, crea el superusuario manualmente:
docker compose run --rm webserver createsuperuserEstructura de carpetas
El directorio consume es crucial: cualquier archivo que copies allí será procesado automáticamente. Los documentos procesados se mueven a media (gestionado internamente) y puedes exportar desde export.
Subir tu primer documento
Tienes tres métodos para añadir documentos:
- Carpeta consume: Copia archivos PDF/imágenes a
./consumey Paperless los procesará automáticamente - Drag & drop en la web: Arrastra archivos directamente al dashboard
- API REST: Para integraciones automatizadas
Prueba subiendo una factura escaneada. Verás que Paperless extrae el texto automáticamente y genera una versión PDF/A con OCR.
Configuración avanzada
Etiquetas automáticas
Las etiquetas permiten organizar documentos de forma flexible (un documento puede tener múltiples etiquetas). Para crear etiquetas automáticas:
- Ve a Settings → Tags → New Tag
- Define el nombre (ej: «Facturas», «Contratos», «Bancos»)
- En Matching, configura reglas como:
- Match: «contains» + «factura» (detecta la palabra en el contenido)
- Assign this tag automatically: Activado
Paperless aprende de tus asignaciones manuales y mejora las sugerencias automáticas con el tiempo.
Correspondientes (remitentes)
Los correspondientes identifican quién envió o emitió el documento (tu banco, compañía eléctrica, empleador). Configúralos similar a las etiquetas:
- Settings → Correspondents → New Correspondent
- Nombre: «Iberdrola», «BBVA», «Empresa XYZ»
- Matching: palabras clave como «IBERDROLA», «CIF B-12345678»
Tipos de documento
Clasifica por naturaleza del documento: facturas, contratos, nóminas, recibos, etc. Esto facilita búsquedas tipo «todas las facturas de 2025».
Workflows (Flujos de trabajo)
Los workflows son la función más potente de Paperless-ngx. Permiten automatizar acciones complejas basadas en triggers:
Ejemplo práctico: Facturas de luz automáticas
- Trigger: «Consumption Started» + filename contains «iberdrola»
- Actions:
- Assign correspondent: «Iberdrola»
- Assign document type: «Factura»
- Assign tag: «Gastos» + «Luz»
- Set owner: tu usuario
Los workflows también pueden enviar emails, llamar webhooks o mover documentos según fechas programadas.
Integración con escáneres
El flujo ideal es: escanear → enviar a Paperless → olvidarte del papel. Aquí las opciones:
Método 1: Carpeta compartida (SMB/NFS)
Configura tu escáner para guardar en una carpeta compartida del NAS que esté mapeada al directorio consume de Paperless. Es el método más universal.
# En tu NAS, comparte la carpeta consume vía SMB
# En el escáner, configura destino SMB: //IP_NAS/paperless-consume
# Las credenciales deben tener permisos de escrituraMétodo 2: Email
Configura Paperless para consumir documentos desde una cuenta de correo:
- Ve a Settings → Mail Accounts y añade tu cuenta (soporta Gmail/Outlook con OAuth2)
- En Mail Rules, crea reglas como: «si asunto contiene ‘factura’, procesar adjuntos»
- Elige acciones post-consumo: marcar como leído, mover a carpeta, o eliminar
Método 3: App móvil
Existen apps de terceros compatibles con la API de Paperless-ngx:
- Paperless Mobile (Android/iOS): Escanea con la cámara y sube directamente
- Paperless Share: Extiende el menú «Compartir» de tu móvil
Escáneres recomendados
Para uso doméstico intensivo, considera un escáner con ADF (alimentador automático):
- Fujitsu ScanSnap iX1600: WiFi integrado, doble cara automático, envío directo a NAS
- Epson WorkForce ES-500WII: Escaneo rápido, conectividad inalámbrica
- Escáner de cama plana + ADF: Para documentos frágiles o libros
Busca en Amazon opciones con mejor valoración.
Backup de documentos
Tus documentos son importantes. Paperless ofrece múltiples capas de protección:
Backup de volúmenes Docker
El método más completo: respaldar los volúmenes de datos:
# Crear backup completo
docker compose stop
tar -czf paperless-backup-$(date +%Y%m%d).tar.gz \
/var/lib/docker/volumes/paperless_data/ \
/var/lib/docker/volumes/paperless_media/ \
/var/lib/docker/volumes/paperless_pgdata/
docker compose startExport nativo de documentos
Paperless incluye un sistema de exportación que genera archivos con metadatos JSON:
# Exportar todos los documentos con metadatos
docker compose exec webserver document_exporter /usr/src/paperless/export
# Los archivos estarán en ./export con estructura:
# export/
# ├── 2025/
# │ ├── factura-luz-2025-01.pdf
# │ └── factura-luz-2025-01.pdf.metadata.json
# └── manifest.jsonEste formato permite reimportar a otra instancia de Paperless-ngx si es necesario.
Estrategia 3-2-1
Sigue la regla 3-2-1 para backups: 3 copias, 2 medios diferentes, 1 offsite. Usa HBS3, CloudSync o rclone para replicar a nube.
Papelera y recuperación
Paperless-ngx incluye papelera con retención configurable (30 días por defecto). Los documentos eliminados pueden recuperarse desde Trash en la interfaz. Para eliminación permanente inmediata, vacía la papelera manualmente.
Conclusión
Paperless-ngx transforma tu NAS en un centro de gestión documental que rivaliza con soluciones empresariales, manteniendo tus datos bajo tu control. La combinación de OCR automático, búsqueda full-text y organización por etiquetas elimina el caos de los papeles para siempre.
El punto fuerte es la automatización: una vez configurados los workflows, el sistema clasifica documentos sin intervención manual. La inversión inicial en configuración se amortiza rápidamente en tiempo ahorrado buscando facturas o contratos.
Próximo paso recomendado: Si aún no tienes un NAS potente, evalúa el UGREEN DXP4800 Plus para un rendimiento óptimo, o el Synology DS224+ si prefieres la simplicidad de DSM. Ambos manejarán Paperless-ngx sin problemas con cientos de documentos mensuales.
Precios y especificaciones sujetos a cambio. Verificar en web oficial del fabricante. Este artículo contiene enlaces de afiliado — si compras a través de ellos, nos ayudas a mantener el blog sin coste adicional para ti.
Dejar una contestacion