Fix the missing buyer reference
one field, one email to your customer, done.
A German customer has refused your invoice because it has no buyer reference. This is the most common rejection on German invoices and it is a one-field fix. This example follows an XRechnung invoice (XRechnung is Germany’s version of the European e-invoice standard, which German public bodies require) through the correction. BR-DE-15 is the name of the failed rule; BT-10 is the standard’s number for the missing field.
Understand the rejection
An XRechnung check can report BR-DE-15 when the invoice is missing its buyer reference. The reference helps the buyer route the invoice to the right department or person. Start by obtaining the value the buyer expects.
For a German public-sector buyer, ask for their Leitweg-ID, the routing code a German public body gives its suppliers. If your contact does not know it, their accounts-payable or procurement desk will. A VAT number or a Peppol identifier (the address a buyer has on Peppol, the network many European buyers receive invoices through) is not a substitute for the buyer reference.
Find the missing field
When you work with JSON data
In Attestwire’s JSON model, the field is buyerReference. Add the actual reference supplied by the buyer.
{
"profile": "xrechnung-ubl",
"invoiceNumber": "EXAMPLE-001",
"buyerReference": "BUYER-SUPPLIED-REFERENCE"
}
Request excerpt, not a complete invoice. The reference above is a placeholder.
When you work with UBL XML
UBL and CII are the two XML file formats an EN 16931 invoice can be written in. In UBL the same field appears as cbc:BuyerReference under the invoice root. This is the XML equivalent of the JSON field above:
<cbc:BuyerReference> BUYER-SUPPLIED-REFERENCE </cbc:BuyerReference>
Keep the complete document and correct UBL element order. Do not append this fragment arbitrarily or paste a UBL element into CII XML.
Review, then revalidate
- Keep the original invoice. Save the file and its rejection report so you can compare them with the corrected version.
- Obtain the real buyer reference. Use the buyer’s instructions; do not copy the placeholder from this guide.
-
Update and review the invoice. Add
buyerReferenceto your JSON data, or update the corresponding field in the complete XML file. - Check the complete invoice again. Confirm that BR-DE-15 no longer appears. Review any remaining errors before resubmitting to the buyer.
The local checker runs in your browser. If you need to compare a rejection report with the invoice, use hosted diagnosis below. For the API’s revision and confirmation fields, see the API documentation.
Our synthetic example fails BR-DE-15 before the correction and passes local validation afterwards, using engine 0.7.3. No receiver or official validator was contacted for this example.
Know what a pass means
Passing BR-DE-15 means this check found a buyer reference. It does not prove that the reference belongs to the buyer or that their receiving system will accept the invoice. Follow the buyer’s instructions and run any additional checks required by your invoice provider.
| Identifier | What it is used for |
|---|---|
| Buyer reference · BT-10 | The buyer’s required invoice reference |
| VAT number | Check VAT registration through the EU’s VIES service |
| Peppol identifier (type + value) | Find the buyer on the Peppol e-invoicing network |
If the error persists, confirm that the correction reached the exact file you submitted and that the rejection report refers to the revised version.
The local playground requires no key. Hosted diagnosis requires a key and uses 1 document from your plan per completed check.