What is BT-10 (Buyer Reference)?
BT-10 is one of the most important fields in the EN 16931 European e-invoicing standard. It carries a text identifier assigned by the buyer that the seller must include on every invoice. Its purpose is to help the buyer route, match, or categorize the invoice within their own systems.
In the EN 16931 semantic data model, BT-10 sits at the invoice header level inside BG-1 (Invoice) and is defined as:
> An identifier assigned by the Buyer used for internal routing purposes.
The field is conditional in the base EN 16931 standard (required only when the buyer has communicated a reference), but mandatory in several national CIUS profiles and in Peppol BIS 3.0 — making it, in practice, a field you must always populate.
Why BT-10 Matters
BT-10 is the primary mechanism through which buyers communicate "how to address the invoice to us." Depending on the country and context, the value in BT-10 can represent:
If BT-10 is missing or incorrect, invoices can be rejected outright (in B2G scenarios) or delayed in approval workflows (in B2B scenarios).
BT-10 Across Standards and Countries
EN 16931 (Base Standard)
Conditional. Required when the buyer has provided a reference to the seller. Cardinality: 0..1.
Peppol BIS 3.0
Mandatory. Peppol rule PEPPOL-EN16931-R003 enforces that BT-10 must be present. If no specific buyer reference exists, Peppol documentation suggests using a placeholder value (though this practice varies by Access Point).
XRechnung (Germany)
Mandatory. German validation rule BR-DE-15 requires BT-10 to be present and non-empty. In the German B2G context, BT-10 carries the Leitweg-ID — the structured routing identifier that directs the invoice to the correct government entity and department. An XRechnung submitted without a valid BT-10 is rejected by the ZRE or OZG-RE portal.
Peppol BIS (Netherlands, Nordics)
Mandatory per Peppol rules. Commonly carries a purchase order reference or internal buyer code.
FatturaPA (Italy)
Italy uses a different routing mechanism (Codice SDI and Codice Destinatario), so BT-10 is less critical for routing but may still be required by specific buyers.
XML Mapping
UBL Syntax
In UBL 2.1 (used by XRechnung, Peppol BIS):
04011000-12345-27
The element sits directly under the root element.
CII Syntax
In UN/CEFACT Cross Industry Invoice (used by ZUGFeRD, Factur-X):
04011000-12345-27
Common Validation Errors
These are among the most frequently encountered validation failures in European e-invoicing. ERP systems that generate invoices for German public-sector clients or Peppol-connected buyers must enforce BT-10 as a required field.
BT-10 vs. BT-13 (Purchase Order Reference)
A common source of confusion: BT-10 (Buyer Reference) and BT-13 (Purchase order reference) serve different purposes.
In Peppol BIS 3.0, the rule PEPPOL-EN16931-R003 is satisfied if either BT-10 or BT-13 is present. In XRechnung, BT-10 specifically (with the Leitweg-ID) is always mandatory regardless of whether BT-13 is also provided.
What ERP Developers Need to Know
1. Always populate BT-10. Even though EN 16931 marks it conditional, Peppol and most CIUS profiles make it mandatory in practice. Default to requiring it in your invoice creation workflow.
2. Country-specific values. In Germany, BT-10 carries the Leitweg-ID. In other countries, it typically carries a PO number or internal reference. Your system should support different label text and validation per country.
3. Validate before submission. For XRechnung, validate the Leitweg-ID format (including check digit). For Peppol, ensure the field is non-empty.
4. Distinguish from BT-13. Don't conflate buyer reference with purchase order reference in your data model. They may hold the same value in some transactions, but they are semantically different fields.
5. Surface this field prominently. BT-10 errors are among the top causes of invoice rejection. Make sure suppliers can easily find and fill this field, and provide contextual help about what value their buyer expects.