BR-20: Ländercode in der Anschrift des Steuervertreters fehlt
Die Anschrift des Steuervertreters (BG-12) muss einen Ländercode (BT-69) enthalten. Häufig ist die Adresse zwar befüllt, aber ohne das ISO-Länderkennzeichen.
The Seller tax representative postal address (BG-12) shall contain a Tax representative country code (BT-69), if the Seller (BG-4) has a Seller tax representative party (BG-11).
Von der ganzen Anschrift des Steuervertreters ist nur ein Feld hartes Pflichtfeld: das Land. Genau das fehlt hier.
Was die Regel prüft
Wenn die Rechnung einen Steuervertreter des Verkäufers enthält (Gruppe BG-11, BG = Business Group, eine benannte Feldgruppe der Norm), muss dessen Postanschrift (BG-12) den Ländercode BT-69 tragen (BT = Business Term, das nummerierte Einzelfeld). Erwartet wird der zweistellige ISO-3166-1-Code, also DE, AT, NL. In der CII-Syntax ist das ram:CountryID innerhalb von ram:PostalTradeAddress der ram:SellerTaxRepresentativeTradeParty.
Der Ländercode ist deshalb das einzige Pflichtfeld der Adresse, weil er steuerlich entscheidend ist: Er sagt, in welchem Staat der Vertreter die Umsatzsteuerpflichten des ausländischen Verkäufers wahrnimmt. Dieselbe Logik gilt bei Verkäufer- und Käuferanschrift (BR-09, BR-11).
Warum sie in der Praxis fehlschlägt
Typischer Auslöser: Die Adresse des Vertreters wurde als Freitext gepflegt („Domstraße 12, 50667 Köln, Deutschland"), und das Mapping schreibt Straße, PLZ und Ort in die XML, hat aber kein separates Länderfeld, aus dem es ram:CountryID befüllen könnte. Der Ländername im Freitext zählt nicht, verlangt wird der ISO-Code als eigenes Element.
Zweiter Auslöser: Das Land steht als ausgeschriebener Name oder dreistelliger Code (GER, DEU) im Feld. Der Validator akzeptiert nur den zweistelligen ISO-Code; je nach Prüfstufe schlägt dann BR-20 oder eine Codelistenprüfung an.
Wie bei allen BG-11-Regeln gilt auch hier: Wenn gar kein Steuervertreter existiert, ist der eigentliche Fehler, dass die Gruppe überhaupt in der Datei steht.
So behebst du den Fehler
Existiert kein Fiskalvertreter, entferne die Gruppe ram:SellerTaxRepresentativeTradeParty komplett. Existiert einer, ergänze in seiner Anschrift das Element ram:CountryID mit dem zweistelligen ISO-Code des Landes, in dem er ansässig ist. Prüf im selben Zug Name (BR-18) und USt-ID (BR-56), damit die Datei nicht in der nächsten Validierungsrunde erneut abgelehnt wird.
XML-Beispiel: vorher und nachher
<!-- verletzt BR-20: Anschrift vorhanden, aber ohne ram:CountryID -->
<ram:SellerTaxRepresentativeTradeParty>
<ram:Name>Steuerkanzlei Beispiel GmbH</ram:Name>
<ram:PostalTradeAddress>
<ram:PostcodeCode>50667</ram:PostcodeCode>
<ram:CityName>Köln</ram:CityName>
</ram:PostalTradeAddress>
</ram:SellerTaxRepresentativeTradeParty>
<ram:SellerTaxRepresentativeTradeParty>
<ram:Name>Steuerkanzlei Beispiel GmbH</ram:Name>
<ram:PostalTradeAddress>
<ram:PostcodeCode>50667</ram:PostcodeCode>
<ram:CityName>Köln</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
</ram:SellerTaxRepresentativeTradeParty>
Rechnung selbst prüfen
Lade deine Datei hoch und sieh in Sekunden, welche Regeln sie besteht und welche nicht. Kostenlos, ohne Anmeldung, nichts wird gespeichert.