Fixture ID: peppolNoteSubjectCode · XPath: /rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:IncludedNote/ram:SubjectCode
The document note subject code (BT-21) is "AAI", and Peppol's CII binding forbids it. The rule is titled "No more than one note is allowed on document level", which is not what its second half does: the test is count(ram:IncludedNote) <= 1 and not(ram:IncludedNote/ram:SubjectCode), so a document carrying exactly one note still fails if that note has a subject code. This is a warning rather than an error because it depends on the syntax you emit, which "peppol-bis-3" does not state. generateXRechnungUBL is unaffected — UBL has no element for BT-21, so its binding folds the code into the note text as "#AAI#…" and Peppol's UBL R002 tests only the note count. generateCii omits the element under this profile, so BT-21 will be absent from the CII document you get back. This is a Peppol BIS Billing 3.0 profile rule: it applies because profile is "peppol-bis-3". It does not apply to the en16931, xrechnung-ubl or xrechnung-cii profiles, whose validators will accept the same document.
PEPPOL-EN16931-R002Remove noteSubjectCode if you intend to send CII over Peppol, and fold whatever it qualified into the note text itself — the code is a UNTDID 4451 subject qualifier, and Peppol takes the view that a free-text note on a Peppol invoice needs no machine-readable subject. Keep it if you are generating UBL, which is Peppol's mandatory syntax and where the code is carried losslessly.
"note": "Delivery in two parts, the second on 2026-09-01."