Die kurze Antwort: Jeder Code im Prüfbericht deiner E-Rechnung steht für eine Prüfregel. BR-DE-15 heißt zum Beispiel: Die Käufer-Referenz (bei Behörden die Leitweg-ID) fehlt. BR-CO-10 heißt: Die Summe der Positionen stimmt nicht mit den einzelnen Positionen überein. Codes mit BR-DE sind deutsche Zusatzregeln der XRechnung, Codes wie BR-CO, BR-S oder BR-AE stammen aus der europäischen Norm EN 16931. Die Tabellen unten zeigen die häufigsten Codes nach Thema. Faustregel: Ursache in deinen Daten beheben und die Datei neu erzeugen, nicht im XML herumbessern. Prüfen kannst du eine Datei kostenlos mit dem XRechnung-Viewer, neu erstellen im Konverter, 10 E-Rechnungen pro Monat sind kostenlos.
Stand: November 2026. Grundlage sind die Prüfregeln der KoSIT für XRechnung 3.0.2 (Validator-Konfiguration vom 31. August 2026) und die Prüfregeln der Norm EN 16931 in Version 1.3.16. Die Regeltexte haben wir sinngemäß und verständlich übersetzt; maßgeblich ist der Originaltext im Prüfbericht. Mit neuen Versionen können Regeln hinzukommen, sich ändern oder wegfallen. Dieser Text ist eine praktische Arbeitshilfe und keine Steuer- oder Rechtsberatung.
So findest du deinen Code im Prüfbericht
Im Prüfbericht steht jeder Befund in einer Zeile mit Code, Grad und Text, zum Beispiel Code BR-DE-15, Grad error, Text: Das Element „Buyer reference“ (BT-10) muss übermittelt werden. Den Code suchst du in den Tabellen unten. Die Nummer in Klammern (hier BT-10) bezeichnet das betroffene Feld der Norm. Wie der ganze Bericht aufgebaut ist, was „error“, „warning“ und „information“ bedeuten und wie du nach einer Ablehnung vorgehst, erklärt der Artikel E-Rechnung abgelehnt? Prüfbericht lesen, Fehler beheben.
Kurz zur Einordnung der Codes:
- BR-01 bis BR-65: Grundregeln der EN 16931, vor allem Pflichtangaben.
- BR-CO-…: Rechenregeln und Abhängigkeiten zwischen Feldern.
- BR-S-…, BR-E-…, BR-AE-… und ähnliche: Regeln je Steuerkategorie. S steht für steuerpflichtig mit Steuersatz (19 % oder 7 %), E für steuerfrei, AE für Reverse-Charge; BR-IC-… gilt für innergemeinschaftliche Lieferungen (Kategorie K).
- BR-CL-…: Codelisten, etwa für Länder, Währungen oder Mengeneinheiten.
- BR-DE-… und PEPPOL-EN16931-R…: Zusatzregeln, die die XRechnung übernimmt (die PEPPOL-Regeln stammen aus dem Peppol-Netz). Sie greifen nur, wenn die Datei als XRechnung gekennzeichnet ist.
Die Regeln der EN 16931 sind im Prüfbericht meist englisch formuliert, die BR-DE-Regeln deutsch. Ist ein Code als Warnung oder Information eingestuft, steht das in den Tabellen dabei. Alle anderen führen beim KoSIT-Validator zur Empfehlung, die Datei zurückzuweisen. Ausnahme ist BR-CO-25, den es nicht mehr gibt (siehe Abschnitt Zahlung).
Deine Angaben als Verkäufer
| Code | Was er bedeutet | So behebst du ihn |
|---|---|---|
| BR-DE-2 | Die Kontaktdaten des Verkäufers (BG-6) fehlen ganz. | Ansprechpartner, Telefon und E-Mail ergänzen, siehe die nächsten drei Zeilen. |
| BR-DE-5 | Der Ansprechpartner (BT-41) fehlt. | Einen Namen eintragen, etwa deinen eigenen oder den der Buchhaltung. |
| BR-DE-6 | Die Telefonnummer (BT-42) fehlt. | Telefonnummer in deinen Absenderdaten ergänzen. |
| BR-DE-7 | Die E-Mail-Adresse (BT-43) fehlt. | E-Mail-Adresse ergänzen, am besten die, unter der du Rückfragen zur Rechnung beantwortest. |
| BR-DE-27, BR-DE-28 (Warnungen) | Telefonnummer mit weniger als drei Ziffern bzw. E-Mail-Adresse ohne gültige Form (genau ein @, keine Leerzeichen). | Echte Nummer statt Platzhalter, Tippfehler in der Adresse suchen. |
| BR-DE-3, BR-DE-4 | Ort (BT-37) und Postleitzahl (BT-38) des Verkäufers fehlen. | Ergänzen. Im Briefkopf reicht nicht, die Datei braucht beides als eigene Felder. |
| BR-CO-26 | Eine Kennung des Verkäufers fehlt: Verkäuferkennung (BT-29), Registernummer (BT-30) oder USt-IdNr. (BT-31). | Die Steuernummer im Steuernummer-Feld (BT-32) zählt hier nicht, in UBL-Dateien seit Regelwerk 1.3.16 auch keine SEPA-Gläubiger-ID. Ohne USt-IdNr. brauchst du eine Verkäuferkennung (BT-29) oder eine Registernummer (BT-30). |
| PEPPOL-EN16931-R020 | Die elektronische Adresse des Verkäufers (BT-34) fehlt. | Meist deine E-Mail-Adresse für Rechnungen. |
| BR-62 | Bei der elektronischen Adresse des Verkäufers fehlt die Angabe, welche Art Adresse es ist. | Bei einer E-Mail-Adresse ist das der Code EM. Das setzt dein Rechnungsprogramm; fehlt er, die Datei neu erzeugen. |
Angaben zu deinem Kunden
| Code | Was er bedeutet | So behebst du ihn |
|---|---|---|
| BR-DE-8, BR-DE-9 | Ort (BT-52) und Postleitzahl (BT-53) des Käufers fehlen. | Vollständige Anschrift deines Kunden eintragen. |
| PEPPOL-EN16931-R010 | Die elektronische Adresse des Käufers (BT-49) fehlt. | Frag deinen Kunden, wohin er E-Rechnungen haben will, meist eine E-Mail-Adresse. |
| BR-63 | Bei der elektronischen Adresse des Käufers fehlt die Angabe ihrer Art. | Wie bei BR-62: Bei E-Mail ist das der Code EM. |
Käufer-Referenz und Leitweg-ID
| Code | Was er bedeutet | So behebst du ihn |
|---|---|---|
| BR-DE-15 | Die Käufer-Referenz (BT-10) muss angegeben sein. | Bei Behörden gehört hier die Leitweg-ID hin, bei Firmenkunden die Referenz, die dein Kunde vorgibt, etwa eine Bestell- oder Kundennummer. |
Die Regel verlangt nur, dass das Feld gefüllt ist. Ob die Leitweg-ID richtig aufgebaut ist und zur richtigen Stelle führt, prüft BR-DE-15 nicht. Wo du die Nummer herbekommst und wie sie aufgebaut ist, steht unter Was ist eine Leitweg-ID?.
Beträge und Rundung
| Code | Was er bedeutet | So behebst du ihn |
|---|---|---|
| BR-CO-10 | Die Summe der Positionen (BT-106) muss genau die Summe der Nettobeträge aller Positionen (BT-131) sein. | Summen nicht von Hand eintragen, sondern aus den Positionen rechnen lassen. |
| BR-CO-11, BR-CO-12 | Die Summe der Nachlässe (BT-107) bzw. Zuschläge (BT-108) auf Rechnungsebene muss den einzelnen Nachlässen bzw. Zuschlägen entsprechen. | Rabatte und Zuschläge einzeln erfassen und die Summe rechnen lassen. |
| BR-CO-13 | Der Nettobetrag (BT-109) muss sein: Positionen minus Nachlässe plus Zuschläge. | Prüfen, ob ein Rabatt nur in der Summe abgezogen wurde. |
| BR-CO-14 | Die Umsatzsteuer gesamt (BT-110) muss die Summe der Steuerbeträge aus der Aufschlüsselung (BT-117) sein. | Steuer je Steuersatz rechnen und dann addieren. |
| BR-CO-15 | Der Bruttobetrag (BT-112) muss Netto (BT-109) plus Umsatzsteuer (BT-110) sein. | Wie BR-CO-10: rechnen lassen statt eintippen. |
| BR-CO-16 | Der Zahlbetrag (BT-115) muss sein: Brutto minus bereits gezahlt (BT-113) plus Rundungsbetrag (BT-114). | Hast du eine Anzahlung abgezogen, prüfen, ob sie im Feld für bereits gezahlte Beträge steht und der Zahlbetrag dazu passt. |
| BR-CO-17, BR-S-09 | Der Steuerbetrag einer Aufschlüsselung (BT-117) muss Bemessungsgrundlage (BT-116) mal Steuersatz (BT-119) sein, auf zwei Stellen gerundet. | Der KoSIT-Validator meldet den Code erst, wenn die Abweichung eine ganze Einheit erreicht, also etwa 1 Euro. Kleine Rundungsdifferenzen lösen ihn nicht aus, richtig gerechnet sein sollte der Steuerbetrag trotzdem. Kommt der Code, stimmt meist der Steuersatz oder die Bemessungsgrundlage nicht. Die Steuer je Steuersatz aus der Summe der Nettobeträge rechnen lassen. |
| BR-S-08 | Je Steuersatz muss die Bemessungsgrundlage (BT-116) zu den Positionen, Nachlässen und Zuschlägen mit diesem Satz passen. | Häufige Ursache: ein Rabatt, der nur in der Summe steht, oder Positionen mit 7 % und 19 %, die in einer Zeile der Aufschlüsselung gelandet sind. |
| PEPPOL-EN16931-R120 (Warnung) | Der Nettobetrag einer Position soll Menge mal Preis sein, plus Zuschläge, minus Nachlässe der Position. | Meist ist der Einzelpreis gerundet. Den genauen, ungerundeten Preis eintragen. |
| BR-27 | Der Nettopreis einer Position (BT-146) darf nicht negativ sein. | Für Abzüge eine negative Menge mit positivem Preis verwenden. |
| UBL-DT-01, BR-DEC-… | Beträge wie Positionssummen, Steuer- und Gesamtbeträge dürfen höchstens zwei Nachkommastellen haben. Einzelpreise sind davon ausgenommen. | Diese Beträge auf Cent runden, den Einzelpreis aber nicht. UBL-DT-01 gibt es nur bei UBL-Dateien, BR-DEC-Codes können bei UBL und CII erscheinen. |
Mehrere Rechencodes hängen oft an derselben Ursache. Behebe zuerst den obersten, meist verschwinden die anderen dann mit.
Umsatzsteuer
| Code | Was er bedeutet | So behebst du ihn |
|---|---|---|
| BR-DE-16 | Bei den Steuerkategorien S, Z, E, AE, K, G, L oder M muss deine USt-IdNr. (BT-31) oder Steuernummer (BT-32) enthalten sein, oder ein Steuervertreter (BG-11). | Eine der beiden Nummern eintragen. |
| BR-S-02, BR-E-02 | Fast dieselbe Pflicht aus der EN 16931 für steuerpflichtige Umsätze mit Steuersatz (S) bzw. steuerfreie Umsätze (E). | Wie BR-DE-16. |
| BR-CO-09 | Eine USt-IdNr. muss mit einem Länderkürzel beginnen, etwa DE. | Häufiger Fehler: Die Steuernummer steht im Feld für die USt-IdNr. Dann die Steuernummer ins richtige Feld verschieben. |
| BR-CO-04 | Jede Position braucht eine Steuerkategorie (BT-151). | Für jede Position den Steuerfall festlegen. |
| BR-DE-14 | In der Steueraufschlüsselung muss der Steuersatz (BT-119) stehen. | Auch bei 0 % den Satz angeben. |
| BR-S-05 | Eine steuerpflichtige Position mit Steuersatz (S, also 19 % oder 7 %) braucht einen Satz größer als 0. | Für 0 % die passende Kategorie wählen, etwa steuerfrei (E) oder Reverse-Charge (AE). |
| BR-S-10 | Bei steuerpflichtigen Umsätzen mit Steuersatz (S) darf kein Befreiungsgrund angegeben sein. | Befreiungstext entfernen oder, falls der Umsatz wirklich steuerfrei ist, die Kategorie korrigieren. |
| BR-E-10 | Bei steuerfreien Umsätzen (E) fehlt der Befreiungsgrund (Text BT-120 oder Code BT-121). | Grund angeben. Typischer Fall: Kleinunternehmer mit Hinweis auf § 19 UStG, siehe E-Rechnung für Kleinunternehmer. |
| BR-AE-02 | Bei Reverse-Charge braucht es deine USt-IdNr. oder Steuernummer und vom Kunden die USt-IdNr. (BT-48) oder eine Registernummer (BT-47). | Die Kennung deines Kunden ergänzen. |
| BR-AE-10 | Bei Reverse-Charge fehlt der Befreiungsgrund (Text oder Code). | Grund angeben. Der Validator prüft nur, ob einer dasteht; auf die Rechnung gehört der Hinweis „Steuerschuldnerschaft des Leistungsempfängers“ (§ 14a Absatz 5 UStG). Mehr dazu unter E-Rechnung bei Bauleistungen nach § 13b. |
Zahlung
| Code | Was er bedeutet | So behebst du ihn |
|---|---|---|
| BR-DE-1 | Die Zahlungsangaben (BG-16) fehlen. | Zahlungsart und Bankverbindung angeben. |
| BR-61 | Bei Überweisung (Code 30 oder 58) muss eine Kontokennung (BT-84) angegeben sein, in der Regel die IBAN. | IBAN eintragen. |
| BR-DE-19 (Warnung) | Bei SEPA-Überweisung (Code 58) soll die IBAN korrekt sein. | Auf Zahlendreher und fehlende Stellen prüfen. Sonst kommt dein Geld womöglich nicht an. |
| BR-DE-30, BR-DE-31 | Bei Lastschrift fehlen deine Gläubiger-ID (BT-90) oder das Konto, von dem abgebucht wird (BT-91). | Beides ergänzen oder, wenn dein Kunde überweist, keine Lastschrift angeben. |
| BR-DE-18 | Eine Skonto-Angabe in den Zahlungsbedingungen (BT-20) hat nicht das vorgeschriebene Format. | Die Regel prüft nur Zeilen, die mit # beginnen. Format: #SKONTO#TAGE=14#PROZENT=2.00#, alles in Großbuchstaben, Prozent mit Punkt und zwei Nachkommastellen, ohne Leerzeichen, danach ein Zeilenumbruch. |
| BR-CO-25 | Bei einem offenen Zahlbetrag fehlen Fälligkeitsdatum (BT-9) und Zahlungsbedingungen (BT-20). | Diese Regel gibt es seit Regelwerk 1.3.16 nicht mehr, die aktuelle KoSIT-Konfiguration prüft sie nicht. Ältere Prüfprogramme melden sie noch als Fehler, und Bundesbehörden verlangen Zahlungsbedingungen ausdrücklich (§ 5 Absatz 1 E-Rechnungsverordnung). Gib deshalb weiter ein Fälligkeitsdatum oder Zahlungsbedingungen an. |
Format und Technik
| Code | Was er bedeutet | So behebst du ihn |
|---|---|---|
| BR-DE-21 (Warnung) | Die Kennung der Spezifikation (BT-24) ist nicht die der XRechnung. | Beim Erstellen das Format XRechnung wählen. Die Kennung setzt dein Rechnungsprogramm. Beim KoSIT-Validator siehst du statt dieses Codes meist die Meldung, dass kein Prüfszenario gegriffen hat. |
| PEPPOL-EN16931-R001 | Die Kennung des Geschäftsprozesses (BT-23) fehlt. | Auch diese setzt das Programm. Fehlt sie, liegt der Fehler beim erzeugenden Programm: Datei neu erzeugen. |
| PEPPOL-EN16931-R008 | Die Datei enthält leere Elemente. | Ein leeres Feld darf nicht als leeres Element in der Datei stehen. Das ist ein Fehler des erzeugenden Programms: Datei neu erzeugen. |
| BR-CL-23 (bei XRechnung Warnung) | Die Mengeneinheit (BT-130) steht nicht in der vorgeschriebenen Codeliste. | Codes statt Klartext: zum Beispiel C62 (oder H87) für Stück, HUR für Stunde, DAY für Tag, LS für pauschal. |
| BR-DE-26 (Warnung) | Eine Rechnungskorrektur (Code 384) soll auf die ursprüngliche Rechnung verweisen (BG-3). | Nummer und Datum der ursprünglichen Rechnung angeben, siehe E-Rechnung korrigieren oder stornieren. |
| BR-DE-TMP-32 (Information) | Liefer- oder Leistungsdatum (BT-72) bzw. Leistungszeitraum fehlt. | Eintragen. Es gehört ohnehin zu den Pflichtangaben nach § 14 Absatz 4 UStG. |
So hilft dir rechnungswandler.de dabei
Prüfen: Der XRechnung-Viewer öffnet XRechnungen und ZUGFeRD-PDFs in deinem Browser und prüft die wichtigsten Pflichtfelder und Rechenregeln. Kostenlos siehst du eine Ampel mit der Zahl der Mängel und Hinweise, mit Pro jeden Befund einzeln mit Regel-Code. Ehrlich gesagt: Das ist keine vollständige Validierung, der KoSIT-Validator prüft deutlich mehr Regeln. Manches, womit er eine Datei zurückweist, zeigt der Viewer nur als Hinweis.
Neu erstellen: Im Konverter liest du deine Rechnung als PDF, Word- oder Excel-Datei ein oder tippst sie ins Formular. Er rechnet die Summen aus den Positionen und prüft vor dem Download die Pflichtfelder, bei der XRechnung auch Kontaktdaten, elektronische Adresse des Empfängers und IBAN. 10 E-Rechnungen pro Monat sind kostenlos.
Häufige Fragen
Mein Code steht nicht in der Tabelle. Was nun?
Lies den Text der Meldung: Er nennt fast immer die Feldnummer (BT-… oder BG-…), um die es geht. Codes wie UBL-CR-… oder CII-SR-… betreffen den technischen Aufbau der XML-Datei. Dann liegt der Fehler meist beim erzeugenden Programm, und du erzeugst die Datei am besten neu.
Gelten diese Codes auch für ZUGFeRD?
Die Regeln der EN 16931 (BR-…, BR-CO-…, BR-S-… und so weiter) können auch bei ZUGFeRD-Rechnungen im Prüfbericht stehen. Die BR-DE-Regeln und die PEPPOL-Regeln, die die XRechnung aus dem Peppol-Netz übernimmt, gelten nur für Dateien, die als XRechnung gekennzeichnet sind. Welches Format dein Kunde braucht, erklärt XRechnung vs. ZUGFeRD.
Warum meldet ein Prüfprogramm BR-CO-25 und ein anderes nicht?
Weil sie mit unterschiedlichen Regelständen arbeiten. BR-CO-25 ist mit Version 1.3.16 der Prüfregeln entfallen; ältere Programme prüfen die Regel noch. Am sichersten fährst du, wenn du Fälligkeit oder Zahlungsbedingungen immer angibst. Bundesbehörden verlangen Zahlungsbedingungen ohnehin ausdrücklich (§ 5 Absatz 1 E-Rechnungsverordnung).
Das Wichtigste in Kürze
BR-DE-Codes sind deutsche Zusatzregeln der XRechnung, BR- und BR-CO-Codes Regeln der EN 16931, BR-S-, BR-E- und BR-AE-Codes Steuerregeln. Am häufigsten fehlen die Käufer-Referenz (BR-DE-15), Kontaktdaten (BR-DE-5 bis BR-DE-7), die elektronische Adresse des Kunden (PEPPOL-EN16931-R010) oder eine Verkäuferkennung (BR-CO-26), oder die Summen gehen nicht auf (BR-CO-10 bis BR-CO-17). Behebe die Ursache in deinen Daten, erzeuge die Datei im Konverter neu (10 E-Rechnungen pro Monat kostenlos) und prüfe sie vor dem Senden, etwa mit dem XRechnung-Viewer.