E-Rechnung validieren: Wie EN 16931, XRechnung, ZUGFeRD, Peppol und UStG zusammenspielen
„Die Rechnung ist valide“ – diesen Satz hört man oft. Die ehrliche Gegenfrage lautet: valide wogegen? Eine E-Rechnung kann das XML-Schema bestehen, an der EN 16931 scheitern, als XRechnung durchfallen, im Peppol-Netz abgelehnt werden – oder alle technischen Prüfungen bestehen und trotzdem steuerlich mangelhaft sein.
Der Grund: Hinter einer E-Rechnung steht kein einzelnes Regelwerk, sondern ein Stapel aufeinander aufbauender Schichten. Jede Schicht prüft etwas anderes, wird von jemand anderem herausgegeben und fängt andere Fehler. Wer den Stapel versteht, versteht auch, warum ein Validator „grün“ zeigt und der Kunde die Rechnung trotzdem zurückschickt.
Das Schichtenmodell auf einen Blick
① Recht: UStG §14 / MwSt-Richtlinie 2006/112/EG
Was muss auf einer Rechnung stehen?
② Semantik: EN 16931-1
Datenmodell (BT/BG) und Business Rules BR-xx
③ Syntax: UBL 2.1 oder UN/CEFACT CII
XSD-Schema
④ Spezialisierung (CIUS): XRechnung (BR-DE) · Peppol BIS 3.0 · ZUGFeRD-Profile
Nationale und fachliche Zusatzregeln
⑤ Container & Transport: PDF/A-3 (ZUGFeRD) · Peppol AS4/SMP · E-Mail/Portal
Dateiformat, Einbettung, Zustellung
⑥ Stammdaten & Plausibilität
USt-IdNr. (VIES/BZSt) · IBAN · Leitweg-ID · Codelisten
ergänzt Schicht ④, liegt aber außerhalb des Dokuments
| Schicht | Regelwerk | Herausgeber | Prüft im Kern | Technisch prüfbar? |
|---|---|---|---|---|
| ① Recht | UStG §14, §14a, §33 UStDV, MwSt-Richtlinie | Gesetzgeber / BMF | Pflichtangaben, Rechnungsbegriff, Vorsteuerabzug | Nur teilweise |
| ② Semantik | EN 16931-1 | CEN/TC 434 | Pflichtfelder, Rechenlogik, USt-Kategorien | Ja (Schematron) |
| ③ Syntax | UBL 2.1 / CII D16B (EN 16931-3) | OASIS / UN/CEFACT | Wohlgeformtheit, Struktur, Datentypen | Ja (XSD) |
| ④ Spezialisierung | XRechnung, Peppol BIS Billing 3.0, ZUGFeRD/Factur-X-Profile | KoSIT, OpenPeppol, FeRD/FNFE | Zusätzliche Pflichtfelder, engere Regeln | Ja (Schematron) |
| ⑤ Container/Transport | PDF/A-3, Peppol AS4, SMP/SML | ISO, OpenPeppol | Dateiformat, Einbettung, Routing | Ja (veraPDF, Netzwerk) |
| ⑥ Stammdaten | VIES, BZSt, ISO 13616 (IBAN), Codelisten | EU-Kommission, BZSt, ISO, UN | Existenz und Korrektheit von Werten | Ja, aber außerhalb des Schematrons |
Die wichtigste Regel des Modells: Jede Schicht darf die darunterliegende nur verschärfen, nie aufweichen. Eine XRechnung ist immer auch eine EN-16931-konforme Rechnung – aber nicht umgekehrt.
Vorab: Was heißt eigentlich „Schema-Prüfung“ und „Schematron“?
In jedem Prüfbericht tauchen zwei Begriffe auf: Schema (XSD) und Schematron. Beides sind Prüftechniken für XML – aber sie beantworten völlig unterschiedliche Fragen.
Schema-Prüfung (XSD): Ist das Formular richtig aufgebaut?
Ein XML-Schema (XSD, XML Schema Definition) beschreibt den Bauplan eines XML-Dokuments. Es legt fest, welche Elemente es gibt und wie sie heißen, in welcher Reihenfolge und Verschachtelung sie stehen, wie oft sie vorkommen dürfen und welchen Datentyp ein Wert hat (Datum, Dezimalzahl, Text).
Die Analogie: Das Schema prüft, ob ein Formular die richtigen Kästchen an der richtigen Stelle hat und ob im Datumsfeld ein Datum steht. Es prüft nicht, ob die Angaben zusammenpassen.
Ein Beispiel, das die Schema-Prüfung ablehnt:
<cbc:IssueDate>13.10.2026</cbc:IssueDate> <!-- falsch: XSD erwartet 2026-10-13 -->
Ein Beispiel, das die Schema-Prüfung durchwinkt, obwohl es falsch ist:
<cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount> <cbc:TaxExclusiveAmount currencyID="EUR">250.00</cbc:TaxExclusiveAmount> <!-- Summen passen nicht zusammen – dem Schema ist das egal -->
Die XSD-Dateien kommen von den Herausgebern der Syntax: OASIS für UBL, UN/CEFACT für CII. Sie sind für die ganze Welt gleich – egal ob die Rechnung in Deutschland, Frankreich oder Norwegen verwendet wird.
Schematron: Ergeben die Inhalte fachlich Sinn?
Schematron ist eine ISO-standardisierte Regelsprache (ISO/IEC 19757-3), mit der man inhaltliche Bedingungen über ein XML-Dokument formuliert. Jede Regel besteht aus einem Kontext (wo im Dokument geprüft wird, per XPath), einer Bedingung, einer Meldung mit Regel-ID und einem Schweregrad (fatal/Error oder Warning).
So sieht eine vereinfachte Schematron-Regel aus, hier BR-CO-10 aus der EN 16931:
<rule context="/ubl:Invoice/cac:LegalMonetaryTotal">
<assert id="BR-CO-10" flag="fatal"
test="cbc:LineExtensionAmount =
sum(/ubl:Invoice/cac:InvoiceLine/cbc:LineExtensionAmount)">
[BR-CO-10] Sum of Invoice line net amount (BT-106) =
Σ Invoice line net amount (BT-131).
</assert>
</rule>Übersetzt: „Die Gesamtsumme der Positionen muss gleich der Summe aller einzelnen Positionsbeträge sein.“ Genau das kann ein XSD nicht ausdrücken. Schematron kann also:
- Werte miteinander vergleichen (Summen, Steuerbeträge, Rundung)
- bedingte Pflichtfelder prüfen („wenn USt-Kategorie Reverse Charge, dann muss die Käufer-USt-IdNr. vorhanden sein“)
- Codelisten abgleichen (ist
EURein gültiger ISO-4217-Code?) - Kardinalitäten verschärfen, die das XSD offen lässt – im CII-Schema ist fast alles optional, erst Schematron macht z. B. die Rechnungsnummer zur Pflicht
Warum es beides braucht
| Schema-Prüfung (XSD) | Schematron | |
|---|---|---|
| Frage | Ist das XML richtig gebaut? | Ist der Inhalt fachlich richtig? |
| Prüft | Struktur, Reihenfolge, Datentypen | Pflichtfelder, Rechenregeln, Abhängigkeiten, Codelisten |
| Herausgeber | OASIS (UBL), UN/CEFACT (CII) | CEN (EN 16931), KoSIT (XRechnung), OpenPeppol, FeRD/FNFE |
| Typische Meldung | „Element IssueDate: '13.10.2026' ist kein gültiges Datum“ | „[BR-CO-10] Summe der Positionen stimmt nicht“ |
| Erkennbar an | Fehlermeldung ohne Regel-ID | Regel-ID wie BR-02, BR-DE-15, PEPPOL-EN16931-R001 |
| Reihenfolge | Zuerst – scheitert sie, ist der Rest sinnlos | Danach, in mehreren Schichten nacheinander |
Der entscheidende Punkt: Das XSD ist für alle gleich – die Unterschiede zwischen EN 16931, XRechnung, Peppol und den ZUGFeRD-Profilen stecken fast vollständig im Schematron. Eine XRechnung und eine Peppol-Rechnung in UBL bestehen dasselbe Schema. Was sie unterscheidet, sind die zusätzlichen Schematron-Regeln (BR-DE-… bzw. PEPPOL-…), die auf die EN-16931-Regeln draufgelegt werden.
Und noch eine Grenze gilt für beide: Weder XSD noch Schematron schauen außerhalb des Dokuments nach. Ob eine USt-IdNr. existiert oder eine IBAN zum Lieferanten gehört, kann keine der beiden Techniken wissen – dafür braucht es die Stammdaten-Prüfungen in Schicht ⑥.
① Die rechtliche Basis: UStG §14
Ganz oben steht nicht ein technischer Standard, sondern das Umsatzsteuergesetz. Seit dem Wachstumschancengesetz definiert §14 Abs. 1 UStG die E-Rechnung als Rechnung in einem strukturierten elektronischen Format, das der EN 16931 entspricht – oder in einem anderen Format, sofern es die korrekte und vollständige Extraktion der Angaben in ein EN-16931-konformes Format ermöglicht.
Damit verweist das Gesetz auf die Norm – die Norm selbst kennt aber die deutschen Pflichtangaben nach §14 Abs. 4 UStG nicht im Detail. Genau hier entsteht die erste Lücke:
| §14 Abs. 4 UStG verlangt | EN 16931 erzwingt das? |
|---|---|
| Name und Anschrift von Leistendem und Empfänger | Ja (BR-06, BR-07, BR-08, BR-10 …) |
| Steuernummer oder USt-IdNr. des Leistenden | Ja, abhängig von der USt-Kategorie (z. B. BR-S-02) |
| Ausstellungsdatum, fortlaufende Rechnungsnummer | Ja (BR-02, BR-03) – die Fortlaufendheit natürlich nicht |
| Zeitpunkt der Leistung (Leistungsdatum/-zeitraum) | Nein – BT-72 / BG-14 sind optional |
| Entgelt nach Steuersätzen aufgeschlüsselt | Ja (BR-CO-17, BR-S-08 ff.) |
| Hinweis auf Steuerbefreiung | Ja (BR-E-10, BR-AE-10, BR-IC-10 …) |
| Bezeichnung „Gutschrift“ bei Gutschriftsverfahren | Nur indirekt (Typcode 389) |
Konsequenz: Eine Rechnung kann technisch einwandfrei EN-16931-valide sein und trotzdem den Vorsteuerabzug des Empfängers gefährden – etwa wenn das Leistungsdatum fehlt. Kein Schematron der Welt prüft, ob eine Rechnungsnummer fortlaufend ist oder ob die Leistungsbeschreibung „handelsüblich“ genug ist. Die vollständige Liste finden Sie in unserer Checkliste der Pflichtangaben.
Zeitplan zur Einordnung: Empfangspflicht seit 1.1.2025, Ausstellungspflicht ab 1.1.2027 für Unternehmen mit mehr als 800.000 € Vorjahresumsatz, ab 1.1.2028 für alle (B2B, Inland).
② Die Semantik: EN 16931 – das Herzstück
Die EN 16931-1 ist ein semantisches Datenmodell. Sie sagt nicht, wie das XML aussieht, sondern welche Informationen eine Rechnung enthält und wie sie zusammenhängen:
- Business Terms (BT): rund 160 einzelne Informationselemente, z. B. BT-1 Rechnungsnummer, BT-31 USt-IdNr. des Verkäufers, BT-84 IBAN
- Business Groups (BG): logische Gruppen, z. B. BG-4 Verkäufer, BG-23 Umsatzsteueraufschlüsselung, BG-25 Rechnungsposition
- Business Rules (BR): Regeln, die gegen diese Elemente prüfen
Die Business Rules teilen sich in Familien:
| Präfix | Prüft | Beispiel |
|---|---|---|
| BR-01 … BR-65 | Pflichtfelder und Kardinalitäten | BR-02: Rechnungsnummer muss vorhanden sein |
| BR-CO-xx | Rechenlogik und Konsistenz | BR-CO-10: Summe Positionsnetto = BT-106 |
| BR-S-, BR-Z-, BR-E-, BR-AE-, BR-IC-, BR-G-, BR-O- … | Regeln je USt-Kategorie | BR-AE-02: Reverse Charge braucht USt-IdNr. von Verkäufer und Käufer |
| BR-CL-xx | Codelisten | BR-CL-04: Währung muss ISO 4217 sein |
| BR-DEC-xx | Dezimalstellen | Beträge max. 2 Nachkommastellen |
Wogegen wird geprüft? Gegen die Werte im Dokument selbst – also interne Konsistenz. Die EN 16931 prüft, ob die Summen aufgehen, ob zu jeder USt-Kategorie eine Aufschlüsselung existiert und ob Pflichtfelder gefüllt sind. Sie prüft nicht, ob die Werte in der realen Welt stimmen.
Technisch werden die Regeln als Schematron ausgeliefert (CEN/TC 434, Validation Artefacts), jeweils in einer Variante für UBL und für CII. Welche BT-Felder wofür stehen, zeigt unser Leitfaden zu den BT-Feldern; was sich mit der EN 16931 in 2026 ändert, steht im Beitrag zu EN 16931:2026, XRechnung 4.0 und ViDA.
③ Die Syntax: UBL oder CII
Die EN 16931 kennt zwei gleichwertige Syntaxen (EN 16931-3):
- UBL 2.1 (OASIS) – international verbreitet, Standard im Peppol-Netz
- UN/CEFACT CII D16B – Basis von ZUGFeRD/Factur-X
Geprüft wird hier per XSD-Schema: Ist das XML wohlgeformt, stehen die Elemente an der richtigen Stelle, haben Datum und Betrag den richtigen Datentyp? Das Syntax-Binding übersetzt die semantischen BTs in konkrete XPaths. Beispiel BT-1 Rechnungsnummer:
| Syntax | XPath |
|---|---|
| UBL | /Invoice/cbc:ID |
| CII | /rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:ID |
Merke: XSD-valide heißt nur „strukturell korrektes XML“. Ein CII-Dokument ohne Rechnungsnummer, ohne Käufer und mit falschen Summen kann das Schema problemlos bestehen.
④ Die Spezialisierungen: XRechnung, Peppol, ZUGFeRD
Die EN 16931 ist bewusst offen gehalten. Länder und Netzwerke dürfen sie per CIUS (Core Invoice Usage Specification) einschränken – also Felder zur Pflicht machen, Codelisten verengen, Wertebereiche begrenzen. Erweitern dürfen sie nur über offizielle Extensions.
XRechnung (KoSIT)
Die XRechnung ist der deutsche CIUS, herausgegeben von der KoSIT in Bremen. Sie ergänzt die EN-Regeln um die BR-DE-xx-Regeln, z. B.:
| Regel | Inhalt |
|---|---|
| BR-DE-1 | Zahlungsanweisungen (BG-16) müssen vorhanden sein |
| BR-DE-2 / -5 / -6 / -7 | Verkäufer-Kontakt mit Name, Telefon und E-Mail |
| BR-DE-15 | Käuferreferenz (BT-10, im B2G die Leitweg-ID) ist Pflicht |
| BR-DE-16 | USt-IdNr. oder Steuernummer des Verkäufers bei bestimmten USt-Kategorien |
Geprüft wird mit dem KoSIT-Validator und der jeweiligen Validator-Konfiguration für die gültige XRechnung-Version. Der Prüfbericht unterscheidet zwischen Error (Ablehnung) und Warning (Hinweis). Die XRechnung gibt es in beiden Syntaxen – UBL und CII. Sie ist im öffentlichen Auftragswesen (B2G) Pflichtformat und im B2B-Bereich als „reine“ XML-Rechnung verbreitet. Die typischen Meldungen und ihre Lösung zeigt unsere Übersicht der häufigsten Validierungsfehler.
ZUGFeRD / Factur-X (FeRD, FNFE)
ZUGFeRD ist ein hybrides Format: ein PDF/A-3 für das menschliche Auge, darin eingebettet eine CII-XML-Datei (factur-x.xml). Inhaltlich ist ZUGFeRD identisch mit dem französischen Factur-X. Entscheidend sind die Profile – sie bestimmen, wie viel strukturierte Information im XML steckt:
| Profil | EN-16931-konform? | Als E-Rechnung nach §14 UStG nutzbar? |
|---|---|---|
| MINIMUM | Nein (nur Kopfdaten) | Nein |
| BASIC WL | Nein (keine Positionen) | Nein |
| BASIC | Ja (Teilmenge) | Ja |
| EN 16931 (ehem. COMFORT) | Ja | Ja |
| EXTENDED | Ja, plus Erweiterungen | Ja |
| XRECHNUNG | Ja, plus BR-DE-Regeln | Ja |
Jedes Profil hat eigene Schematron-Regeln, die zusätzlich zu den EN-Regeln greifen. Und es kommt eine eigene Prüfebene hinzu: das PDF selbst (siehe Schicht ⑤). Mehr zu den Grenzen von BASIC WL steht in unserem Beitrag ZUGFeRD BASIC WL, die Formatwahl erklärt XRechnung vs. ZUGFeRD.
Wichtig für die Praxis: Bei Abweichungen zwischen PDF-Ansicht und XML ist nach Auffassung der Finanzverwaltung grundsätzlich der XML-Teil maßgeblich. Kein Standard-Validator vergleicht das, was im PDF steht, mit dem, was im XML steht.
Peppol BIS Billing 3.0 (OpenPeppol)
Peppol ist zweierlei: ein Dokumentstandard und ein Transportnetz. Als Dokumentstandard ist Peppol BIS Billing 3.0 ebenfalls ein CIUS der EN 16931 (in der Regel UBL) mit eigenen Regeln:
PEPPOL-EN16931-Rxxx: netzweite Regeln, z. B. R001 (Business Process muss angegeben sein), R008 (keine leeren Elemente)- Länderspezifische Regeln (z. B.
NO-R-,DK-R-,SE-R-), die nur greifen, wenn der Verkäufer aus dem jeweiligen Land kommt
Eine XRechnung kann über Peppol transportiert werden – sie wird dann gegen die XRechnung-Regeln geprüft, nicht gegen Peppol BIS. Welche Regeln greifen, steuert die CustomizationID im Dokument.
⑤ Container und Transport
Diese Schicht prüft nicht den Rechnungsinhalt, sondern das „Drumherum“.
Bei ZUGFeRD
- Ist das PDF wirklich PDF/A-3 (geprüft z. B. mit veraPDF)?
- Ist die XML-Datei mit dem richtigen Namen eingebettet (
factur-x.xml, bei älteren Versionenzugferd-invoice.xml)? - Stimmt die Beziehung
AFRelationship(typischAlternativeoderData)? - Passen die XMP-Metadaten (Profil, Version, Dateiname) zum tatsächlichen XML?
Bei Peppol
- Ist der Empfänger im SMP registriert und für diesen Dokumenttyp empfangsbereit?
- Stimmt die Participant ID mit Schema-Kennung, z. B.
0204:(Leitweg-ID),9930:(deutsche USt-IdNr.) oder0088:(GLN)? - Ist der Umschlag (SBDH) korrekt, läuft die AS4-Übertragung signiert und verschlüsselt?
Ein klassischer Fehler bei ZUGFeRD: Das XML ist perfekt, aber die XMP-Metadaten deklarieren ein anderes Profil – der Validator des Empfängers lehnt ab. Bei Peppol validiert der sendende Access Point das Dokument vor dem Versand; ein ungültiges Dokument kommt gar nicht erst im Netz an.
⑥ Stammdaten und Plausibilität: VIES, IBAN & Co.
Hier liegt die Ebene, die die meisten Validatoren nicht abdecken – und die in der Praxis die teuersten Fehler verursacht. Schematron prüft Struktur und interne Konsistenz. Ob ein Wert in der echten Welt existiert, kann es nicht wissen.
USt-IdNr.: Format vs. Existenz
| Prüfung | Was sie leistet | Wo |
|---|---|---|
| Ländercode-Präfix | Beginnt die ID mit einem gültigen Ländercode? | Schematron (z. B. BR-CO-09) |
| Formatprüfung | DE + 9 Ziffern, ATU + 8 Ziffern … | Regex, eigene Logik |
| Existenzprüfung | Ist die Nummer aktuell gültig vergeben? | VIES (EU-Kommission) |
| Qualifizierte Bestätigung | Gehören Nummer, Name und Anschrift zusammen? | BZSt (§18e UStG), nur für ausländische IDs |
Besonders kritisch bei innergemeinschaftlichen Lieferungen (USt-Kategorie K, BR-IC-Regeln) und Reverse Charge (AE): Die EN 16931 verlangt nur, dass die USt-IdNr. des Käufers vorhanden ist. Ob sie gültig ist, entscheidet aber über die Steuerfreiheit nach §6a UStG – die gültige USt-IdNr. des Erwerbers ist seit 2020 materielle Voraussetzung.
IBAN: Prüfsumme statt Präsenz
Die EN 16931 prüft bei SEPA-Überweisung (Zahlungsart 58) im Wesentlichen, dass eine Kontokennung angegeben ist. Ob die IBAN stimmt, ist eine eigene Prüfung:
- Struktur je Land (DE: 22 Zeichen)
- Prüfziffer nach ISO 13616 / Modulo 97 – fängt Zahlendreher zuverlässig ab
- optional: BIC-Plausibilität und Abgleich mit dem Lieferantenstamm (Schutz vor Rechnungsbetrug durch geänderte Bankverbindungen)
Weitere Stammdaten-Checks
- Leitweg-ID: Aufbau und Prüfziffer (ebenfalls Modulo 97-10) – entscheidend für die Zustellung im B2G
- Codelisten: Rechnungstyp (UNTDID 1001: 380 Rechnung, 381 Gutschrift/Korrektur, 384 korrigierte Rechnung, 389 Gutschriftsverfahren), Zahlungsart (UNTDID 4461), USt-Kategorie (UNTDID 5305), Einheiten (UN/ECE Rec. 20), elektronische Adressen (EAS)
- Bestellnummer, Lieferantennummer, Kostenstelle: Abgleich gegen das ERP des Empfängers – keine Norm-, aber eine Prozessanforderung
Was wird gegen was geprüft? Die Matrix
| Fehlerbild | XSD | EN 16931 | XRechnung / Peppol / Profil | PDF/A | VIES / IBAN / Stamm | Nur UStG / Mensch |
|---|---|---|---|---|---|---|
| Falsch verschachteltes Element | ✅ | |||||
| Rechnungsnummer fehlt | ✅ | |||||
| Summen gehen nicht auf | ✅ | |||||
| Reverse Charge ohne Käufer-USt-IdNr. | ✅ | |||||
| Leitweg-ID / Käuferreferenz fehlt | ✅ (BR-DE-15) | |||||
| Verkäufer-Telefon/-E-Mail fehlt | ✅ (BR-DE) | |||||
| Leeres XML-Element | ✅ (Peppol) | |||||
| PDF ist kein PDF/A-3 | ✅ | |||||
| XMP-Profil passt nicht zum XML | ✅ | ✅ | ||||
| USt-IdNr. existiert nicht | ✅ | |||||
| IBAN mit Zahlendreher | ✅ | |||||
| Leistungsdatum fehlt | ✅ | |||||
| Rechnungsnummer doppelt vergeben | ✅ | |||||
| PDF-Ansicht ≠ XML-Inhalt | ✅ |
Die richtige Prüfreihenfolge
Ein sauberer Validierungsprozess arbeitet die Schichten von außen nach innen ab und bricht früh ab, wenn eine Basis-Schicht scheitert:
- 1
Container: Ist es ein PDF/A-3 mit eingebettetem XML – oder reines XML?
- 2
Syntax erkennen: UBL oder CII? Welche CustomizationID, welches Profil?
- 3
XSD: Strukturell gültig? Wenn nein: Abbruch, weitere Regeln sind sinnlos.
- 4
EN 16931 Schematron: Pflichtfelder, Rechenregeln, USt-Logik.
- 5
CIUS-Schematron: XRechnung (BR-DE), Peppol BIS oder ZUGFeRD-Profilregeln – passend zur deklarierten Kennung.
- 6
Stammdaten: USt-IdNr. per VIES, IBAN-Prüfziffer, Leitweg-ID, Abgleich mit Lieferanten- und Bestellstamm.
- 7
Steuerliche Plausibilität: Leistungsdatum, Steuerbefreiungshinweis, Dubletten, Gutschriftskennzeichnung.
Die Schritte 1–5 sind standardisiert und deterministisch. Die Schritte 6–7 entscheiden in der Praxis darüber, ob die Rechnung durch die Buchhaltung läuft – oder als Rückfrage zurückkommt.
Fazit: „Valide“ ist immer eine Aussage über eine Schicht
Wer eine E-Rechnung prüft, sollte immer sagen, wogegen: XSD-valide, EN-16931-konform, XRechnung-konform, Peppol-konform – oder steuerlich vollständig. Die Schichten bauen aufeinander auf, aber keine ersetzt die andere. Die größten Risiken liegen dort, wo die standardisierten Validatoren aufhören: bei Stammdaten wie USt-IdNr. und IBAN und bei den Pflichtangaben des UStG, die die Norm nicht erzwingt.
So prüft rechnungsapi.de
rechnungsapi.de validiert XRechnung (UBL und CII) und ZUGFeRD/Factur-X über die technischen Schichten in einem API-Aufruf:
XSD, EN 16931 und XRechnung-Schematron – mit verständlichen Fehlermeldungen statt kryptischer XPaths.
ZUGFeRD-Prüfung – das eingebettete XML wird aus dem PDF/A-3 extrahiert und gegen EN 16931 und XRechnung validiert.
Erzeugung EN-16931-konformer Rechnungen – bei denen die Rechenregeln (BR-CO) von vornherein stimmen.
Betrieb in Deutschland, DSGVO-konform – per REST-API, SDK oder MCP-Server direkt aus KI-Assistenten nutzbar.
Wie Sie die Prüfung per KI-Assistent aufrufen, beschreibt unser Beitrag zum MCP-Server und SDK.
Häufige Fragen
Ist eine ZUGFeRD-Rechnung im Profil BASIC WL eine E-Rechnung?
Nein. MINIMUM und BASIC WL erfüllen die EN 16931 nicht und gelten in Deutschland nicht als E-Rechnung im Sinne von §14 UStG.
Muss ich im B2B-Bereich XRechnung nutzen?
Nein. Jedes EN-16931-konforme Format ist zulässig, also auch ZUGFeRD ab Profil BASIC oder Peppol BIS. XRechnung ist im B2G-Bereich Pflicht.
Prüft der KoSIT-Validator die USt-IdNr.?
Nicht auf Existenz. Er prüft, ob sie vorhanden ist und mit einem Ländercode beginnt. Ob sie gültig vergeben ist, zeigt erst eine VIES-Abfrage.
Was ist der Unterschied zwischen Error und Warning im Prüfbericht?
Errors verletzen eine Pflichtregel, die Rechnung kann abgelehnt werden. Warnings sind Empfehlungen: Die Rechnung ist formal gültig, aber nicht optimal.
Jetzt Ihre E-Rechnung prüfen
XRechnung oder ZUGFeRD hochladen und in Sekunden sehen, welche Regel auf welcher Schicht verletzt ist. Kostenlos starten, keine Kreditkarte erforderlich.
Quellen
§14 UStG in der Fassung des Wachstumschancengesetzes; BMF-Schreiben zur E-Rechnung vom 15.10.2024; EN 16931-1 und EN 16931-3 (CEN/TC 434) mit Validation Artefacts; XRechnung-Spezifikation und KoSIT-Validator (xeinkauf.de); ZUGFeRD 2.x / Factur-X (FeRD, FNFE-MPE); Peppol BIS Billing 3.0 (OpenPeppol); ISO/IEC 19757-3 (Schematron); ISO 13616 (IBAN); VIES (EU-Kommission).