BR-DE-01 Elektronisches Adressierungsschema des Käufers
Was diese Regel prüft
BR-DE-01 stellt sicher, dass das Feld BT-49-1 (Scheme Identifier des elektronischen Endpunkts des Käufers) in der Rechnung vorhanden und mit einem gültigen Wert befüllt ist. Konkret wird geprüft, ob das Attribut schemeID am Element cbc:EndpointID innerhalb von cac:AccountingCustomerParty/cac:Party/cbc:EndpointID angegeben ist.
Ohne dieses Schema-Kennzeichen kann das Routing-System nicht erkennen, um welche Art von Adresse es sich handelt — sei es eine Leitweg-ID, eine GLN, eine E-Mail-Adresse oder ein anderer Identifier.
Warum diese Regel existiert
Im deutschen E-Invoicing-Ökosystem werden Rechnungen über Netzwerke wie Peppol oder die zentrale Rechnungseingangsplattform des Bundes (ZRE/OZG-RE) an den Empfänger zugestellt. Damit die Infrastruktur die Rechnung korrekt weiterleiten kann, muss sie wissen, wie die elektronische Adresse des Käufers zu interpretieren ist.
Die Leitweg-ID ist das wichtigste Adressierungsschema für öffentliche Auftraggeber in Deutschland. Sie folgt dem Muster 04011000-1234512345-06 und wird über den Scheme Identifier 0204 gekennzeichnet. Ohne diese Kennung würde das System die Leitweg-ID nicht von einer beliebigen Zeichenkette unterscheiden können.
Diese Regel ist eine deutsche Erweiterung der europäischen Norm EN 16931 und geht über die Anforderungen des Basisstandards hinaus. Sie gilt für alle XRechnung-konformen Rechnungen.
Was einen Fehler auslöst
Die Regel schlägt fehl, wenn:
- Das Element
cbc:EndpointIDimcac:AccountingCustomerParty/cac:Party-Block keinschemeID-Attribut besitzt - Das
schemeID-Attribut vorhanden, aber leer ist - Ein nicht registrierter Scheme Identifier verwendet wird (z. B. ein frei erfundener Code)
- Das Element
cbc:EndpointIDgänzlich fehlt (in Kombination mit anderen Regeln)
Fehlerhaftes XML-Beispiel
Das folgende Beispiel zeigt eine Rechnung, bei der die elektronische Adresse des Käufers ohne Schema-Kennzeichen angegeben ist:
<cac:AccountingCustomerParty>
<cac:Party>
<!-- FEHLER: EndpointID ohne schemeID-Attribut -->
<cbc:EndpointID>04011000-1234512345-06</cbc:EndpointID>
<cac:PartyIdentification>
<cbc:ID>K-12345</cbc:ID>
</cac:PartyIdentification>
<cac:PartyName>
<cbc:Name>Bundesministerium für Beispiele</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>Beispielstraße 42</cbc:StreetName>
<cbc:CityName>Berlin</cbc:CityName>
<cbc:PostalZone>10115</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>DE</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Bundesministerium für Beispiele</cbc:RegistrationName>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingCustomerParty>
Die Lösung
Ergänzen Sie das schemeID-Attribut am cbc:EndpointID-Element mit dem passenden Wert für den verwendeten Adresstyp:
<cac:AccountingCustomerParty>
<cac:Party>
<!-- KORREKT: Leitweg-ID mit schemeID="0204" -->
<cbc:EndpointID schemeID="0204">04011000-1234512345-06</cbc:EndpointID>
<cac:PartyIdentification>
<cbc:ID>K-12345</cbc:ID>
</cac:PartyIdentification>
<cac:PartyName>
<cbc:Name>Bundesministerium für Beispiele</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>Beispielstraße 42</cbc:StreetName>
<cbc:CityName>Berlin</cbc:CityName>
<cbc:PostalZone>10115</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>DE</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Bundesministerium für Beispiele</cbc:RegistrationName>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingCustomerParty>
Die gängigsten Scheme Identifier im deutschen Kontext:
| Schema | Code | Beispielwert |
|---|---|---|
| Leitweg-ID | 0204 | 04011000-1234512345-06 |
| GLN (Global Location Number) | 0088 | 4000001000005 |
| E-Mail (Peppol) | EM | rechnung@behoerde.de |
| ICD / Unternehmen | 0199 | DE123456789 |
Sonderfälle und häufige Fehler
EndpointID vs. PartyIdentification: Ein häufiger Fehler ist die Verwechslung von cbc:EndpointID und cac:PartyIdentification/cbc:ID. Beide Elemente können Identifier enthalten, aber nur cbc:EndpointID wird für das elektronische Routing verwendet. PartyIdentification ist eine geschäftliche Kennung (z. B. Kundennummer) und hat keine Routing-Funktion.
Leitweg-ID-Format: Die Leitweg-ID besteht aus drei Teilen: Grob-Adressierung (Bundesland/Behörde), Fein-Adressierung (Organisationseinheit) und Prüfziffer. Beispiel: 04011000-1234512345-06. Das Format muss korrekt sein, da es von der Plattform validiert wird — aber BR-DE-01 prüft nur das Vorhandensein des schemeID-Attributs, nicht das Format des Werts.
Mehrere Empfänger-Identifier: Eine Rechnung kann sowohl cbc:EndpointID als auch cac:PartyIdentification enthalten. Das ist nicht nur erlaubt, sondern in vielen Fällen sogar empfohlen, um sowohl Routing als auch geschäftliche Zuordnung sicherzustellen.
Peppol-Kontext: Wenn Sie Rechnungen über das Peppol-Netzwerk versenden, muss der Scheme Identifier einem im Peppol-Verzeichnis registrierten Schema entsprechen. Der Code EM für E-Mail-Adressen wird im Peppol-Kontext häufig für kleinere Empfänger ohne Leitweg-ID oder GLN verwendet.