Questions and answers
What you want to know beforehand, answered honestly.
Before anyone trusts their papers to a filing cabinet, they have questions. Here are the answers, including the ones that say “no”.
General
What does nexpaper cost?
Nothing. nexpaper is free software under the AGPL-3.0. There is no paid tier and no account with anybody. All you need is a machine that runs Docker.
Can I sign up somewhere without a server of my own?
No. nexpaper exists for self-hosting only, at home or on a server you rent. There is no service where your papers sit with a company, and that is on purpose.
Is there an app for the phone?
None from a store. nexpaper is a web app that you put on the home screen from the browser. On the phone it opens on the quick upload, with big buttons for “Take a photo” and “Choose a file”. The camera finds the edges of the sheet and straightens it. On Android nexpaper then stands in the share menu of every app; on the iPhone a shortcut steps in, which you build yourself.
Can I work without a connection?
No. nexpaper needs a connection to your server. It stores no pages and no answers on the device. The service worker only catches sharing on Android.
Which languages does nexpaper speak?
The interface comes in German and English. The operator uploads more as a JSON file; what is missing in it, nexpaper shows in English. Text recognition reads six languages: German, English, French, Dutch, Polish and Turkish, with German and English on out of the box. Mails from nexpaper and the log are always in English.
Paperless-ngx and moving
Is nexpaper a version of Paperless-ngx?
No. nexpaper is a project of its own and independent; it is not part of Paperless-ngx and not by its makers. It reads from a Paperless-ngx server only when you start the import.
Why nexpaper, when there is Paperless-ngx?
Paperless-ngx is a mature, large tool. nexpaper wants to be the small, plain version for the home: one container instead of several services, an inbox where everything new waits with its fields filled in, and little you have to set up. If you need custom fields, storage paths, workflows or learning matching, Paperless-ngx is the better place.
What does nexpaper deliberately leave out that Paperless-ngx has?
There are no custom fields, no storage paths you can set, no workflows, no learning matching, no rules with regular expressions and no barcodes for separating. nexpaper does not take Office files or mails as documents. The searchable copy is a plain PDF, not PDF/A. The mailbox is one IMAP mailbox for the whole server. The comparison in detail is on the page Instead of Paperless.
How do I move from Paperless-ngx?
As the operator, under “Settings”, “Import”: enter the address and an API token of Paperless-ngx, press “Connect and look”, choose a person for each owner and start the run. Paperless-ngx 1.14 or newer is read. The whole way is in the guide chapter Moving from Paperless-ngx.
Does my Paperless-ngx stay untouched?
Yes. nexpaper only reads and changes nothing there. You can keep Paperless-ngx running until you are sure. The import runs in the background, can be paused and survives a restart, and another run fetches only what has been added in Paperless-ngx since.
What is taken over, and what is not?
Taken over are the original, Paperless-ngx's searchable version, the text it recognised there, title, date, correspondent as sender, document type as kind, tags, notes and the shares for users and groups. Custom fields and the ASN end up as a note on the document. Not taken over are storage paths and workflows, and Word, Excel and other Office files, unless Paperless-ngx made a PDF of one. The recognised text comes along, nothing is read again. What was skipped is listed with its number and reason on the card.
Bringing in and filing
How does a letter get into nexpaper?
In several ways: upload in the browser or drag it onto the page, photograph it with the phone's camera, from the share menu on Android, with the shortcut on the iPhone, by mail to the mailbox, through the intake folder a scanner writes to, or through the interface. Everything lands in the inbox first.
Which files does nexpaper take?
PDF, JPEG, PNG, TIFF (multi-page too), HEIC from the iPhone, WebP, AVIF and e-invoices as XML. The kind is read from the content, not from the name. A file may be 200 MB out of the box.
Is anything filed without me?
No. Everything new waits in the inbox until a person looks at it and files it. That holds for documents from the mailbox, the intake folder and the import with “Everything into the inbox”, too. Rules and proposals fill in fields, nothing more. The one exception is the import from Paperless-ngx with “As in Paperless”: it files at once what was filed there already.
Do I have to use an AI?
No. Out of the box no AI is set up, and without it rules and what nexpaper reads from the text itself make the proposals. The operator can enter a service, a local model with Ollama for example, or a service that speaks the OpenAI interface. Then the recognised text of the first two pages and the list of kinds go there, no picture and no account name. Personal vaults are left out from the start, 200 requests a day is the limit, and every person switches the AI off for themselves.
Does the search find words in a photo or a scan?
Yes, because text recognition makes scans and photos readable. How well it reads a sheet depends on the original; nexpaper states no hit rate. The search also finds parts of words, “ergy” finds “Energy”, and knows filters such as kind:invoice or amount:>100.
Can nexpaper handle e-invoices?
It reads ZUGFeRD and Factur-X (the XML inside the PDF) and XRechnung as XML from their data: invoice number, date, due date, sender, IBAN, amounts. nexpaper does not check them against the official rules, it only reads. There is no GoBD claim either.
Does nexpaper remind me of deadlines?
No. For a document you can note “Due on”, “Contract until”, “Warranty until” and “Keep until”, and the dates stand on the document. nexpaper sends no reminder for them.
Vaults and sharing
Can the operator see my documents?
Not in the app: a personal vault is not shown to the operator either, as long as you do not share it. But the files lie readable on the server's disk, and whoever runs the server can see them there. The operator also chooses, when deleting an account, where its documents go, in the open and noted in the history. More on the Security page.
How do I give a document to somebody without an account?
With a link to the outside: on the document press “Share”, “By link to the outside”, then “Create link”. The link shows only this document, expires by itself, and you see how often it was opened. You can revoke it at any time. You have to allow downloading explicitly. How long a link may last at most is the operator's decision: 7, 14, 30 or 90 days, 30 at most out of the box. The operator can also switch links to the outside off altogether, and existing ones stop working at once.
What does my tax adviser get?
Either a ZIP to download or a link under which they fetch it without an account. The ZIP holds the searchable PDFs, the originals and the e-invoices as XML if you want them, and a list as CSV that Excel opens directly. There is no DATEV format.
Data and security
Are my documents encrypted?
No. The documents lie as readable files on the disk, their text and the search index unencrypted in the database. That is on purpose, because encryption per person would make the search impossible and the files unreadable without nexpaper. Only the server's secrets, the mail password for instance, are sealed. Protect your server's disk yourself, with an encrypted drive for example.
What goes out?
The browser talks to your server only. There are no statistics, no error reports and no self-update. The server asks GitHub for a new version when somebody opens “About nexpaper”, and that can be switched off. Everything else exists only once somebody sets it up: mail server, AI, mailbox, push, Paperless import and sign-in provider. The table is on the Security page.
May I put nexpaper on the internet?
Better not. nexpaper is meant for your own network, and on the road you get in with a VPN. If you open it anyway, you find a second factor as a requirement from the start, passkeys, the brake against guessing and the card “Ready for the internet?”. The list is on the page Self-hosting.
Is nexpaper GoBD compliant or audit-proof?
nexpaper makes no such claim. It keeps every version with its checksum, keeps a history and checks once a week that all files are still there and unchanged, but that is not a certificate. Ask your tax adviser if you need one.
What if my phone is gone?
With one of the eight recovery codes you get in once, even without the phone. If you no longer have the codes, the operator removes the second factor of your account. You are told, and you set it up again at the next sign-in.
What is left of my papers if I stop using nexpaper?
Your folders. Under dokumente/ every document lies as a PDF in a folder by vault, year and sender, with the original and older versions beside it. You do not need nexpaper to open them.
Running it
What do I have to back up?
Two things: the backup from nexpaper, which out of the box is made by itself every night, and the folder /data/dokumente with the documents. The backup holds the database, the settings and the server's secret, but not the documents. The documents belong in the backup your server makes anyway.
Can I sign in with my own sign-in service?
Yes, with any service that speaks OpenID Connect, authentik or Microsoft Entra ID for example, and with several side by side: each gets a button on the sign-in page. For authentik a button in the settings sets up provider and application by itself. For a new provider it is switched on that the provider checks the second factor itself. If the operator switches that off, nexpaper also asks for its own second factor after the provider, for whoever has one.
I forgot my password and there is no mail server. What now?
There is a command in the container that prints a link for setting a new password: docker exec -it -u nexpaper nexpaper python -m app.reset_link <account>. Without an account name it lists the accounts. The link works once and for 24 hours, and the second factor stays as it was.
How do I let a scanner file straight into nexpaper?
Through the intake folder: the operator switches it on under “Settings”, “Inputs” and mounts the scanner's folder as a volume. In it there is one subfolder per person, and what lies still there for 10 seconds goes into that person's inbox. Alternatively a scanner uploads directly with an API key for uploading.