Kurz gesagt
- Der KoSIT Validator ist eine Java-Software. Er prüft erst zusammen mit einer Prüfkonfiguration (für XRechnung: validator-configuration-xrechnung).
- Er ist die Referenz für XRechnung: Schema, EN16931, BR-DE-Regeln und eine Empfehlung „acceptable“ oder „reject“.
- Für eine schnelle Kontrolle ohne Java prüft unser Online-Validator eine XRechnung gegen die EN16931-Regeln und die BR-DE-Regeln der KoSIT, ohne XML-Schema-Prüfung. Für die verbindliche XRechnung-Konformität nehmen Sie den KoSIT Validator.
Was ist der KoSIT Validator?
Die Koordinierungsstelle für IT-Standards (KoSIT) in Bremen betreut den Standard XRechnung im Auftrag von Bund und Ländern. Für die Prüfung von E-Rechnungen stellt sie ein eigenes Werkzeug bereit: den KoSIT Validator, oft auch „KoSIT-Prüftool“ oder „XRechnung-Prüftool“ genannt. Der Quellcode liegt öffentlich auf GitHub unter itplr-kosit/validator.
Technisch ist der Validator eine allgemeine XML-Prüfmaschine. Er erkennt das Format eines Dokuments, prüft es gegen XML Schema und Schematron, erzeugt einen Bericht und berechnet daraus eine Annahmeempfehlung. Was genau geprüft wird, steht nicht im Programm selbst, sondern in einer Szenario-Konfiguration (scenarios.xml). Ein Szenario sagt: Für dieses Dokumentformat gelten diese Schemata, diese Schematron-Dateien und diese Regeln für den Bericht.
Für XRechnung veröffentlicht die KoSIT diese Konfiguration separat als validator-configuration-xrechnung. Sie enthält die UBL-2.1- und CII-Schemata, die EN16931-Schematron des CEN und die Schematron der CIUS XRechnung und der Extension XRechnung. Die Releases sind nach Datum benannt und nennen die passende XRechnung-Version, zuletzt die 3.0-Linie.
Installation und Aufruf
- Java installieren. Die Standalone-JAR läuft mit Java 11 oder neuer.
- Validator laden. Auf der Release-Seite von itplr-kosit/validator liegt ein ZIP mit den JAR-Varianten. Sie brauchen
validator-<version>-standalone.jar. Bis Version 1.5.0 hieß die Dateivalidationtool-<version>-standalone.jar; ältere Anleitungen nutzen noch diesen Namen. - XRechnung-Konfiguration laden und in einen Ordner entpacken. Darin liegt die
scenarios.xml. - Rechnung prüfen:
java -jar validator-<version>-standalone.jar \ -s <konfig>/scenarios.xml \ -r <konfig> \ -h rechnung.xml
-s nennt die Szenario-Datei, -r den Ordner mit Schemata und Schematron (das „Repository“). -h schreibt den HTML-Teil des Berichts als Datei, -p gibt den Bericht auf der Konsole aus. Sie können mehrere Dateien auf einmal übergeben. --help zeigt alle Optionen.
Daemon-Modus: Mit -D startet der Validator als HTTP-Dienst. Ihre Anwendung schickt die XML dann per POST und erhält den Bericht zurück. So binden viele ERP- und Rechnungseingangssysteme die Prüfung ein, ohne für jede Rechnung eine neue Java-Instanz zu starten.
java -jar validator-<version>-standalone.jar \ -s <konfig>/scenarios.xml -r <konfig> -D
In Java-Anwendungen können Sie den Validator auch als Bibliothek einbinden (Maven-Koordinaten org.kosit:validator).
Den Prüfbericht lesen
Der Validator schreibt immer einen XML-Bericht. Die XRechnung-Konfiguration bettet darin eine HTML-Ansicht ein: oben die Empfehlung, darunter alle Meldungen mit Regel-ID, Schweregrad, Text und XPath zur betroffenen Stelle. Darunter folgt eine lesbare Darstellung der Rechnung.
- acceptable: keine Fehler, die laut Szenario zur Ablehnung führen. Warnungen sind möglich.
- reject: mindestens ein Fehler (Schema oder Schematron-Regel mit Level „error“). Der Empfänger kann die Rechnung zurückweisen.
Häufige Gründe für „reject“ bei XRechnung sind eine fehlende oder falsche Leitweg-ID als Käuferreferenz (BR-DE-15, siehe Leitweg-ID), fehlende Kontaktdaten des Verkäufers (BR-DE-2, BR-DE-5 bis BR-DE-7), eine falsche Spezifikationskennung in BT-24 oder Summenfehler aus der EN16931 wie BR-CO-15. Die EN16931-Fehler und die BR-DE-Fehler finden Sie auch mit unserem Online-Validator; Schemafehler zeigt nur der KoSIT Validator.
KoSIT Validator und peppolvalidator.com: was geprüft wird
Unser Validator ist kein Nachbau und keine Online-Version des KoSIT Validators. Er führt die offiziellen Schematron-Regeln aus, in der Cloud, ohne Installation: die EN16931-Regeln des CEN und, bei einer XRechnung, die XRechnung-Regeln der KoSIT mit den Schweregraden der KoSIT-Szenarien. Die Peppol-BIS-Billing-3.0-Regeln führt er nur bei Peppol-BIS-Dateien aus, nicht bei einer XRechnung. Die folgende Tabelle zeigt ehrlich, wo die Unterschiede liegen.
| Prüfung | KoSIT Validator + XRechnung-Konfiguration | peppolvalidator.com |
|---|---|---|
| XML Schema (UBL 2.1 / CII D16B) | Ja | Nein, nur Wohlgeformtheit und Schematron |
| EN16931-Geschäftsregeln (BR-, BR-CO-, BR-CL-) | Ja | Ja, UBL und CII (EN16931 1.3.16) |
| XRechnung-CIUS (BR-DE-*) und Extension (BR-DEX-*) | Ja | Ja, KoSIT-Schematron 2.6.0 (XRechnung 3.0.2) |
| Schweregrade nach KoSIT-Szenario | Ja | Ja, für XRechnung 3.0 (Standard, Extension, CVD) |
| Peppol BIS Billing 3.0 (PEPPOL-EN16931-*) | Nur mit eigener Peppol-Konfiguration | Ja, für Peppol-BIS-Dateien (UBL). Nicht für XRechnung |
| Annahme-/Ablehnungsempfehlung nach KoSIT-Szenario | Ja | Nein, Liste aus Fehlern und Warnungen |
| Offizielles Werkzeug der KoSIT | Ja | Nein, unabhängiges Angebot |
| HTML-Prüfbericht | Ja, lokal (Option -h) | Ja, im Browser |
| ZUGFeRD-/Factur-X-PDF | Nein, nur extrahierte XML | Nein, nur XML |
| Installation | Java 11+, JAR und Konfiguration | Keine, im Browser |
Wann nehme ich welches Werkzeug?
Online-Vorprüfung mit unserem Validator, wenn Sie schnell wissen wollen, ob eine Rechnung die europäische Norm und die XRechnung-Regeln erfüllt: beim Testen einer neuen Rechnungssoftware, bei einer Rückfrage eines Kunden, bei Rechnungen über Peppol an Empfänger in anderen Ländern oder wenn Sie kein Java installieren dürfen. Sie sehen jeden Fehler mit Regel-ID und Hinweis zur Behebung.
KoSIT Validator, wenn die Rechnung als XRechnung an eine öffentliche Stelle geht (ZRE, OZG-RE oder ein Landesportal), wenn ein Empfänger ausdrücklich XRechnung-Konformität verlangt oder wenn Sie die Prüfung automatisiert im eigenen System brauchen. Nur der KoSIT Validator mit der aktuellen Konfiguration prüft zusätzlich das XML Schema und gibt die offizielle Annahmeempfehlung.
In der Praxis ergänzen sich beide: Erst die EN16931- und BR-DE-Fehler online finden und beheben, dann die XRechnung im KoSIT Validator abschließend prüfen. Mehr zu den Formaten auf XRechnung Validator, E-Rechnung Validator und im Vergleich ZUGFeRD, Factur-X und XRechnung.
Weiterführende Seiten
- XRechnung Validator: XRechnung online gegen die EN16931- und BR-DE-Regeln prüfen.
- ZUGFeRD und ZUGFeRD Validator: Profile, Aufbau und Prüfung der CII-XML.
- E-Rechnungspflicht: Fristen 2025, 2027 und 2028.
- Leitweg-ID: Aufbau, Prüfziffer und BR-DE-15.
- E-Rechnung in Deutschland: Überblick zu Pflicht, Formaten und Peppol.
- Peppol-Validierungsfehler: alle BR- und PEPPOL-Regeln mit Lösung (englisch).
Häufige Fragen
Was ist der KoSIT Validator?
Der KoSIT Validator ist ein quelloffenes Java-Prüfwerkzeug der Koordinierungsstelle für IT-Standards (KoSIT). Er prüft XML-Dokumente gegen XML Schema und Schematron und erzeugt daraus einen Prüfbericht mit einer Empfehlung zur Annahme oder Ablehnung. Für XRechnung wird er zusammen mit der offiziellen Prüfkonfiguration validator-configuration-xrechnung eingesetzt. Beide Projekte liegen auf GitHub unter itplr-kosit.
Ist der KoSIT Validator kostenlos?
Ja. Der Validator steht unter der Apache-Lizenz 2.0, die XRechnung-Konfiguration ist ebenfalls frei auf GitHub verfügbar. Sie brauchen nur eine Java-Laufzeitumgebung (Java 11 oder neuer für die Standalone-JAR) und die beiden Downloads von GitHub.
Gibt es den KoSIT Validator auch online?
KoSIT selbst liefert in erster Linie die Software zum lokalen Betrieb. Mehrere Anbieter betreiben Webdienste, die den KoSIT Validator mit der XRechnung-Konfiguration ausführen. Unser Validator auf dieser Seite ist eine andere Art von Werkzeug: Er nutzt nicht den KoSIT Validator, sondern führt dieselben Schematron-Regeln selbst aus, die EN16931-Regeln des CEN und die XRechnung-Regeln der KoSIT (BR-DE-*), für UBL und CII. Peppol-BIS-Regeln wendet er auf eine XRechnung nicht an. Eine XML-Schema-Prüfung fehlt, und er ist kein offizielles Werkzeug der KoSIT.
Prüft peppolvalidator.com die BR-DE-Regeln der XRechnung?
Ja. Bei einer XRechnung (UBL oder CII) prüfen wir die EN16931-Regeln 1.3.16 (BR-, BR-CO-, BR-CL-, Syntaxregeln) und die XRechnung-Regeln der KoSIT (BR-DE-*, BR-DEX-*, BR-TMP-*) aus dem offiziellen xrechnung-schematron 2.6.0 für XRechnung 3.0.2. Die Schweregrade passen wir wie die KoSIT-Szenarien an; so ist zum Beispiel ein unbekannter Einheitencode (BR-CL-23) bei XRechnung nur eine Warnung. Die Peppol-BIS-Billing-3.0-Regeln wenden wir auf eine XRechnung nicht an. Es fehlen die XML-Schema-Prüfung und die formale Empfehlung „acceptable“ oder „reject“. Für die verbindliche Prüfung bleibt der KoSIT Validator die Referenz.
Wie rufe ich den KoSIT Validator auf?
Laden Sie die Standalone-JAR des Validators und das ZIP der XRechnung-Konfiguration herunter, entpacken Sie die Konfiguration und rufen Sie auf: java -jar validator-<version>-standalone.jar -s scenarios.xml -r <Konfigurationsordner> -h rechnung.xml. Die Option -h schreibt den HTML-Bericht ins Dateisystem. Bis Version 1.5.0 hieß die Datei validationtool-<version>-standalone.jar.
Was bedeutet „acceptable“ und „reject“ im Prüfbericht?
Der KoSIT Validator berechnet aus allen Schema- und Schematron-Ergebnissen eine Empfehlung. „acceptable“ bedeutet: keine Fehler, die nach dem Szenario zur Ablehnung führen. „reject“ bedeutet: mindestens ein Fehler, und der Empfänger darf die Rechnung zurückweisen. Warnungen allein führen nicht zur Ablehnung.
Welche Version der XRechnung-Konfiguration brauche ich?
Nehmen Sie die aktuelle Release von validator-configuration-xrechnung, die zu der XRechnung-Version passt, die Ihr Empfänger verlangt. Die Releases sind nach Datum benannt und nennen die kompatible XRechnung-Version (derzeit die 3.0-Linie). Ältere Konfigurationen können gültige Rechnungen ablehnen oder neue Regeln nicht kennen.
Kann der KoSIT Validator ZUGFeRD-PDFs prüfen?
Nicht direkt. Der Validator prüft XML. Bei ZUGFeRD oder Factur-X müssen Sie zuerst die eingebettete CII-XML (factur-x.xml bzw. xrechnung.xml) aus dem PDF/A-3 extrahieren. Auch unser Online-Validator nimmt nur XML-Dateien an.