Validation rules
UBL-SR-16 — UBL rule
The buyer identifier (BT-46) appears more than once — the customer party may carry only one PartyIdentification/ID.
- Rule
UBL-SR-16— official EN 16931 / XRechnung rule- Severity
- error
- Detected by
- tier 3 — KoSIT validator (authoritative)
- Reachability
- Only reachable when validating your own XML — normbill-generated documents cannot trigger it
The normbill invoice model has no buyer identifier; generated XML never contains a buyer cac:PartyIdentification.
How to fix it
Keep a single cac:PartyIdentification/cbc:ID under the customer party.
UBL-SR-16 auf Deutsch — was bedeutet der Fehler?
Der KoSIT-Validator lehnt die Rechnung ab, weil die Käuferkennung (BT-46) mehrfach vorkommt — nur eine PartyIdentification/ID ist bei der Käuferpartei erlaubt.
So beheben Sie den Fehler
Behalten Sie genau eine cac:PartyIdentification/cbc:ID bei der Käuferpartei.
Related rules
UBL-SR-15— The buyer name (BT-44) appears more than once — the customer party may carry only one…UBL-SR-17— The buyer legal registration identifier (BT-47) appears more than once — only one PartyLegalEntity/CompanyID…UBL-SR-14— The seller's additional legal information (BT-33) appears more than once — only one…UBL-SR-18— The buyer VAT identifier (BT-48) appears more than once — only one PartyTaxScheme with TaxScheme/ID 'VAT'…UBL-SR-13— The seller tax registration identifier (BT-32) appears more than once — only one non-VAT PartyTaxScheme may…UBL-SR-19— The payee name (BT-59) is invalid: cac:PayeeParty may carry at most one PartyName/Name, and it must differ…
Official sources
- XRechnung specification (KoSIT / xeinkauf.de)
- KoSIT validator on GitHub and the XRechnung validator configuration
Every 422 from the API lists the rule id, the path in your request JSON, a plain-language message and a suggested fix — see the docs overview for the report format.
Or try it live: drop any XRechnung XML on the free validator — same KoSIT-backed report, no account.