whatisgithub

What is paperless-ngx-erechnung?

bitbetterde/paperless-ngx-erechnung — explained in plain English

Analysis updated 2026-05-18

18XSLTAudience · ops devopsComplexity · 3/5LicenseSetup · moderate

In one sentence

A Paperless-ngx plugin that automatically reads German electronic invoices (XRechnung and ZUGFeRD) and extracts their data.

Mindmap

mindmap
  root((paperless-ngx-erechnung))
    What it does
      Detects e-invoices
      Extracts metadata
      Generates readable PDF
    Formats
      XRechnung
      ZUGFeRD
    Tech stack
      Python
      XSLT
      Apache FOP
    Audience
      German businesses
      Accountants

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Automatically extract invoice number, date, and totals from incoming German e-invoices in Paperless-ngx.

USE CASE 2

Generate a readable PDF preview of XRechnung XML invoices using official government stylesheets.

USE CASE 3

Keep a German business's incoming electronic invoices searchable and organized without manual data entry.

What is it built with?

PythonXSLTApache FOPJava

How does it compare?

bitbetterde/paperless-ngx-erechnungpratish10/azure-logicapps-xslt-transformationslolbas-project/lolbas
Stars1808,550
LanguageXSLTXSLTXSLT
Setup difficultymoderatemoderateeasy
Complexity3/53/51/5
Audienceops devopsdeveloperops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Requires installing Apache FOP and a Java runtime alongside Paperless-ngx.

Free to use, modify, and share, but any modified version you distribute must also be open source under the same license.

So what is it?

Paperless-ngx-erechnung is a plugin for Paperless-ngx, an open-source document management system that scans, organizes, and makes your documents searchable, that adds support for German electronic invoices (called E-Rechnungen). Starting in 2025, German businesses are required to send and receive invoices electronically in standardized XML formats. Two formats exist: XRechnung, which is a pure XML file, and ZUGFeRD (also known as Factur-X), which is a PDF that has the XML invoice data embedded inside it. Without this plugin, Paperless-ngx treats these files like any other XML or PDF and does not extract the structured invoice data, things like invoice number, date, due date, seller name, and totals. With the plugin installed, Paperless automatically detects these invoice formats when they are added to its inbox and extracts all the relevant metadata fields, making them visible in the sidebar and searchable. For XRechnung files (which are XML and have no visual format), the plugin also generates a human-readable PDF using official stylesheets from the German government's KoSIT organization and the Apache FOP layout engine. You would use this if you are a German business owner or accountant who uses Paperless-ngx to manage documents and wants incoming electronic invoices to be properly parsed and organized automatically. Installation requires adding Apache FOP and a Java runtime to the Paperless environment, which takes a few extra steps beyond a typical plugin install. The plugin is written in Python and XSLT and is licensed under GPL-3.0 to match Paperless-ngx itself.

Copy-paste prompts

Prompt 1
Help me install the paperless-ngx-erechnung plugin, including the Apache FOP and Java runtime requirements.
Prompt 2
Explain the difference between XRechnung and ZUGFeRD invoice formats and how this plugin handles each.
Prompt 3
Show me what invoice metadata fields this plugin extracts and makes searchable in Paperless-ngx.
Prompt 4
Walk me through connecting this plugin to an existing Paperless-ngx instance for a German business.

Frequently asked questions

What is paperless-ngx-erechnung?

A Paperless-ngx plugin that automatically reads German electronic invoices (XRechnung and ZUGFeRD) and extracts their data.

What language is paperless-ngx-erechnung written in?

Mainly XSLT. The stack also includes Python, XSLT, Apache FOP.

What license does paperless-ngx-erechnung use?

Free to use, modify, and share, but any modified version you distribute must also be open source under the same license.

How hard is paperless-ngx-erechnung to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is paperless-ngx-erechnung for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.