AttestwireRule referenceBR-CL-08

BR-CL-08 An invoice note subject code must be a UNCL 4451 code

noun · EN 16931 · fatal · BT-21

For a sample invoice, the library reports: The invoice note subject code (BT-21) is "ZZ9", which is not in UNCL 4451 (383 codes).

Business term
BT-21
Severity
fatal

The fix

Set noteSubjectCode to a three-letter UNCL 4451 qualifier — "AAI" general information, "REG" regulatory information, "ABL" governing law, "TXD" tax declaration, "PMT" payment information, "ACB" additional information. Leave it unset if the note needs no subject; a plain note is perfectly valid.

A passing value

the shape this field expects
"note": "Leistungszeitraum Juli 2026", "noteSubjectCode": "AAI"

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:

TeachingError
{
  "rule": "BR-CL-08",
  "field": "BT-21",
  "severity": "fatal",
  "message": "The invoice note subject code (BT-21) is \"ZZ9\", which is not in UNCL 4451 (383 codes). UBL has no element for BT-21 at all: EN 16931's binding prefixes the code onto the note itself, so this library writes cbc:Note as \"#ZZ9#\" followed by your note text, and the validator parses it back out of that string.",
  "fix": "Set noteSubjectCode to a three-letter UNCL 4451 qualifier — \"AAI\" general information, \"REG\" regulatory information, \"ABL\" governing law, \"TXD\" tax declaration, \"PMT\" payment information, \"ACB\" additional information. Leave it unset if the note needs no subject; a plain note is perfectly valid.",
  "example": "\"note\": \"Leistungszeitraum Juli 2026\", \"noteSubjectCode\": \"AAI\"",
  "xpath": "/ubl:Invoice/cbc:Note",
  "docsUrl": "https://attestwire.com/rules/BR-CL-08"
}

xpath is always a UBL path. On a CII invoice, look for the matching CII field instead.