Receiving e-invoices in Germany: checking and recording XRechnung and ZUGFeRD
Since 2025 every business in Germany must be able to receive e-invoices. How to read XRechnung and ZUGFeRD, check them against EN 16931 and catch duplicates.
Since 1 January 2025 every business in Germany has to be able to receive e-invoices. There are no exemptions, and an email inbox is enough to meet the requirement. So the question is no longer whether an XRechnung or a ZUGFeRD PDF lands in your inbox, but what happens next: is the file opened, typed in and filed somewhere, or is it read, checked and recorded as a supplier invoice?
What an e-invoice is, and what it is not
An e-invoice is a structured data set following the European standard EN 16931. In Germany you will mostly meet two forms:
- XRechnung: a pure XML file, in either UBL or CII syntax.
- ZUGFeRD: a PDF with the same data embedded as XML. People read the PDF, software reads the XML.
A PDF without embedded data is not an e-invoice, even when it is sent electronically. Until the end of 2026 suppliers may still send invoices like that (with your consent), and until the end of 2027 if their previous year’s turnover was up to €800,000. After that, the e-invoice becomes mandatory between businesses within Germany.
From the file to the supplier invoice
In Blina Desk, incoming invoices are handled in the Purchasing module. You drop the file into the upload area and the software works out what it is looking at:
| File | What happens |
|---|---|
| XRechnung (UBL) | read directly |
| XRechnung (CII) | read directly |
| ZUGFeRD PDF | the embedded XML is extracted and read |
| PDF without embedded data, such as a scan | the text is recognised and read by the AI, as a draft to check |
Before anything is saved, you see the invoice number, date, due date, the supplier with VAT ID and IBAN, every line with quantity, unit price and tax rate, plus net amount, VAT and total. The supplier is recognised by its VAT ID; if it does not exist yet, the screen says it will be created. Only “Create draft invoice” turns the file into a supplier invoice.
An invoice the AI has read from a plain PDF is clearly marked “AI-extracted”, together with how confident the result is. Such an invoice is never accepted on its own: you check it and you decide.
The EN 16931 check
An e-invoice can arrive formally complete and still be wrong. That is why every file is checked against the core rules of the standard before you accept it, for example:
- invoice number, invoice date and currency are present;
- the supplier’s name and VAT ID are not missing;
- the invoice has lines, and every line has an amount;
- the lines add up to the net amount;
- net amount plus VAT equals the total.
Every finding is shown in plain language below the invoice, preceded by the code of the rule in the standard, for example BR-CO-10. When everything is fine, it says: no problems found.
Catching duplicate invoices
The same invoice arrives twice more often than you would think: once by email to the head office, once to purchasing. If the same supplier already has an invoice with the same number in the system, Blina Desk says so before a second draft is created: you open the existing invoice, or you knowingly import it anyway. The same number from a different supplier is not a duplicate, and that is shown too.
Straight from the mailbox
If you receive your emails in Blina Desk, you can set a mailbox to take over e-invoices automatically. XRechnung and ZUGFeRD attachments of incoming emails are then read and created as invoice drafts, without anyone uploading the file. A PDF without embedded data is left alone: you upload it yourself and check the AI’s draft. An invoice that is already recorded is not created a second time.
And the accounting?
With the Accounting module, a supplier invoice can automatically produce a journal entry, with input VAT on the right account. This automation is off until you turn it on, and even then the entry is created as a draft: nothing is posted until someone approves it.
In short
Receiving e-invoices is mandatory; typing them in is not. Import XRechnung and ZUGFeRD files, let the EN 16931 check and the duplicate check run, and accept only what is correct. The module page shows what this looks like in Purchasing, and you can try it free for 30 days.
Status and sources (accessed on 25 October 2026)
- German Federal Ministry of Finance: Questions and answers on mandatory e-invoicing (in German; receiving from 1 January 2025, no exemptions, an email inbox is sufficient, transition periods)
- German Federal Ministry of Finance: The most important tax changes in 2025 (in German; extension to the end of 2027 for turnover up to €800,000)
Found a mistake? Write to us at [email protected].