XRechnung-Fehlercodes erklärt: BR-DE-1 bis BR-DE-28, BR-CO, PEPPOL — und wie Sie sie beheben
Der Validator sagt Ihnen was falsch ist — in der Sprache der Norm. Diese Liste übersetzt die häufigsten Codes in Klartext. „BT-…“ ist die Feldnummer der EN 16931 (Business Term), „BR-DE-…“ sind die deutschen Zusatzregeln der XRechnung.
Deutsche Zusatzregeln (BR-DE)
| Code | Klartext | Behebung |
|---|---|---|
| BR-DE-1 | Zahlungsangaben (BG-16) fehlen | Zahlungsmittel-Code (58 = SEPA-Überweisung) plus IBAN angeben |
| BR-DE-2 | Verkäufer-Kontakt (BG-6) fehlt | Kontaktname, Telefon und E-Mail des Rechnungsstellers |
| BR-DE-5 / 6 / 7 | Kontaktname / Telefon / E-Mail des Verkäufers fehlt | alle drei Felder füllen (BT-41, BT-42, BT-43) |
| BR-DE-9 / 10 / 11 | Verkäuferanschrift unvollständig (Ort, PLZ, Land) | BT-37, BT-38, BT-40 füllen |
| BR-DE-15 | Käuferreferenz (BT-10) fehlt | Leitweg-ID (öffentlich) oder Kundenreferenz eintragen — XRechnung verlangt das Feld immer |
| BR-DE-16 | USt-IdNr. oder Steuernummer des Verkäufers fehlt | BT-31 (USt-IdNr.) oder BT-32 (Steuernummer) |
| BR-DE-17 | Unzulässiger Rechnungstyp | Nur 326, 380, 384, 389, 381 … verwenden (380 Rechnung, 381 Gutschrift, 384 Korrektur) |
| BR-DE-18 | Skontoangaben falsch formatiert | Zahlungsbedingungen (BT-20) im XRechnung-Skonto-Format „#SKONTO#TAGE=…#PROZENT=…#“ |
| BR-DE-21 | Spezifikationskennung falsch | BT-24 = urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0 |
| BR-DE-23 / 24 / 25 | Zahlungsmittel 58 (Überweisung) ohne IBAN / 59 (Lastschrift) ohne Mandat / Karte ohne Angaben | zum Zahlungsmittel passende Angaben ergänzen |
| BR-DE-26 | Korrekturrechnung (384) ohne Bezug | vorangegangene Rechnungsnummer (BT-25) angeben |
Europäische Regeln (EN 16931)
| Code | Klartext | Behebung |
|---|---|---|
| BR-CO-10 | Positionssumme (BT-106) ≠ Summe der Positionen | jede Position auf 2 Stellen runden, dann addieren |
| BR-CO-13 | Nettosumme ≠ Positionen − Abschläge + Zuschläge | BT-109 neu berechnen |
| BR-CO-14 | Steuersumme ≠ Summe der Steueraufschlüsselung | BT-110 = Summe aller BT-117 |
| BR-CO-15 | Brutto ≠ Netto + Steuer | BT-112 = BT-109 + BT-110 |
| BR-CO-16 | Fälliger Betrag ≠ Brutto − Vorauszahlungen + Rundung | BT-115 prüfen (Abschlagsrechnungen!) |
| BR-S-08 / BR-S-09 | Steueraufschlüsselung für Kategorie S passt nicht zu den Positionen | pro Steuersatz genau eine Aufschlüsselung mit Basis = Summe der Positionen dieses Satzes |
| BR-AE-… | Reverse Charge ohne USt-IdNr. des Käufers / mit Steuerbetrag | Käufer-USt-IdNr. angeben, Steuer 0, Befreiungsgrund |
| BR-E-10 | Steuerbefreit (E) ohne Begründung | Befreiungsgrund als Text oder Code (VATEX-…) |
| PEPPOL-EN16931-R001 | Geschäftsprozess-ID (BT-23) fehlt | urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 eintragen |
| PEPPOL-EN16931-R004 | Spezifikationskennung unbekannt | siehe BR-DE-21 |
Strukturfehler (XSD)
„cvc-complex-type…“ oder „Element … not expected“: die XML entspricht nicht dem Schema (UBL 2.1 bzw. UN/CEFACT CII D16B). Ursache ist fast immer eine falsche Reihenfolge der Elemente oder ein Element am falschen Ort — hier hilft nur, die Datei mit einer Bibliothek zu erzeugen statt von Hand.
Warnung statt Fehler
Warnungen (z. B. fehlendes Leistungsdatum, unübliche Einheitencodes) machen die Rechnung nicht ungültig; manche Empfängersysteme lehnen trotzdem ab. Beheben Sie, was wenig kostet.
Alle Codes im Kontext sehen: Datei prüfen — der Bericht nennt Code, Meldung und die XPath-Stelle im Dokument.
Jetzt prüfen — kostenlos, ohne Anmeldung
Ziehen Sie Ihre XRechnung oder ZUGFeRD-Datei auf xrechnung.dev. Sie sehen in Sekunden, ob sie gültig ist und welche Regel verletzt wurde — geprüft mit dem offiziellen KoSIT-Prüfmodul. Entwickler: dieselbe Prüfung und das Erzeugen validierter Rechnungen als API.
Validator öffnen API-Dokumentation