Rule reference

BR-63 The buyer electronic address (BT-49) must have a scheme identifier

The buyer electronic address (BT-49) must have a scheme identifier. The bare value "x" is ambiguous — the same string can be a VAT number under one scheme and a GLN under another, and the receiving access point resolves it by scheme.

This rule is implemented and its error payload below is real, but the long-form write-up — normative text, worked example, divergence note — is not written yet. Everything the library knows about this rule is on this page. Ask and we will prioritise it.

Business term
BT-49
Severity
fatal

What the library returns

The exact object in result.errors when this rule fires. Generated by running @attestwire/en16931, not transcribed:

TeachingError
{
  "rule": "BR-63",
  "field": "BT-49",
  "severity": "fatal",
  "message": "The buyer electronic address (BT-49) must have a scheme identifier. The bare value \"x\" is ambiguous — the same string can be a VAT number under one scheme and a GLN under another, and the receiving access point resolves it by scheme.",
  "fix": "Set electronicAddress.schemeId to the Peppol EAS code, e.g. \"9930\" for a German VAT identifier, \"0204\" for a Leitweg-ID, \"0088\" for a GLN.",
  "example": "\"electronicAddress\": { \"schemeId\": \"9930\", \"value\": \"x\" }",
  "xpath": "/ubl:Invoice/cac:AccountingCustomerParty/cac:Party/cbc:EndpointID/@schemeID",
  "docsUrl": "https://attestwire.com/rules/BR-63"
}

xpath locates the element in the generated UBL document, which is where a KoSIT or Peppol validator will report the same problem.

A passing value

the shape this field expects
"electronicAddress": { "schemeId": "9930", "value": "x" }

The fix

Set electronicAddress.schemeId to the Peppol EAS code, e.g. "9930" for a German VAT identifier, "0204" for a Leitweg-ID, "0088" for a GLN.

Arrived from a stack trace? The docsUrl on every error links straight here. Something wrong on this page — tell us.