Attestwire › Rule reference › BR-CO-26
BR-CO-26 The seller must be identifiable by something other than a name
noun · EN 16931 · fatal · BT-29 / BT-30 / BT-31
a seller with a name and nothing to prove it.
Your invoice was refused because the seller, you, is identified only by name and address. The buyer’s system needs a number it can look you up by: your VAT number, your company registration number, or an identifier such as a GLN. Adding your VAT number fixes this and several other rules at once. In the standard those are fields BT-29, BT-30 and BT-31, and BR-CO-26 is the rule that asks for at least one.
- Business term
BT-29 / BT-30 / BT-31— Seller identifiers- Severity
fatal- Applies to
All profiles
The fix
Add your VAT number to the seller block, seller.vatId, if you are VAT-registered; it satisfies this rule and several others at once. If you are not, your commercial-register number in seller.legalRegistrationId does the job. Fill this in where your company profile is configured, not per invoice: it is the same value on every document you will ever issue, and an invoice that reaches this rule is usually one whose seller record was never finished.
What the rule requires
The invoice must carry at least one of: the seller identifier (BT-29), the seller legal registration identifier (BT-30), or the seller VAT identifier (BT-31). One is enough; most invoices carry two.
In this model those are seller.identifier (a GLN, a DUNS number, a national organisation number, with its ISO 6523 scheme), seller.legalRegistrationId (a commercial-register number such as a German HRB), and seller.vatId.
The name in BT-27 and the postal address in BG-5 do not count, and that is the point of the rule. Two companies can share a name, and companies move. The buyer’s system needs a key it can look up.
In order for the buyer to automatically identify a supplier, the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) and/or the Seller VAT identifier (BT-31) shall be present.
Failing and passing
validateInput({
// ...
seller: {
name: "Acme GmbH",
// no vatId, no legalRegistrationId, no identifier <- BR-CO-26
address: { city: "Berlin", postalCode: "10115", countryCode: "DE" },
},
// ...
});
// -> { valid: false, errors: [ { rule: "BR-CO-26", field: [ "BT-29", "BT-30", "BT-31" ], ... } ] }validateInput({
// ...
seller: {
name: "Acme GmbH",
vatId: "DE123456789", // BT-31
legalRegistrationId: "HRB 12345 B", // BT-30, optional but useful
address: { city: "Berlin", postalCode: "10115", countryCode: "DE" },
},
// ...
});
// -> { valid: true, errors: [] }Why it exists
Your buyer’s accounts-payable system has to match this invoice to a supplier record without a person reading it, which is the premise of e-invoicing. If the only thing on the document is “Acme GmbH, Berlin”, matching becomes fuzzy string comparison against a master-data table, which either fails or, worse, matches the wrong supplier.
An identifier turns that into a lookup. It is also what makes duplicate-supplier cleanup possible on the buyer’s side, a real cost you never see.
What the library returns
The full error returned by @attestwire/en16931. It includes the rule ID,
affected field and suggested correction. Developers can use this object in their application:
{
"rule": "BR-CO-26",
"field": [
"BT-29",
"BT-30",
"BT-31"
],
"severity": "fatal",
"message": "In order for the buyer to automatically identify you, the invoice must carry at least one of the seller identifier (BT-29), seller legal registration identifier (BT-30) or seller VAT identifier (BT-31). A name and address alone are not machine-resolvable to a supplier record.",
"fix": "Set seller.vatId (BT-31) if you are VAT-registered, otherwise seller.legalRegistrationId (BT-30) such as your commercial-register number.",
"example": "\"seller\": { \"vatId\": \"DE123456789\", \"legalRegistrationId\": \"HRB 12345\" }",
"docsUrl": "https://attestwire.com/rules/BR-CO-26"
}How our check differs
None. This check reads the three terms the published rule names, so a document that clears BR-CO-26 here clears it at KoSIT and at Peppol too.
Two consequences follow. A tax registration number (BT-32) does not satisfy this rule. A seller identified only by taxRegistrationId, a German Steuernummer say, fails here, because BT-32 is not in the rule’s list.
If that is your only identifier, add legalRegistrationId with your commercial-register number.
A seller identifier (BT-29) on its own is enough. A seller whose only identifier is a GLN or a DUNS number set in seller.identifier passes, as the published rule says.
See also: BR-S-02 — standard-rated lines need a seller VAT identifier specifically; BR-DE-16 — XRechnung asks the same question more strictly.