n8n und Paperless - ein perfektes Dream Team
Automatisierte Dokumentenverarbeitung mit n8n und paperless-ngx: So klappt die Integration
Einleitung
Im digitalen Alltag sammeln sich Rechnungen, Verträge und andere Dokumente schnell an. Tools wie paperless-ngx helfen, diese strukturiert zu archivieren. Doch wie lassen sich Prozesse rund ums Dokumentenmanagement automatisieren? Die Antwort: n8n, ein leistungsstarkes Automatisierungstool, das sich ideal mit paperless-ngx kombinieren lässt.
In diesem Artikel zeige ich dir, wie du beide Tools effektiv zusammen einsetzt – inklusive Installation von paperless-ngx per Docker, API-Anbindung und konkreten Automatisierungsszenarien.
Was ist n8n?
n8n ist ein Open-Source-Tool zur Workflow-Automatisierung. Es erlaubt dir, Daten zwischen verschiedenen Systemen zu verbinden, Aufgaben zu automatisieren und Abläufe zu visualisieren – ganz ohne komplexe Programmierung.
Vorteile von n8n:
- Open Source & selbst hostbar
- Keine API-Limits wie bei Zapier
- Modularer Aufbau und viele Integrationen
- Erweiterbar mit benutzerdefiniertem JavaScript
Was ist paperless-ngx?
paperless-ngx ist eine moderne, selbst hostbare Dokumentenverwaltungsplattform. Dokumente (z. B. eingescannte PDFs) werden automatisch erkannt (OCR), verschlagwortet und archiviert.
Hauptfunktionen:
- OCR-Erkennung von PDFs und Bildern
- Schlagwort- und Dokumentenverwaltung
- Benutzerverwaltung und REST-API
- Unterstützt E-Mail-Import, Webupload, Hotfolders
Paperless-ngx mit Docker installieren
Die empfohlene Methode zur Installation von paperless-ngx ist via Docker Compose. So gehst du vor:
Voraussetzungen
- Docker & Docker Compose installiert (
sudo apt install docker docker-compose
) - Verzeichnisstruktur vorbereiten
1. Projektordner anlegen
mkdir -p ~/paperless-ngx && cd ~/paperless-ngx
2. Beispiel-Compose-Datei herunterladen
curl -O https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/docker/compose/docker-compose.yml
Alternativ kannst du deine eigene docker-compose.yml
definieren:
version: "3.7"
services:
broker:
image: redis:7
restart: always
db:
image: postgres:15
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
volumes:
- db_data:/var/lib/postgresql/data
restart: always
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
depends_on:
- db
- broker
ports:
- "8000:8000"
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_DBUSER: paperless
PAPERLESS_DBPASS: paperless
PAPERLESS_DBNAME: paperless
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- consume:/usr/src/paperless/consume
restart: always
volumes:
db_data:
data:
media:
consume:
3. Paperless starten
docker-compose up -d
Nach ein paar Minuten ist paperless-ngx unter http://localhost:8000 erreichbar. Beim ersten Start musst du einen Admin-Benutzer erstellen:
docker-compose exec webserver python3 manage.py createsuperuser
Warum n8n + paperless-ngx?
Die Integration dieser beiden Tools ermöglicht leistungsstarke Automatisierungen:
- Automatisches Hochladen und Taggen neuer Dokumente
- Integration von Cloud-Diensten (z. B. Google Drive → paperless-ngx)
- Benachrichtigung per E-Mail, Telegram oder Slack bei neuen Dokumenten
- Metadaten auslesen und weiterverarbeiten (z. B. Rechnungsdatum, Absender)
Integration von paperless-ngx in n8n
Da paperless-ngx eine REST-API bietet, lässt sich die Integration in n8n über den HTTP Request Node realisieren.
Beispiel-Workflow: PDF automatisch hochladen
- Trigger: Neue Datei in einem Ordner (z. B. aus Google Drive oder Mailanhang)
- HTTP Request Node:
Method: POST
URL: http://localhost:8000/api/documents/post_document/
Headers:
Authorization: Token DEIN_API_TOKEN
Content-Type: multipart/form-data
Body:
title: Beispiel.pdf
document: (Binary-Datei)
Optional:
- Mit separaten Requests Tags zuweisen
- Metadaten wie
correspondent
oderdocument_type
setzen
Praxisbeispiele
📨 E-Mail-Anhänge automatisch archivieren
- Trigger: IMAP oder Gmail-Node
- Filter auf Absender („rechnung@firma.de“)
- Anhang extrahieren
- Als PDF an paperless-ngx senden
- Telegram-Benachrichtigung bei Erfolg
📤 Cloud-Upload automatisch erfassen
- Trigger: Neue Datei in Nextcloud, Dropbox o. ä.
- Datei herunterladen
- An paperless senden
- Optional: Aus Dateinamen Tags extrahieren (Regex oder JS-Node)
Tipps & häufige Fehler
- Datei-Upload: Achte auf
multipart/form-data
, sonst schlägt der Upload fehl. - Token vergessen: Der Header
Authorization: Token <token>
ist Pflicht. - Paperless-Ports offen? Bei Docker muss Port 8000 nach außen gemappt sein.
- Tags/Kategorien fehlen: Müssen vorher über API oder UI angelegt werden.
- Container-Zugriffe: Bei mehreren Containern sicherstellen, dass Hostnamen korrekt sind (
webserver
,broker
,db
im Compose-Netzwerk).
Fazit
Die Kombination aus paperless-ngx und n8n ist perfekt für alle, die ihre Dokumentenablage automatisieren möchten – sicher, lokal und flexibel. Mit wenig Aufwand entsteht ein automatisiertes System, das Eingänge verarbeitet, strukturiert und benachrichtigt.
Für wen ist das Setup geeignet?
- Privatpersonen, die papierlos arbeiten wollen
- Selbstständige oder kleine Unternehmen
- Technik-Affine, die Automatisierung und Kontrolle kombinieren möchten