einvoiceconverter.come-invoice error codes

BR-S-02

A standard-rated line requires a seller VAT identifier, and none is present.

ErrorEN 16931UBLCII

Why it happens

Charging VAT without declaring a VAT number. Common when a non-registered business copies a VAT-charging template.

How to fix it

Supply BT-31 (seller VAT identifier), BT-63 (tax representative VAT identifier) or the applicable tax registration identifier. If you are not VAT registered you should not be using category S at all.

The official rule

EN 16931, EnglishAn Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
Technical detail — where the rule is evaluated and the exact test
SyntaxContext and assertion
UBL/ubl:Invoice | /cn:CreditNote
(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S']))
CII//rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax[ram:CategoryCode = 'S'][upper-case(ram:TypeCode) = 'VAT']
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID = ('VA', 'FC')] or /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTaxRepresentativeTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID = 'VA']

Check your own invoice

Paste or drop your UBL or CII file into the free validator. It runs the official EN 16931 ruleset plus the German XRechnung layer and lists every rule that fires, BR-S-02 included — no signup, no limit.

Validate an e-invoice free

Fixing the data at source instead? The CSV converter builds a compliant invoice from a spreadsheet export.

Other VAT — standard rated rules