Counterfoil rule note
Quoted from a public specification. This page is not a validator, and it is not tax, legal, or accounting advice.
An Invoice where the VAT category code (BT-151, BT-95 or BT-102) is “Split payment” shall be a domestic Italian invoice.
Source: https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/BR-B-01/
Peppol BIS Billing 3.0, May 2026 release, EN 16931 model bound to UBL
Severity note: fatal, from the Flag column of the Peppol BIS Billing 3.0 UBL rules index retrieved 2026-10-18.
If the VAT category code (BT-151, BT-95 or BT-102) is “Split payment”, the invoice must be a domestic Italian invoice. The statement says “shall be”, not “shall contain”, and it does not say “at least one”. The published test compares the category id to B. A tax-category comparison is cbc:ID ='B' with a space before = and no space after =. A classified-tax-category comparison is cbc:ID = 'B' with spaces around =. Neither comparison requires the tax scheme, and neither uses normalize-space. Neither branch calls exists. The other branch is not(...). The country comparison is != 'IT' with spaces around !=.
When a tax category id or a classified tax category id is B, make every identification code IT. The statement calls that category “Split payment” and asks for a domestic Italian invoice.
Illustration of the condition in the official statement. Not an example published by the source.
Fails the stated condition. A tax category or a classified tax category uses id B, and an identification code is not IT.
Passes the stated condition. A tax category uses id B and every identification code is IT. The test also passes when no tax category id is B and no classified tax category id is B.
Copied from the source. Not reimplemented on this page.
/ubl:Invoice | /cn:CreditNote
(not(//cbc:IdentificationCode != 'IT') and (//cac:TaxCategory/cbc:ID ='B' or //cac:ClassifiedTaxCategory/cbc:ID = 'B')) or (not(//cac:TaxCategory/cbc:ID ='B' or //cac:ClassifiedTaxCategory/cbc:ID = 'B'))
All rule notes · JSON · Markdown · llms.txt · Invoice page · Privacy