Start › Fehlercode-Lexikon

Fehlercode-Lexikon für ZUGFeRD & XRechnung

Jeder Validierungsfehler einer E-Rechnung hat eine eindeutige Regel-ID. Hier findest du alle 63 häufigen Fehler- und Warncodes nach EN 16931, den deutschen KoSIT-Regeln und PEPPOL BIS — jeweils mit Bedeutung, betroffenem Feld, konkretem Korrekturvorschlag und XPath.

63 dokumentierte Codes EN 16931 + KoSIT BR-DE + PEPPOL Engines: Mustang & KoSIT

Validierungsfehler verstehen und beheben

Eine E-Rechnung wird gegen die europäische Norm EN 16931 geprüft. Verstößt sie gegen eine Geschäftsregel (Business Rule, BR), meldet der Validator einen Fehler mit eindeutiger ID — etwa BR-DE-1. Das Präfix BR-DE kennzeichnet deutsche Zusatzregeln der KoSIT, Codes wie BR-1 stammen direkt aus der EU-Norm. Jeder Code verweist auf ein Feld (Business Term, BT-xxx) und lässt sich gezielt korrigieren.

Was ist ein Validierungsfehler bei einer E-Rechnung?
Ein Validierungsfehler bedeutet, dass eine E-Rechnung gegen eine Geschäftsregel der Norm EN 16931 oder gegen eine deutsche KoSIT-Regel (BR-DE) verstößt. Jeder Fehler hat eine eindeutige Regel-ID (z. B. BR-DE-1), bezieht sich auf ein bestimmtes Feld (Business Term, BT-xxx) und muss behoben werden, damit die Rechnung konform und verarbeitbar ist.
Was bedeutet das Präfix BR-DE bei einem Fehlercode?
BR steht für Business Rule (Geschäftsregel), DE für die deutschland-spezifischen Zusatzregeln der KoSIT. BR-DE-Regeln gelten zusätzlich zu den europäischen EN-16931-Regeln und sind für deutsche E-Rechnungen verbindlich. Codes ohne DE (z. B. BR-1) stammen direkt aus der europäischen Norm.
Was ist der Unterschied zwischen einem Fehler und einer Warnung?
Ein Fehler (error) macht die Rechnung nicht konform — sie muss korrigiert werden. Eine Warnung (warning) weist auf eine Empfehlung oder einen möglichen Konflikt hin, blockiert die Konformität aber nicht zwingend. Der ZUGFeRD Validator kennzeichnet beide getrennt im Feld severity.
Was sind BT-Felder in einer E-Rechnung?
BT steht für Business Term. Die Norm EN 16931 nummeriert jedes Datenfeld einer Rechnung als BT-xxx, z. B. BT-1 für die Rechnungsnummer oder BT-31 für die USt-ID des Verkäufers. Fehlercodes verweisen auf das BT-Feld, das den Verstoß ausgelöst hat.
Wie behebe ich einen Validierungsfehler in einer ZUGFeRD-Rechnung?
Suche den Fehlercode in diesem Lexikon, lies den Korrekturvorschlag und passe das angegebene XML-Element (über den XPath identifizierbar) an. Validiere die Rechnung anschließend erneut. Der ZUGFeRD Validator liefert zu jedem Fehler automatisch Regel-ID, Feld, Korrekturvorschlag und XPath als strukturiertes JSON.

Deutsche Geschäftsregeln (BR-DE)

Zusätzliche Pflichtregeln der KoSIT für Deutschland, die über die europäische Norm EN 16931 hinausgehen. Sie sind für ZUGFeRD und XRechnung im deutschen B2B- und B2G-Umfeld verbindlich.

BR-DE-1#

Feld BG-16

PAYMENT INSTRUCTIONS (BG-16) fehlen

So behebst du den Fehler

Füge die Gruppe PAYMENT INSTRUCTIONS (BG-16) hinzu: mind. die Zahlungsart 'ram:SpecifiedTradeSettlementPaymentMeans/ram:TypeCode' (BT-81) und die passende Zahlungsgruppe (BG-17 Überweisung / BG-18 Karte / BG-19 Lastschrift).

XPath //ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementPaymentMeans
Vollständige Anleitung mit XML-Beispiel

BR-DE-2#

Feld BG-6

SELLER CONTACT (BG-6) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Gruppe SELLER CONTACT (BG-6) in 'ram:SellerTradeParty/ram:DefinedTradeContact' hinzu (Ansprechpartner, Telefon, E-Mail).

XPath //ram:SellerTradeParty/ram:DefinedTradeContact
Vollständige Anleitung mit XML-Beispiel

BR-DE-3#

Feld BT-37

Stadt des Verkäufers (BT-37) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Stadt des Verkäufers (BT-37) in 'ram:SellerTradeParty/ram:PostalTradeAddress/ram:CityName' ein.

XPath //ram:SellerTradeParty/ram:PostalTradeAddress/ram:CityName
Vollständige Anleitung mit XML-Beispiel

BR-DE-4#

Feld BT-38

PLZ des Verkäufers (BT-38) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die PLZ des Verkäufers (BT-38) in 'ram:SellerTradeParty/ram:PostalTradeAddress/ram:PostcodeCode' ein.

XPath //ram:SellerTradeParty/ram:PostalTradeAddress/ram:PostcodeCode
Vollständige Anleitung mit XML-Beispiel

BR-DE-5#

Feld BT-41

Ansprechpartner des Verkäufers (BT-41) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge den Ansprechpartner des Verkäufers (BT-41) in 'ram:SellerTradeParty/ram:DefinedTradeContact/ram:PersonName' ein.

XPath //ram:SellerTradeParty/ram:DefinedTradeContact/ram:PersonName
Vollständige Anleitung mit XML-Beispiel

BR-DE-6#

Feld BT-42

Telefonnummer des Verkäufers (BT-42) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Telefonnummer des Verkäufer-Kontakts (BT-42) in 'ram:DefinedTradeContact/ram:TelephoneUniversalCommunication/ram:CompleteNumber' ein.

XPath //ram:SellerTradeParty/ram:DefinedTradeContact/ram:TelephoneUniversalCommunication/ram:CompleteNumber
Vollständige Anleitung mit XML-Beispiel

BR-DE-7#

Feld BT-43

E-Mail des Verkäufers (BT-43) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die E-Mail des Verkäufer-Kontakts (BT-43) in 'ram:DefinedTradeContact/ram:EmailURIUniversalCommunication/ram:URIID' ein.

XPath //ram:SellerTradeParty/ram:DefinedTradeContact/ram:EmailURIUniversalCommunication/ram:URIID
Vollständige Anleitung mit XML-Beispiel

BR-DE-8#

Feld BT-52

Stadt des Käufers (BT-52) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Stadt des Käufers (BT-52) in 'ram:BuyerTradeParty/ram:PostalTradeAddress/ram:CityName' ein.

XPath //ram:BuyerTradeParty/ram:PostalTradeAddress/ram:CityName
Vollständige Anleitung mit XML-Beispiel

BR-DE-9#

Feld BT-53

PLZ des Käufers (BT-53) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die PLZ des Käufers (BT-53) in 'ram:BuyerTradeParty/ram:PostalTradeAddress/ram:PostcodeCode' ein.

XPath //ram:BuyerTradeParty/ram:PostalTradeAddress/ram:PostcodeCode
Vollständige Anleitung mit XML-Beispiel

BR-DE-10#

Feld BT-77

Lieferstadt (BT-77) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Wenn eine abweichende Lieferadresse (BG-15) angegeben ist, muss die Lieferstadt (BT-77) in 'ram:ShipToTradeParty/ram:PostalTradeAddress/ram:CityName' gesetzt sein.

XPath //ram:ShipToTradeParty/ram:PostalTradeAddress/ram:CityName
Vollständige Anleitung mit XML-Beispiel

BR-DE-11#

Feld BT-78

Liefer-PLZ (BT-78) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Wenn eine abweichende Lieferadresse (BG-15) angegeben ist, muss die Liefer-PLZ (BT-78) in 'ram:ShipToTradeParty/ram:PostalTradeAddress/ram:PostcodeCode' gesetzt sein.

XPath //ram:ShipToTradeParty/ram:PostalTradeAddress/ram:PostcodeCode
Vollständige Anleitung mit XML-Beispiel

BR-DE-12#

Codelisten-Regel

BR-DE-12 ist in der aktuellen XRechnung-/EN-16931-Fassung nicht mehr als eigene Regel enthalten.

So behebst du den Fehler

Diese Regelnummer existiert in der aktuellen XRechnung-Fassung nicht mehr. Prüfe die aktuelle KoSIT-Spezifikation; der ursprüngliche Sachverhalt ist heute meist über eine andere BR-DE-Regel abgedeckt.

Vollständige Anleitung mit XML-Beispiel

BR-DE-13#

Codelisten-Regel

BR-DE-13 ist in der aktuellen XRechnung-/EN-16931-Fassung nicht mehr als eigene Regel enthalten.

So behebst du den Fehler

Diese Regelnummer existiert in der aktuellen XRechnung-Fassung nicht mehr. Prüfe die aktuelle KoSIT-Spezifikation; der ursprüngliche Sachverhalt ist heute meist über eine andere BR-DE-Regel abgedeckt.

Vollständige Anleitung mit XML-Beispiel

BR-DE-14#

Feld BT-119

USt-Satz (BT-119) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge den USt-Satz (BT-119) in 'ram:ApplicableTradeTax/ram:RateApplicablePercent' ein (bei S/Z/E entsprechend 19, 7, 0).

XPath //ram:ApplicableTradeTax/ram:RateApplicablePercent
Vollständige Anleitung mit XML-Beispiel

BR-DE-15#

Feld BT-10

Käuferreferenz / Leitweg-ID (BT-10) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Käuferreferenz / Leitweg-ID (BT-10) in 'ram:ApplicableHeaderTradeAgreement/ram:BuyerReference' ein.

XPath //ram:ApplicableHeaderTradeAgreement/ram:BuyerReference
Vollständige Anleitung mit XML-Beispiel

BR-DE-16#

Feld BT-31

USt-ID/Steuernummer des Verkäufers ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Wenn Steuercodes S/Z/E/AE/K/G/L/M verwendet werden, muss mind. die USt-ID (BT-31) ODER Steuernummer (BT-32) des Verkäufers in 'ram:SellerTradeParty/ram:SpecifiedTaxRegistration' vorhanden sein (schemeID 'VA' bzw. 'FC').

XPath //ram:SellerTradeParty/ram:SpecifiedTaxRegistration
Vollständige Anleitung mit XML-Beispiel

BR-DE-17#

Feld BT-3

Unzulässiger Rechnungstyp-Code (BT-3)

So behebst du den Fehler

Verwende für den Rechnungstyp (BT-3) nur zulässige UNTDID-1001-Codes: 326, 380, 384, 389, 381, 875, 876, 877.

XPath //rsm:ExchangedDocument/ram:TypeCode
Vollständige Anleitung mit XML-Beispiel

BR-DE-18#

Feld BT-20

Skonto-Angaben (BT-20) im falschen Format

So behebst du den Fehler

Gib Skonto/Zahlungsbedingungen (BT-20) im vorgeschriebenen Format in 'ram:SpecifiedTradePaymentTerms/ram:Description' an (#SKONTO#TAGE=..#PROZENT=..#).

XPath //ram:SpecifiedTradePaymentTerms/ram:Description
Vollständige Anleitung mit XML-Beispiel

BR-DE-19#

Codelisten-Regel

BR-DE-19 ist in der aktuellen XRechnung-/EN-16931-Fassung nicht mehr als eigene Regel enthalten.

So behebst du den Fehler

Diese Regelnummer existiert in der aktuellen XRechnung-Fassung nicht mehr. Prüfe die aktuelle KoSIT-Spezifikation; der ursprüngliche Sachverhalt ist heute meist über eine andere BR-DE-Regel abgedeckt.

Vollständige Anleitung mit XML-Beispiel

BR-DE-20#

Codelisten-Regel

BR-DE-20 ist in der aktuellen XRechnung-/EN-16931-Fassung nicht mehr als eigene Regel enthalten.

So behebst du den Fehler

Diese Regelnummer existiert in der aktuellen XRechnung-Fassung nicht mehr. Prüfe die aktuelle KoSIT-Spezifikation; der ursprüngliche Sachverhalt ist heute meist über eine andere BR-DE-Regel abgedeckt.

Vollständige Anleitung mit XML-Beispiel

BR-DE-21#

Feld BT-24

Specification identifier (BT-24) nicht XRechnung-konform

So behebst du den Fehler

Der Specification identifier (BT-24) muss der XRechnung-Kennung entsprechen, z. B. 'urn:cen.eu:en16931:2017#compliant#urn:xoev-de:kosit:standard:xrechnung_3.0'.

XPath //ram:GuidelineSpecifiedDocumentContextParameter/ram:ID
Vollständige Anleitung mit XML-Beispiel

BR-DE-22#

Codelisten-Regel

Anhang-Dateinamen nicht eindeutig

So behebst du den Fehler

Alle eingebetteten Anhänge (embeddedDocumentBinaryObject) müssen einen eindeutigen 'filename' haben — vergib je Anhang einen anderen Dateinamen.

XPath //ram:AdditionalReferencedDocument/ram:AttachmentBinaryObject/@filename
Vollständige Anleitung mit XML-Beispiel

BR-DE-23#

Codelisten-Regel

BR-DE-23 ist in der aktuellen XRechnung-/EN-16931-Fassung nicht mehr als eigene Regel enthalten.

So behebst du den Fehler

Diese Regelnummer existiert in der aktuellen XRechnung-Fassung nicht mehr. Prüfe die aktuelle KoSIT-Spezifikation; der ursprüngliche Sachverhalt ist heute meist über eine andere BR-DE-Regel abgedeckt.

Vollständige Anleitung mit XML-Beispiel

BR-DE-24#

Codelisten-Regel

BR-DE-24 ist in der aktuellen XRechnung-/EN-16931-Fassung nicht mehr als eigene Regel enthalten.

So behebst du den Fehler

Diese Regelnummer existiert in der aktuellen XRechnung-Fassung nicht mehr. Prüfe die aktuelle KoSIT-Spezifikation; der ursprüngliche Sachverhalt ist heute meist über eine andere BR-DE-Regel abgedeckt.

Vollständige Anleitung mit XML-Beispiel

BR-DE-25#

Codelisten-Regel

BR-DE-25 ist in der aktuellen XRechnung-/EN-16931-Fassung nicht mehr als eigene Regel enthalten.

So behebst du den Fehler

Diese Regelnummer existiert in der aktuellen XRechnung-Fassung nicht mehr. Prüfe die aktuelle KoSIT-Spezifikation; der ursprüngliche Sachverhalt ist heute meist über eine andere BR-DE-Regel abgedeckt.

Vollständige Anleitung mit XML-Beispiel

BR-DE-26#

Feld BT-3

Rechnungskorrektur ohne Bezugsrechnung (BG-3)

So behebst du den Fehler

Bei Rechnungstyp 384 (Rechnungskorrektur) muss die Bezugsrechnung (PRECEDING INVOICE REFERENCE, BG-3) in 'ram:InvoiceReferencedDocument/ram:IssuerAssignedID' angegeben werden.

XPath //ram:ApplicableHeaderTradeSettlement/ram:InvoiceReferencedDocument/ram:IssuerAssignedID
Vollständige Anleitung mit XML-Beispiel

EN-16931-Grundregeln (BR)

Die Kerngeschäftsregeln der europäischen Norm EN 16931. Sie gelten für jede konforme E-Rechnung — unabhängig vom Format.

BR-1#

Feld BT-24

Specification identifier (BT-24) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Guideline-ID (Specification identifier, BT-24) hinzu: 'ram:GuidelineSpecifiedDocumentContextParameter/ram:ID', z. B. 'urn:cen.eu:en16931:2017' bzw. die XRechnung-Kennung.

XPath //ram:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID
Vollständige Anleitung mit XML-Beispiel

BR-2#

Feld BT-1

Rechnungsnummer (BT-1) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Rechnungsnummer (BT-1) in 'ram:ExchangedDocument/ram:ID' ein.

XPath //rsm:ExchangedDocument/ram:ID
Vollständige Anleitung mit XML-Beispiel

BR-3#

Feld BT-2

Rechnungsdatum (BT-2) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge das Rechnungsdatum (BT-2) in 'ram:ExchangedDocument/ram:IssueDateTime/udt:DateTimeString' (format='102', JJJJMMTT) ein.

XPath //rsm:ExchangedDocument/ram:IssueDateTime
Vollständige Anleitung mit XML-Beispiel

BR-4#

Feld BT-3

Rechnungstyp-Code (BT-3) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge den Rechnungstyp-Code (BT-3) in 'ram:ExchangedDocument/ram:TypeCode' ein, z. B. '380' (Rechnung) oder '381' (Gutschrift).

XPath //rsm:ExchangedDocument/ram:TypeCode
Vollständige Anleitung mit XML-Beispiel

BR-5#

Feld BT-5

Währungscode (BT-5) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge den Währungscode (BT-5) in 'ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode' ein, z. B. 'EUR'.

XPath //ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode
Vollständige Anleitung mit XML-Beispiel

BR-6#

Feld BT-27

Verkäufername (BT-27) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge den Verkäufernamen (BT-27) in 'ram:SellerTradeParty/ram:Name' ein.

XPath //ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:Name
Vollständige Anleitung mit XML-Beispiel

BR-7#

Feld BT-44

Käufername (BT-44) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge den Käufernamen (BT-44) in 'ram:BuyerTradeParty/ram:Name' ein.

XPath //ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:Name
Vollständige Anleitung mit XML-Beispiel

BR-8#

Feld BG-5

Postanschrift des Verkäufers (BG-5) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Postanschrift des Verkäufers (BG-5) in 'ram:SellerTradeParty/ram:PostalTradeAddress' hinzu (mind. mit CountryID).

XPath //ram:SellerTradeParty/ram:PostalTradeAddress
Vollständige Anleitung mit XML-Beispiel

BR-9#

Feld BG-5

Ländercode des Verkäufers (BT-40) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge den Ländercode des Verkäufers (BT-40) in 'ram:SellerTradeParty/ram:PostalTradeAddress/ram:CountryID' ein, z. B. 'DE'.

XPath //ram:SellerTradeParty/ram:PostalTradeAddress/ram:CountryID
Vollständige Anleitung mit XML-Beispiel

BR-10#

Feld BG-8

Postanschrift des Käufers (BG-8) ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Füge die Postanschrift des Käufers (BG-8) in 'ram:BuyerTradeParty/ram:PostalTradeAddress' hinzu (mind. mit CountryID).

XPath //ram:BuyerTradeParty/ram:PostalTradeAddress
Vollständige Anleitung mit XML-Beispiel

Rechen- & Konsistenzregeln (BR-CO)

Regeln, die rechnerische Zusammenhänge zwischen den Beträgen einer Rechnung prüfen (z. B. ob Summen korrekt aufgehen).

BR-CO-3#

Feld BT-7

Steuerdatum und Steuerdatum-Code schließen sich aus

So behebst du den Fehler

BT-7 (Steuerdatum) und BT-8 (Steuerdatum-Code) schließen sich gegenseitig aus — gib nur EINES an: entweder 'ram:TaxPointDate' oder 'ram:DueDateTypeCode'.

XPath //ram:ApplicableTradeTax
Vollständige Anleitung mit XML-Beispiel

BR-CO-9#

Feld BT-31

USt-ID des Verkäufers ohne Länderpräfix

So behebst du den Fehler

Die USt-ID des Verkäufers (BT-31) muss mit dem Länderpräfix (ISO 3166-1) beginnen, z. B. 'DE123456789'.

XPath //ram:SellerTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID='VA']
Vollständige Anleitung mit XML-Beispiel

BR-CO-10#

Feld BT-106

Summe der Netto-Positionsbeträge stimmt nicht

So behebst du den Fehler

Summe der Netto-Positionsbeträge (BT-106) muss der Summe aller 'ram:LineTotalAmount' (BT-131) entsprechen. Prüfe die Summenbildung.

XPath //ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:LineTotalAmount
Vollständige Anleitung mit XML-Beispiel

BR-CO-13#

Feld BT-109

Gesamtbetrag ohne USt falsch berechnet

So behebst du den Fehler

Gesamtbetrag ohne USt (BT-109) = Summe Netto-Positionen (BT-131) − Abschläge + Zuschläge auf Dokumentebene. Prüfe die Berechnung von 'ram:TaxBasisTotalAmount'.

XPath //ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxBasisTotalAmount
Vollständige Anleitung mit XML-Beispiel

Codelisten-Regeln (BR-CL)

Regeln, die einzelne Codes gegen offizielle Codelisten prüfen (z. B. UNTDID 4461 für Zahlungsmittel oder ISO-Währungscodes).

BR-CL-10#

Codelisten-Regel

Ungültige schemeID (nicht aus ISO 6523)

So behebst du den Fehler

Verwende für die schemeID einen gültigen Code aus der ISO-6523-Codeliste (ICD).

XPath //ram:SpecifiedTaxRegistration/ram:ID/@schemeID
Vollständige Anleitung mit XML-Beispiel

BR-CL-16#

Feld BT-81

Ungültiger Zahlungsart-Code (nicht aus UNTDID 4461)

So behebst du den Fehler

Kodiere die Zahlungsart (BT-81) mit einem Code aus UNTDID 4461, z. B. '58' (SEPA-Überweisung), '59' (SEPA-Lastschrift), '30' (Überweisung).

XPath //ram:SpecifiedTradeSettlementPaymentMeans/ram:TypeCode
Vollständige Anleitung mit XML-Beispiel

BR-CL-17#

Feld BT-151

Ungültige USt-Kategorie auf Positionsebene

So behebst du den Fehler

Kodiere die USt-Kategorie (BT-151, Positionsebene) mit einem Code aus UNCL 5305: 'S','Z','E','AE','K','G','O','L','M'.

XPath //ram:ApplicableTradeTax/ram:CategoryCode
Vollständige Anleitung mit XML-Beispiel

BR-CL-18#

Feld BT-118

Ungültige USt-Kategorie auf Belegebene

So behebst du den Fehler

Kodiere die USt-Kategorie (BT-118, Steuer-/Belegebene) mit einem Code aus UNCL 5305: 'S','Z','E','AE','K','G','O','L','M'.

XPath //ram:ApplicableTradeTax/ram:CategoryCode
Vollständige Anleitung mit XML-Beispiel

Umsatzsteuer-Kategorien (BR-S/Z/E/AE)

Regeln je Umsatzsteuer-Kategorie: Standard­satz (S), Nullsatz (Z), Steuerbefreiung (E) und Reverse-Charge / Steuerschuldumkehr (AE).

BR-S-1#

Feld BG-25

Regelbesteuerung (S): USt-ID/Steuernummer ist eine Pflichtangabe und muss im strukturierten XML vorhanden sein.

So behebst du den Fehler

Bei Regelbesteuerung (Kategorie 'S') muss die USt-ID oder Steuernummer des Verkäufers (BT-31/BT-32) vorhanden sein.

XPath //ram:SellerTradeParty/ram:SpecifiedTaxRegistration
Vollständige Anleitung mit XML-Beispiel

BR-Z-1#

Feld BG-25

Nullsatz (Z): Angaben unvollständig

So behebst du den Fehler

Bei Nullsatz (Kategorie 'Z') muss die USt-ID/Steuernummer des Verkäufers vorhanden sein; Steuersatz 0 und CalculatedAmount = 0 angeben.

XPath //ram:ApplicableTradeTax[ram:CategoryCode='Z']
Vollständige Anleitung mit XML-Beispiel

BR-E-1#

Feld BG-25

Steuerbefreiung (E): Angaben unvollständig

So behebst du den Fehler

Bei Steuerbefreiung (Kategorie 'E') muss die USt-ID/Steuernummer des Verkäufers vorhanden sein; Steuersatz 0, CalculatedAmount = 0 und 'ram:ExemptionReason' angeben.

XPath //ram:ApplicableTradeTax[ram:CategoryCode='E']
Vollständige Anleitung mit XML-Beispiel

BR-AE-1#

Feld BG-25

Reverse Charge (AE): Steuerangaben unvollständig

So behebst du den Fehler

Bei Steuerschuldumkehr (Kategorie 'AE', Reverse Charge) müssen die USt-ID des Verkäufers (BT-31) UND eine USt-ID/Steuernummer des Käufers vorhanden sein; CalculatedAmount = 0 und ExemptionReason angeben.

XPath //ram:ApplicableTradeTax[ram:CategoryCode='AE']
Vollständige Anleitung mit XML-Beispiel

PEPPOL-BIS-Regeln (Peppol)

Zusatzregeln aus PEPPOL BIS Billing 3.0 — dem Regelwerk für den Rechnungsversand über das europäische PEPPOL-Netz. Sie gelten über die EN 16931 hinaus und erscheinen bei ZUGFeRD/XRechnung meist als Warnung oder Hinweis, sind aber verpflichtend, sobald die Rechnung tatsächlich über PEPPOL übertragen wird.

Die Rechnung muss den PEPPOL-Geschäftsprozess (BT-23) angeben. Er beschreibt, in welchem Verfahren die Rechnung übermittelt wird.

So behebst du den Fehler

Ergänze den Geschäftsprozess (BT-23) in 'ram:ExchangedDocumentContext/ram:BusinessProcessSpecifiedDocumentContextParameter/ram:ID', üblicherweise mit dem Wert 'urn:fdc:peppol.eu:2017:poacc:billing:01:1.0'.

XPath //rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:BusinessProcessSpecifiedDocumentContextParameter/ram:ID
Vollständige Anleitung mit XML-Beispiel

Auf Dokumentebene ist nur eine einzige Bemerkung (BT-22) erlaubt. Mehrere freie Anmerkungen auf Kopfebene sind in PEPPOL nicht zulässig.

So behebst du den Fehler

Fasse alle Kopf-Bemerkungen zu einer einzigen 'ram:IncludedNote' (BT-22) zusammen oder verlagere zusätzliche Hinweise auf die Positionsebene.

XPath //rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:IncludedNote/ram:Content
Vollständige Anleitung mit XML-Beispiel

Es muss entweder eine Käuferreferenz (BT-10, z. B. Leitweg-ID) oder eine Bestellnummer (BT-13) angegeben werden, damit der Empfänger die Rechnung zuordnen kann.

So behebst du den Fehler

Gib die Käuferreferenz (BT-10) in 'ram:ApplicableHeaderTradeAgreement/ram:BuyerReference' an — in Deutschland ist das für Behörden die Leitweg-ID. Alternativ genügt eine Bestellnummer (BT-13) in 'ram:BuyerOrderReferencedDocument/ram:IssuerAssignedID'.

XPath //rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerReference
Vollständige Anleitung mit XML-Beispiel

Für PEPPOL BIS Billing 3.0 muss die Spezifikationskennung (BT-24) exakt den PEPPOL-Wert tragen. Andernfalls wird die Rechnung nicht als PEPPOL-konform erkannt.

So behebst du den Fehler

Setze BT-24 in 'ram:GuidelineSpecifiedDocumentContextParameter/ram:ID' auf 'urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0'.

XPath //rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID
Vollständige Anleitung mit XML-Beispiel

Wenn eine abweichende Umsatzsteuer-Buchungswährung (BT-6) angegeben wird, muss sie sich von der Rechnungswährung (BT-5) unterscheiden.

So behebst du den Fehler

Entferne BT-6 ('ram:TaxCurrencyCode'), wenn Steuer- und Rechnungswährung identisch sind — BT-6 ist nur für eine abweichende Steuerwährung gedacht.

XPath //rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode
Vollständige Anleitung mit XML-Beispiel

PEPPOL-EN16931-R008#

PEPPOL-Regel

Das Dokument darf keine leeren XML-Elemente enthalten. Jedes vorhandene Element muss einen gültigen Wert tragen — oder ganz weggelassen werden.

So behebst du den Fehler

Entferne leere Tags aus dem XML. Ein Element wie <ram:Name></ram:Name> oder <ram:ID/> ist entweder mit einem gültigen Wert zu füllen oder komplett zu entfernen.

Vollständige Anleitung mit XML-Beispiel

Die elektronische Adresse des Käufers (BT-49) muss angegeben werden — sie ist die Zustelladresse im PEPPOL-Netz.

So behebst du den Fehler

Ergänze BT-49 in 'ram:BuyerTradeParty/ram:URIUniversalCommunication/ram:URIID' mit passendem schemeID-Attribut, z. B. schemeID='EM' für eine E-Mail-Adresse oder '9958' für eine Leitweg-ID.

XPath //rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:URIUniversalCommunication/ram:URIID
Vollständige Anleitung mit XML-Beispiel

Die elektronische Adresse des Verkäufers (BT-34) muss angegeben werden — sie identifiziert den Absender im PEPPOL-Netz.

So behebst du den Fehler

Ergänze BT-34 in 'ram:SellerTradeParty/ram:URIUniversalCommunication/ram:URIID' mit passendem schemeID-Attribut, z. B. schemeID='EM' für eine E-Mail-Adresse.

XPath //rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:URIUniversalCommunication/ram:URIID
Vollständige Anleitung mit XML-Beispiel

PEPPOL-EN16931-R040#

PEPPOL-Regel

Sind Grundbetrag und Prozentsatz eines Nachlasses oder Zuschlags angegeben, muss der Betrag exakt Grundbetrag × Prozentsatz / 100 ergeben.

So behebst du den Fehler

Korrigiere den Nachlass-/Zuschlagsbetrag so, dass er dem gerundeten Ergebnis aus Grundbetrag × Prozentsatz / 100 entspricht.

Vollständige Anleitung mit XML-Beispiel

PEPPOL-EN16931-R041#

PEPPOL-Regel

Wird bei einem Nachlass oder Zuschlag ein Prozentsatz angegeben, muss auch der zugehörige Grundbetrag vorhanden sein.

So behebst du den Fehler

Ergänze den Grundbetrag (BasisAmount) des Nachlasses/Zuschlags oder entferne den Prozentsatz, wenn er nicht benötigt wird.

Vollständige Anleitung mit XML-Beispiel

PEPPOL-EN16931-R042#

PEPPOL-Regel

Wird bei einem Nachlass oder Zuschlag ein Grundbetrag angegeben, muss auch der zugehörige Prozentsatz vorhanden sein.

So behebst du den Fehler

Ergänze den Prozentsatz des Nachlasses/Zuschlags oder entferne den Grundbetrag, wenn nur ein fester Betrag gemeint ist.

Vollständige Anleitung mit XML-Beispiel

PEPPOL-EN16931-R043#

PEPPOL-Regel

Der Indikator, der einen Posten als Nachlass oder Zuschlag kennzeichnet (ChargeIndicator), muss exakt 'true' oder 'false' sein.

So behebst du den Fehler

Setze den ChargeIndicator auf 'true' (Zuschlag) oder 'false' (Nachlass) — andere Werte wie '1', '0' oder Leerwerte sind unzulässig.

Vollständige Anleitung mit XML-Beispiel

PEPPOL-EN16931-R055#

PEPPOL-Regel

Der Gesamt-Umsatzsteuerbetrag (BT-110) und der Steuerbetrag in Buchungswährung (BT-111) müssen dasselbe Vorzeichen haben.

So behebst du den Fehler

Prüfe, dass BT-110 und BT-111 beide positiv (oder bei einer Gutschrift beide negativ) sind — ein gegensätzliches Vorzeichen ist unzulässig.

Vollständige Anleitung mit XML-Beispiel

Bei Zahlung per SEPA-Lastschrift muss die Mandatsreferenz (BT-89) angegeben werden.

So behebst du den Fehler

Ergänze die Mandatsreferenz (BT-89) in 'ram:SpecifiedTradePaymentTerms/ram:DirectDebitMandateID', wenn als Zahlungsart eine Lastschrift (Code 59/UNTDID 4461) angegeben ist.

XPath //rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradePaymentTerms/ram:DirectDebitMandateID
Vollständige Anleitung mit XML-Beispiel

Auf Dokumentebene ist nur eine einzige Projektreferenz (BT-11) erlaubt.

So behebst du den Fehler

Reduziere die Projektreferenzen auf genau eine 'ram:SpecifiedProcuringProject' (BT-11) auf Kopfebene.

XPath //rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SpecifiedProcuringProject/ram:ID
Vollständige Anleitung mit XML-Beispiel

Kein Fehlercode passt zu deiner Suche. Versuche einen anderen Begriff oder validiere deine Rechnung direkt.

Fehler automatisch finden statt manuell suchen

Lade deine ZUGFeRD- oder XRechnung-Datei hoch — du bekommst jeden Fehler mit Regel-ID, Feld, Korrekturvorschlag und XPath zurück. Im Browser oder per API.

Kostenlos online validieren API-Key holen
Rechnung prüfen