Lars Decker

Product Owner / vorher Full Stack Entwickler

n8n und Paperless - ein perfektes Dream Team

5. Juni 2025

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

  1. Trigger: Neue Datei in einem Ordner (z. B. aus Google Drive oder Mailanhang)
  2. 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 oder document_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

Quellen

Kontakt

Sie erreichen mich per E-Mail unter ínfo@lars-decker.eu

Impressum