Account
English

IT-R-001: BT-32 (Seller tax registration identifier) - For Italian suppliers BT-32 minimum…

Peppol national rule · Error · UBL, CII

StandardPeppol BIS Billing 3.0 country rules (NL, DE, IT, SE, DK, NO, GR, IS)CountryItalySeverityError: the invoice is rejectedSyntaxUBL, CIIBusiness terms
  • BT-32 Seller tax registration identifier
Applies toOnly when the seller (or for some rules the buyer) is in the named country: the rule is triggered by the country code of the party. Dutch rules implement NLCIUS, German rules the XRechnung requirements inside Peppol.

Official rule text

[IT-R-001] BT-32 (Seller tax registration identifier) - For Italian suppliers BT-32 minimum length 11 and maximum length shall be 16. Per i fornitori italiani il BT-32 deve avere una lunghezza tra 11 e 16 caratteri

Why this error occurs

The validator evaluates the XPath test above against the context element; the assertion is false for your file.

How to fix it

Compare your file with the rule text and the test expression, adjust the element named in the context, and validate again.

What the validator checks

Checked element (context):

UBL

cac:AccountingSupplierParty/cac:Party[$supplierCountry = 'IT']/cac:PartyTaxScheme[normalize-space(cac:TaxScheme/cbc:ID) != 'VAT']

Test (XPath):

matches(normalize-space(cbc:CompanyID),'^[A-Z0-9]{11,16}$')

CII

ram:SellerTradeParty[$supplierCountry = 'IT']/ram:SpecifiedTaxRegistration

Test (XPath):

ram:ID[normalize-space(@schemeID) !='FC'] or matches(normalize-space(ram:ID[normalize-space(@schemeID) ='FC']) ,'^[A-Z0-9]{11,16}$')

Check your invoice

Drop your XML or PDF on the validator and every failed rule is linked to its page here. Free, no account, the file is not stored.

Check your invoice →

Same check via API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Related rules

Frequently asked questions

What does IT-R-001 mean?

IT-R-001 is a peppol national rule: BT-32 (Seller tax registration identifier) - For Italian suppliers BT-32 minimum length 11 and maximum length shall be 16. Per i fornitori italiani il BT-32 deve avere una lunghezza tra 11 e 16 caratteri

Will my invoice be rejected because of IT-R-001?

Yes. IT-R-001 is flagged "fatal"; validators (KoSIT, Peppol access points, the German ZRE/OZG-RE portals, KSeF) reject the invoice until it is fixed.

Which formats does IT-R-001 apply to?

Only when the seller (or for some rules the buyer) is in the named country: the rule is triggered by the country code of the party. Dutch rules implement NLCIUS, German rules the XRechnung requirements inside Peppol. Syntax: UBL and CII.

Source: Peppol BIS Billing 3.0.20 national rules (November 2025). Catalogue generated from the official rule sets on 2026-10-15.