In short
Problem: Paper piles up, invoices arrive as e-mail, PDF and now XML, and German law expects you to keep all of it for up to ten years, findable and unchanged.
Solution: A self-hosted document archive (Paperless-ngx), a network scanner, a few clear daily routines, a written process description, and a retention plan based on the current German rules.
Tested with: Paperless-ngx in Docker on a small home server, a network scanner with document feeder, Nextcloud as file share, legal status in Germany as of October 2026
Not tax or legal advice: this guide describes how we set things up for a small German business and what the rules say as far as I understand them. Retention periods and requirements change. Check your own setup with your tax advisor before you destroy any paper original.
Small businesses and home offices drown in paper: letters, receipts, bank statements, contracts. On top of that, more and more invoices arrive by e-mail, and since 2025 every business in Germany must be able to receive electronic invoices. That is a good moment to stop filing paper and build a proper paperless office. Mine runs in my homelab, and the examples below come from that setup. This guide covers the whole path: the technical setup, the daily routines for the people who work with it, the compliance side, and how long you really have to keep what.
1. What “paperless” should mean
Before buying a scanner, agree on the goal. For us it was four rules:
- One archive for everything: scanned paper, e-mail attachments and e-invoices end up in the same place.
- Digital originals stay original. A PDF or XML invoice that arrived by e-mail is stored exactly as received. Printing it and scanning it again is not allowed.
- Everything is searchable through text recognition (OCR) and a small set of tags.
- Nothing is lost: automatic backups, including one copy outside the house.
2. The technical setup
The building blocks are cheap and mostly open source:
| Part | What we use | Why |
|---|---|---|
| Scanner | Network multifunction printer with document feeder and duplex | Scans a whole stack of letters in one go, straight into the network |
| Scan front end | scanservjs (web interface for the scanner) | Anyone in the house can scan from the browser, no driver on each PC |
| Archive | Paperless-ngx in Docker | OCR, tags, full-text search, keeps the original file, multi-user |
| Database | PostgreSQL | Reliable, easy to back up with a dump |
| File share | Nextcloud | A readable folder structure for people who don’t use Paperless directly, and for the tax advisor |
| Login | Single sign-on in front of everything | One login, no shared passwords |
| Backup | Nightly snapshots plus an encrypted offsite copy | Ten years of documents must survive a dead disk |
A minimal Paperless-ngx stack looks like this. Passwords and keys go into a .env file next to it, never into the compose file:
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
db:
image: docker.io/library/postgres:17
restart: unless-stopped
volumes:
- ./pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: ${DB_PASSWORD}
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on: [db, broker]
ports:
- "127.0.0.1:8010:8000" # only via reverse proxy / SSO
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_DBPASS: ${DB_PASSWORD}
PAPERLESS_SECRET_KEY: ${SECRET_KEY}
PAPERLESS_URL: https://paperless.example.com
PAPERLESS_TIME_ZONE: Europe/Berlin
PAPERLESS_OCR_LANGUAGE: deu+eng
PAPERLESS_FILENAME_FORMAT: "{{ created_year }}/{{ correspondent }}/{{ created }} {{ title }}"
A few settings matter more than they look:
- OCR language:
deu+engrecognises German umlauts and English words in the same document. - Original and archive version: Paperless keeps the file exactly as it arrived and creates a separate searchable PDF/A next to it. For compliance, the original is the one that counts.
- Consume folder: the scanner, the e-mail import and people drop files into one folder. Paperless picks them up from there.
- Not on the internet: the port is bound to the server itself and only reachable through a reverse proxy with single sign-on. An archive full of invoices, contracts and bank statements is a prize for attackers.
E-invoices need special care
Since 1 January 2025 every business in Germany must be able to receive electronic invoices from other German businesses. An e-invoice is a structured file: either an XRechnung (pure XML) or a ZUGFeRD invoice (a PDF with the XML embedded). Two things follow from that:
- The XML is the legal original, not a printout or a screenshot. Store the file exactly as received.
- A pure XML file is not readable for humans. Keep a viewer at hand (for example a free XRechnung viewer) and store a readable visualisation next to the original, never instead of it.
For sending there are transition periods: paper and simple PDF invoices are still allowed until the end of 2026, and until the end of 2027 for businesses with a prior-year turnover of up to 800,000 euros. After that, invoices between German businesses must be e-invoices. Small amounts up to 250 euros and businesses under the small-business rule have exceptions; ask your tax advisor which apply to you.
3. Classification: tags, correspondents and a bit of AI
Search only works if documents are sorted consistently. Paperless offers four tools. Use them for different things:
| Field | Use it for | Example |
|---|---|---|
| Correspondent | Who sent it | Telecom provider, insurance, tax office |
| Document type | What it is | Invoice, contract, bank statement, letter |
| Tags | Status and purpose | business, to-review, for-tax-advisor |
| Custom fields | Structured data | Amount, target folder, “keep until” year |
Paperless learns from your sorting and suggests correspondents and tags for new documents. We added a small classifier on top that asks a language model for the right target folder. If you do the same, be careful with privacy: our classifier only sends the first part of the text, and it masks personal data before sending it: names, addresses, IBANs, tax and customer numbers, and all money amounts. Documents it is unsure about get a to-review tag instead of being filed automatically.
Tip: keep the list of tags and folders short and write it down. Twenty well-defined folders beat a hundred that everyone interprets differently.
4. Workflows for the people who use it
The technology is the easy part. The paperless office only works if everyone follows the same routines. These are routines that work well for a small office; adapt them to your situation:
Incoming paper (daily)
- Open the mail, remove staples, put everything into the document feeder.
- Scan with duplex at 300 dpi. One document per scan job, or use separator sheets.
- Check the result in Paperless the same day: is every page readable, is the OCR text plausible, did the classification work?
- Put the paper into a box for the current month. It stays there until the monthly check (see below), not longer.
Invoices and documents by e-mail
- Use one dedicated mailbox for invoices and give that address to all suppliers.
- Let Paperless fetch the attachments automatically with its built-in mail import and tag them for review.
- Never print an e-mail invoice. The file is the original.
Receipts on the road
Fuel, parking, office supplies: photograph the receipt with the phone the same day and upload it, for example through a Paperless mobile app or a shared Nextcloud folder that Paperless consumes. Keep the paper receipt in the month’s box as well, because thermal paper fades and a bad photo is worthless.
Monthly routine
- Work through everything tagged
to-review. - Compare the month’s bank statements with the filed invoices: is there a document for every booking?
- Hand the month over to the tax advisor (a shared folder or an export with all
for-tax-advisordocuments). - Check a sample of the scanned paper against the originals, note the check in the log, then destroy the paper. Keep the exceptions listed in section 6.
Roles and permissions
Give every person their own login. Business documents belong to the business owner; private household documents can be visible to the whole family. Nobody except the administrator may delete documents, and even then deletion should go through a trash bin with a waiting period.
Watch out: in Paperless, tags, correspondents and document types created with the administrator’s account belong to the administrator. Other users then can’t see them, and their uploads stay untagged. Create shared objects without an owner, or give them explicit permissions.
5. Compliance: GoBD, process documentation and data protection
In Germany, digital bookkeeping and archiving follow the GoBD, the tax authority’s principles for proper electronic records. In practice they boil down to a few requirements:
| Requirement | What it means | How we cover it |
|---|---|---|
| Completeness | Every relevant document is captured | Monthly comparison of bank statements and invoices |
| Immutability | Originals can’t be changed unnoticed | Paperless stores the original file with a checksum; changes are only made to metadata; nightly snapshots |
| Traceability | It is clear who did what and when | Personal logins, Paperless audit log, scan log |
| Availability | Documents can be shown and evaluated during the whole retention period | Backups, offsite copy, export function, open formats (PDF/A, XML) |
| Machine readability | Digital originals are kept in their original format | E-invoices and PDFs are stored as received |
| Documented process | A written process description exists | See below |
Be honest about one point: a self-hosted Paperless-ngx is not a certified “audit-proof” archive. You cover the requirements through the way you run it: restricted deletion rights, logging, backups and a documented process. Discuss with your tax advisor whether that is enough for your business.
The process documentation (Verfahrensdokumentation)
This document is what makes destroying paper after scanning possible in the first place, so write it before you shred the first original. It describes in plain words:
- which documents are scanned, by whom, when and with which device and settings;
- how the scan is checked for completeness and legibility, and who checks it;
- how e-mail and e-invoices are received, checked and archived;
- when and how paper originals are destroyed, and which ones are kept;
- the system: software, versions, storage, access rights, backups and how a restore works;
- who is responsible, and when the document was last reviewed.
Review it once a year and every time something changes, such as a new scanner, a new software version or a new person doing the bookkeeping. The process documentation itself must be kept as long as the documents it describes.
Data protection (GDPR)
- The archive contains personal data of customers, suppliers and family members. Limit access to the people who need it.
- Every external service that sees documents (cloud storage, an AI classifier, an OCR service) needs a data processing agreement, and personal data should be masked before it leaves the house.
- Retention periods are also deletion deadlines: once a document is no longer needed for tax or commercial law, personal data in it should be deleted.
6. How long to keep what
The tax code (§ 147 AO) and the commercial code (§ 257 HGB) set the periods. Since 2025 the period for booking vouchers is shorter than before:
| Period | Documents |
|---|---|
| 10 years | Books and records, inventories, opening balance sheets, annual financial statements, management reports, and the work instructions and organisational documents needed to understand them (including the process documentation) |
| 8 years | Booking vouchers: incoming and outgoing invoices, receipts, bank statements, payroll documents, credit notes (shortened from 10 years; applies to all vouchers whose period had not yet expired at the start of 2025) |
| 6 years | Business letters received and sent (including e-mails that work like letters, such as orders and confirmations), and other documents that matter for taxes |
Three details people often get wrong:
- The period starts at the end of the calendar year in which the document was created or received. An invoice from March 2026 must be kept until the end of 2034 (8 years from 31 December 2026).
- Open tax assessments extend it: as long as the tax assessment for a year is still open (for example during an appeal or an audit), the documents for it must not be destroyed, even if the period has passed.
- Some industries differ: for banks, insurers and investment firms, other periods apply. Check if that concerns you.
Some paper originals should never be destroyed after scanning, even with a good process: notarial deeds, annual financial statements and opening balance sheets with original signatures, customs documents, and anything where the original itself has legal value (for example certificates or documents with seals). Keep these in a folder, and scan them for convenience only.
A simple way to handle this in Paperless: a custom field “keep until” (a year) on every document type that has a retention period, and a saved view that lists everything whose year has passed. Once a year you decide what to delete. Don’t let anything be deleted automatically.
7. Rollout plan
| Phase | Duration | What happens |
|---|---|---|
| 1. Plan | 1 week | Agree on goals, folder list, tags and roles; talk to the tax advisor |
| 2. Build | 1–2 weeks | Set up server, Paperless, scanner, mail import, backups; test a restore |
| 3. Pilot | 1 month | Scan everything new, keep all paper, fix the classification and the routines |
| 4. Document | during the pilot | Write the process documentation, have it checked |
| 5. Go live | from month 2 | Destroy paper after the monthly check (except the exceptions) |
| 6. Old files | as time allows | Scan old folders from the newest year backwards; anything past its period can go directly |
8. Checklist
- Archive only reachable through login, ideally single sign-on, not exposed to the internet
- Nightly backup, offsite copy, restore tested at least once
- Dedicated invoice mailbox with automatic import
- E-invoices stored as original XML or ZUGFeRD PDF, with a viewer available
- Written folder and tag list
- Process documentation written and reviewed by the tax advisor
- Monthly review routine with a scan check and log
- Retention field and a yearly deletion review
- Box for paper originals that must be kept
What I learned
- The hard part is not the software but the routine. Plan a fixed time each day and each month for it.
- Write the process documentation early. It forces you to decide things you would otherwise leave open.
- Mask personal data before any document text leaves the house, also for “just a quick AI classification”.
- Check ownership and permissions with a second user account before you go live. Many “it doesn’t work for her” problems were permission problems.
- Deleting in one place should delete everywhere. We sync the Paperless trash to the Nextcloud copy, otherwise old copies live on.