E-Rechnung OK

Lizenzen und Regelwerke

Zuletzt aktualisiert: 26.10.2026

Die vollständige Prüfung im XRechnung-Validator verwendet die offizielle Prüfkonfiguration der Koordinierungsstelle für IT-Standards (KoSIT) und drei Bibliotheken anderer Anbieter. Diese Seite nennt Versionen, Rechteinhaber und Lizenzen. Die Lizenztexte liegen als Dateien auf unserem Server und sind unten verlinkt. Die Angaben dienen der Einhaltung der Lizenzbedingungen und sind keine Rechtsberatung.

1. Prüfkonfiguration der KoSIT für XRechnung

Release v2026-08-31 der „Validator Configuration for XRechnung“ für XRechnung 3.0.2. Sie enthält die Prüfszenarien, die XML-Schemas und die Schematron-Regeln der folgenden Abschnitte 2 bis 5. Die Bewertung („Annahme empfohlen“ oder „Ablehnung empfohlen“) bilden wir nach den Regeln dieser Konfiguration nach.

Inhalt der NOTICE-Datei:

KoSIT XML-Validator Configuration for XRechnung
Copyright 2020 Koordinierungsstelle für IT-Standards

This product includes software developed by
Coordination Office for IT-Standards (http://www.xoev.de/).

2. Schematron-Regeln der XRechnung (KoSIT) – geändert

Die Regeln der XRechnung (BR-DE-…, BR-DEX-…) aus der Konfiguration, kompiliert für die Laufzeitumgebung SaxonJS. Lizenz: Apache License 2.0 (Lizenztext), Quelle: projekte.kosit.org/xrechnung/xrechnung-schematron.

Geändert: Für die IBAN-Prüfung (Regeln BR-DE-19 und BR-DE-20) rechnet die Funktion xr:checkIBAN die Prüfziffer bei uns in Abschnitten von je neun Ziffern modulo 97. Das Ergebnis ist mathematisch identisch. Der Grund: SaxonJS rechnet ganze Zahlen ab 16 Stellen nicht immer exakt; ohne die Änderung meldete die Regel auch bei gültigen IBANs eine Warnung. Weitere Änderungen gibt es nicht. Die geänderten Dateien enthalten einen Änderungsvermerk.

3. Schematron-Regeln der EN 16931 (CEN)

Die Geschäftsregeln der Norm EN 16931 (BR-…, BR-CO-…, BR-CL-… sowie die syntaxspezifischen Regeln UBL-… und CII-…) in Version 1.3.16, unverändert, kompiliert für SaxonJS.

4. XML-Schemas UBL 2.1 (OASIS)

Die Schemas für UBL Invoice und CreditNote mit den gemeinsamen Modulen, unverändert, einschließlich der Hinweise in jeder Datei. Copyright (c) OASIS Open 2013. All Rights Reserved. Quelle: docs.oasis-open.org/ubl/os-UBL-2.1.

5. XML-Schemas UN/CEFACT Cross Industry Invoice D16B

Die Schemas der Cross Industry Invoice (CII), Version 100.D16B, unverändert. Copyright (C) UN/CEFACT (2016). All Rights Reserved. Die Schemas dürfen nur mit dem folgenden Hinweis weitergegeben werden, der in jeder Datei enthalten ist:

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to UN/CEFACT, except as needed for the purpose of developing UN/CEFACT specifications, in which case the procedures for copyrights defined in the UN/CEFACT Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by UN/CEFACT or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and UN/CEFACT DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

6. SaxonJS 2.7 (Saxonica)

SaxonJS führt die Schematron-Regeln aus. Wir verwenden die Datei SaxonJS2.rt.js unverändert. SaxonJS ist kostenlos, aber keine Open-Source-Software. Es gilt die Saxonica Public License 1.0 (Lizenztext, Quelle: saxonica.com). Copyright-Hinweis und Haftungsausschluss lauten:

Copyright: The copyright in the Software belongs to Saxonica Ltd, except for third-party components listed in the documentation that are distributed under license.

DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS." ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

SaxonJS enthält die Bibliothek big.js in Version 3.1.3 für das Rechnen mit Dezimalzahlen. Laut Dokumentation von Saxonica gilt: „big.js is Copyright (c) 2014 Michael Mclaughlin“, MIT-Lizenz (Expat) (SaxonJS-Dokumentation, Third-party Components, abgerufen am 26.10.2026).

7. libxml2-wasm 0.7.2 und libxml2

libxml2 prüft die Rechnung gegen das XML-Schema. Wir verwenden die WebAssembly-Fassung aus dem Paket libxml2-wasm unverändert.

8. @xmldom/xmldom 0.9.12

xmldom stellt SaxonJS im Hintergrundprozess (Web Worker) ein XML-Dokumentmodell (DOM) bereit, das der Browser dort nicht anbietet. Unverändert, MIT-Lizenz (Lizenztext). Copyright 2019 - present Christopher J. Brody and other contributors; Copyright 2012 - 2017 @jindw and other contributors. Quelle: github.com/xmldom/xmldom.

9. Wie wir die Übereinstimmung prüfen

Wir vergleichen die Ergebnisse mit dem Java-Validator der KoSIT (Version 1.6.3) und derselben Konfiguration: Bewertung, Prüfszenario und jede Meldung mit Regel, Stufe und Fundstelle. Grundlage sind die 86 Dateien der offiziellen XRechnung-Testsuite der KoSIT (Stand: Commit 1ce1daf vom 04.09.2026) sowie 183 eigens erzeugte Prüffälle, darunter 115 absichtlich fehlerhafte Rechnungen, 60 Rechnungen mit gültigen und ungültigen IBANs und Dateien in den Zeichenkodierungen ISO-8859-1 und UTF-16. Stand 26.10.2026 stimmen alle 269 Dateien überein. Die Texte der Schemafehler unterscheiden sich, weil die beiden Programme unterschiedliche XML-Bibliotheken nutzen; das Ergebnis der Schemaprüfung ist gleich.

Eine Abweichung zwischen SaxonJS und dem Java-Validator gleichen wir aus: Bei den Regeln BR-S-08, BR-AF-08 und BR-AG-08 (UBL) wertet SaxonJS die Toleranz von ± 1 anders aus, wenn der Steuerbasisbetrag (BT-116) genau um 1,00 von der Summe aus Positionsnettobeträgen, Zuschlägen und Nachlässen abweicht. Meldet SaxonJS eine dieser Regeln, prüfen wir sie mit exakten Dezimalwerten nach, so wie der Java-Validator rechnet.