E-Rechnung prüfen: XRechnung und ZUGFeRD validieren und lesbar machen
XML oder PDF ablegen, fertig. Die Datei wird im Arbeitsspeicher eines Servers in der EU gegen das Regelwerk des KoSIT-Validators geprüft, jede Meldung kommt mit Regel-ID zurück, und darunter steht die Rechnung so, wie ein Mensch sie liest. Gespeichert wird sie nicht.
Leg eine XRechnung als XML (UBL oder CII) oder ein ZUGFeRD- bzw. Factur-X-PDF mit eingebettetem XML ab.
Dieses Tool läuft im Browser und braucht JavaScript.
Beobachtungen, keine Urteile. Deine Eingabe wird für dieses Ergebnis verarbeitet und in ein Nutzungsjournal geschrieben, das die Datenschutzerklärung beschreibt; sonst wird nichts gespeichert.
Was geprüft wird und was nicht
Seit dem 1. Januar 2025 muss jedes Unternehmen in Deutschland E-Rechnungen nach EN 16931 empfangen können; öffentliche Auftraggeber verlangen die XRechnung schon seit November 2020. Im Posteingang landen deshalb zwei Sorten Datei: die XRechnung, reines XML in UBL- oder CII-Syntax, und die ZUGFeRD- oder Factur-X-Rechnung, ein PDF/A-3 mit demselben XML als Anhang. Beide werden mit denselben Regeln geprüft, und beide nimmt dieses Tool an.
Das Regelwerk
Geprüft wird mit der Validierungskonfiguration, die die KoSIT (Koordinierungsstelle für IT-Standards) für die XRechnung veröffentlicht. Das ist die Referenz, auf der die Rechnungseingangsplattformen von Bund und Ländern ihre Annahmeprüfung aufbauen. Das Tool arbeitet in drei Schichten: XML-Schema der Syntax, die Schematron-Regeln der EN 16931 (BR-xx, BR-CO-xx, BR-S-xx) und die deutschen Zusatzregeln (BR-DE-xx). Jede Meldung trägt die Regel-ID aus der Spezifikation, den Schweregrad und den Originaltext der Regel.
Zwei Regeln tauchen in der Praxis am häufigsten auf: BR-DE-15, die fehlende Käuferreferenz, in der bei öffentlichen Auftraggebern die Leitweg-ID steht, und BR-DE-2, die fehlende Kontaktgruppe des Verkäufers. Beides sieht man einer PDF-Darstellung nicht an, und beides führt bei einem Behördenportal zur Ablehnung.
Was das Tool bei einem PDF tut
Ein ZUGFeRD-PDF wird als PDF/A-3-Container geöffnet und der Anhang factur-x.xml, zugferd-invoice.xml oder xrechnung.xml herausgelöst. Das deklarierte Profil (MINIMUM, BASIC WL, BASIC, EN 16931, EXTENDED oder XRECHNUNG) wird vor der ersten Regel angezeigt. Ein PDF ohne eingebettetes XML ist keine E-Rechnung im Sinne des Standards, und genau das steht dann im Ergebnis. Die Profile MINIMUM und BASIC WL sind absichtlich keine vollständigen EN-16931-Rechnungen; bei ihnen sind Meldungen gegen die EN-16931-Regeln zu erwarten und das Profil ist das, was du zuerst lesen solltest.
Was das Tool nicht beurteilt
Ein grünes Ergebnis heißt: Die Datei erfüllt die veröffentlichten Regeln. Es heißt nicht, dass die Rechnung richtig ist. Steuersatz, Rechenweg einer Position, ob die Leitweg-ID zum gemeinten Empfänger gehört und ob ein bestimmter Empfänger das gewählte Profil überhaupt annimmt, liegen außerhalb des Regelwerks. Ein Portal kann eigene Prüfungen ergänzen. Und ein PDF, aus dem sich gültiges XML ziehen lässt, ist damit nicht als korrekter PDF/A-3-Container bescheinigt.
Wo die Datei bleibt
Der Upload wird im Arbeitsspeicher eines Servers in der EU verarbeitet und nach der Antwort verworfen: kein Schreiben auf Platte, keine Warteschlange, keine Weiterverwendung. Übrig bleibt ein Eintrag im Nutzungsjournal mit Zeitstempel und Dateigröße, wie in der Datenschutzerklärung beschrieben. Wenn Rechnungen dein Haus gar nicht verlassen sollen: Der KoSIT-Validator ist Open Source, und ein Workflow, der Rechnungen in ein Lieferantenportal lädt, kann ihn als Schritt vor dem Upload ausführen.
So läuft die Prüfung ab
-
Datei ablegen
Eine .xml-Datei gilt als die Rechnung selbst. Bei einer .pdf-Datei wird der eingebettete XML-Anhang herausgelöst; fehlt er, endet die Prüfung hier mit genau dieser Meldung.
-
Syntax und Profil erkennen
Das Wurzelelement entscheidet zwischen UBL und UN/CEFACT CII, die Customization- oder Guideline-ID benennt das Profil, etwa die URN von XRechnung 3.0 oder das Factur-X-Profil EN 16931.
-
Regeln laufen lassen
Erst das Schema, dann die Schematron-Regeln der KoSIT-Konfiguration. Meldungen kommen mit Regel-ID, Schweregrad (error, warning, information) und dem Text der Regel.
-
Rechnung lesen
Unter den Meldungen steht die Rechnung als Dokument: Verkäufer, Käufer, Positionen, Summen, Zahlungsbedingungen, Leitweg-ID. Das XML bleibt die Rechnung; die Darstellung ist eine Ansicht davon.
Fragen zur E-Rechnung
Wie kann ich eine XRechnung lesbar machen?
XML hier hochladen. Unter den Prüfmeldungen wird die Rechnung als normales Dokument dargestellt: Verkäufer, Käufer, Positionen, Summen und Zahlungsbedingungen. Die Darstellung ersetzt das XML nicht, sie zeigt es nur an.
Wie prüfe ich eine PDF-Rechnung auf ZUGFeRD?
PDF ablegen. Ist es ein PDF/A-3 mit eingebettetem XML, zieht das Tool den Anhang heraus, zeigt das deklarierte Profil und lässt die Regeln laufen. Ein PDF ohne Anhang wird als solches gemeldet, und das ist bereits die Antwort.
Ist das derselbe Validator wie bei ZRE und OZG-RE?
Es ist die Validierungskonfiguration, die die KoSIT für die XRechnung veröffentlicht und auf der die Portale von Bund und Ländern ihre Annahmeprüfung aufbauen. Ein Portal kann eigene Prüfungen ergänzen; hier zu bestehen ist notwendig, nicht hinreichend.
Heißt ein grünes Ergebnis, dass die Rechnung steuerlich korrekt ist?
Nein. Die Regeln prüfen Struktur und Geschäftsregeln des Standards. Steuersatz, Beträge und der richtige Empfänger sind Fragen an deine Buchhaltung, nicht an den Validator.
Wird die Rechnung gespeichert?
Nein. Sie wird im Arbeitsspeicher auf einem Server in der EU geprüft und nach der Antwort verworfen. Es bleibt ein Eintrag im Nutzungsjournal mit Zeitstempel und Dateigröße.
Kann ich Rechnungen vor dem Portal-Upload automatisch prüfen?
Ja. Der KoSIT-Validator läuft als Open Source auf deinen eigenen Maschinen, und ein Browserberg-Workflow, der Rechnungen in ein Lieferantenportal lädt, kann ihn als Schritt vor dem Upload-Block ausführen.
Formate und Profile, die das Tool erkennt
| XRechnung | XML in UBL 2.1 (Invoice, CreditNote) oder UN/CEFACT CII D16B; Versionen 2.x und 3.x anhand der Customization-ID |
|---|---|
| ZUGFeRD 2.x / Factur-X 1.x | PDF/A-3 mit eingebettetem XML; Profile MINIMUM, BASIC WL, BASIC, EN 16931, EXTENDED und XRECHNUNG |
| Regelwerk | KoSIT-Validierungskonfiguration für die XRechnung: Syntax-Schema, EN-16931-Schematron, deutsche BR-DE-Regeln KoSIT |
| Schweregrade | error (Pflichtregel), warning (Empfehlung), information (Kontext, den der Validator meldet) |
| Umgang mit der Datei | Verarbeitung im Arbeitsspeicher auf EU-Hardware, keine Speicherung; das Nutzungsjournal hält Zeitstempel und Größe fest |
Stand: 2026-09-08
Passende Tools und Anleitungen
- Lieferantenportal-Rechnungen Geprüfte Rechnungen in Coupa, Ariba und Co. hochladen, ohne dass jemand klickt
- JSON-Schema-Generator Das Schema für die Extraktion von Rechnungsdaten aus einer Portalseite bauen
- Audit-Log prüfen Das signierte Aktionsprotokoll eines Laufs verifizieren, der eine Rechnung hochgeladen hat
- EU-Datenresidenz Wo Sessions, Dateien und Modellaufrufe verarbeitet werden
- Alle Tools Die achtzehn Werkzeuge auf einer Seite
Den Upload nach der Prüfung automatisieren
Fünf Browserstunden, keine Karte. Hier prüfen, dann trägt ein Workflow die Rechnung in das Portal, das sie haben will.