XRechnung validieren und die häufigsten Fehler beheben
Laden Sie das XML in den kostenlosen Validator oder schicken Sie es an die API, und Sie bekommen jeden Befund mit Regel-ID und Fundstelle. Hier steht, wie Sie den Prüfbericht lesen und wie Sie die Fehler beheben, die am häufigsten auftreten.
Stand 19. Oktober 2026
So läuft die Prüfung
Der Validator liest die Spezifikationskennung (BT-24), um die passenden Regeln zu wählen, und führt dann den offiziellen KoSIT-Validator mit der offiziellen XRechnung-Konfiguration aus, in drei Schritten:
- XML-Schema (UBL 2.1 oder CII): Struktur, Reihenfolge der Elemente, Datentypen.
- Regeln der EN 16931 (
BR-*,BR-CO-*,BR-CL-*…), die europäischen Kernregeln. - XRechnung-Regeln (
BR-DE-*), die deutschen Ergänzungen.
Jeder Befund hat einen Schweregrad. Fehler (fatal) machen die Rechnung ungültig. Warnungen nicht, Empfänger können sich trotzdem daran stoßen. Hinweise (information) sind Empfehlungen, etwa BR-DE-TMP-32.
curl https://validate.invoir.dev/api/v1/validate \
-H "Authorization: Bearer inv_IHR_KEY" \
-F [email protected]
Es wird nichts gespeichert: Dateien werden im Arbeitsspeicher verarbeitet und verworfen. Den JSON-Bericht beschreibt die API-Doku (Englisch).
Schemafehler (ohne Regel-ID)
Passt das XML nicht zum Schema, erscheinen Parser-Meldungen mit Zeilennummer statt Regel-IDs. Die üblichen Ursachen:
- Reihenfolge. In UBL müssen die Elemente in der Reihenfolge des Schemas stehen, zum Beispiel
cac:TaxTotal, danncac:LegalMonetaryTotal, dann diecac:InvoiceLine-Elemente. XML aus einem Dictionary zu erzeugen bricht das oft. - Datumsangaben. UBL erwartet
2026-10-19, CII<udt:DateTimeString format="102">20261019</udt:DateTimeString>. - Zahlen. Punkt als Dezimaltrennzeichen, keine Tausenderpunkte. (Beträge mit mehr als zwei Nachkommastellen bestehen das Schema, scheitern aber an den
BR-DEC-*-Regeln.) - Namensräume. Ein falscher oder fehlender Namespace macht jedes Element „unerwartet“.
XRechnung-Regeln (BR-DE)
BR-DE-15Das Element „Buyer reference“ (BT-10) muss übermittelt werden- Der häufigste Fehler. Bei Behörden gehört hier die Leitweg-ID hin. Bei Unternehmen die Referenz, die der Kunde verlangt (Bestellnummer, Kostenstelle). UBL:
cbc:BuyerReference; CII:ram:BuyerReferenceim ApplicableHeaderTradeAgreement. BR-DE-2,BR-DE-5,BR-DE-6,BR-DE-7Verkäuferkontakt, Ansprechpartner, Telefon, E-Mail- XRechnung verlangt die Gruppe „Seller contact“ (BG-6) mit Ansprechpartner oder Abteilung (BT-41), Telefonnummer (BT-42) und E-Mail-Adresse (BT-43). Die Warnungen
BR-DE-27undBR-DE-28folgen, wenn die Telefonnummer weniger als drei Ziffern hat oder die E-Mail-Adresse nicht plausibel ist. BR-DE-1Eine Rechnung muss Angaben zu „Payment instructions“ (BG-16) enthalten- Geben Sie die Zahlungsart an. Bei Code 30 oder 58 (Überweisung, SEPA-Überweisung) verlangt
BR-DE-23-adie Gruppe „Credit transfer“ (BG-17) undBR-61die Kontokennung (BT-84, meist die IBAN).BR-DE-19warnt, wenn eine SEPA-IBAN nicht korrekt aussieht. BR-DE-3,BR-DE-4,BR-DE-8,BR-DE-9Ort und Postleitzahl- Verkäufer- und Käuferadresse brauchen beides.
BR-DE-16USt-IdNr. oder Steuernummer des Verkäufers- Werden die Steuercodes S, Z, E, AE, K, G, L oder M verwendet, muss die USt-IdNr. (BT-31), die Steuernummer (BT-32) oder ein Steuervertreter (BG-11) angegeben sein.
BR-DE-14Das Element „VAT category rate“ (BT-119) muss übermittelt werden- Jeder Eintrag der Umsatzsteueraufschlüsselung trägt seinen Steuersatz, auch 0 bei steuerfreien oder nullbesteuerten Kategorien.
BR-DE-21(Warnung) Spezifikationskennung- BT-24 soll der Kennung des Standards XRechnung entsprechen, für Version 3.0
urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0. BR-DE-TMP-32(Hinweis) Liefer- oder Leistungsdatum- Geben Sie das tatsächliche Lieferdatum (BT-72), einen Abrechnungszeitraum (BG-14) oder an jeder Position einen Zeitraum (BG-26) an.
Regeln der EN 16931, die auch in XRechnungen scheitern
BR-CO-15,BR-CO-13,BR-CO-10,BR-CO-16Summen- Die Summen müssen sich aus den gerundeten Werten in der Datei ergeben. Rechnen Sie mit dem, was Sie schreiben, nicht mit internen Gleitkommazahlen.
BR-CO-17,BR-S-08,BR-S-09Umsatzsteueraufschlüsselung- Die Steuer je Kategorie und Satz auf den Nettobetrag berechnen und einmal auf zwei Stellen runden. Rundung pro Position führt zu Cent-Differenzen.
BR-CL-23Mengeneinheit- Codes nach UN/ECE Rec 20/21:
C62für Stück,HURfür Stunden. „Stk“ scheitert.
Alle Regelfamilien der EN 16931 erklärt die Seite EN 16931 (Englisch).
Was ein bestandener Prüfbericht nicht sagt
- Ob die Leitweg-ID existiert und zur richtigen Behörde gehört.
- Ob das Empfangsportal eigene Prüfungen ergänzt (manche tun das).
- Ob die Rechnung inhaltlich stimmt: Preise, Mengen, Kunde.
Eine Validierung ist keine Voraussetzung für den Vorsteuerabzug, das BMF empfiehlt aber, jede E-Rechnung schon bei Erstellung und Versand zu prüfen (BMF-FAQ, Frage 7). Bauen Sie den API-Aufruf in Tests und Versand ein, dann verlässt keine Rechnung Ihr System, die an den offiziellen Regeln scheitert.
Datei im Browser prüfen – oder per API. Der kostenlose Validator prüft nach den offiziellen Regeln (KoSIT, CEN- und Peppol-Schematron, Mustang, veraPDF) und nennt jeden Fehler mit Regel-ID. Es wird nichts gespeichert. Dieselbe Prüfung gibt es als einen HTTP-Aufruf mit kostenlosem API-Key: 25 Dokumente im Monat, ohne Kreditkarte.
Quellen
- KoSIT: Validator-Konfiguration XRechnung (Regel-IDs und -texte), XRechnung.
- CEN/TC 434: Validierungsartefakte der EN 16931.
- Bundesministerium der Finanzen: Fragen und Antworten zur E-Rechnung, Frage 7.