BR-CL-17: VAT category of allowance/charge or VAT breakdown not from UNCL 5305
Official message
[BR-CL-17] Invoice tax categories MUST be coded using UNCL 5305 code list
[BR-CL-17] Invoice tax categories MUST be coded using UNCL5305 code list
- Severity
- Error The invoice is invalid and may be rejected by the recipient.
- Applies to
- EN 16931 (CII), EN 16931 (UBL)
What does this mean?
VAT categories must be coded using the UNCL 5305 code list as restricted for EN 16931: S, Z, E, AE, K, G, O, L, M or B. The value given is not permitted.
CII: ram:CategoryTradeTax/ram:CategoryCode is checked, i.e. the category of document level allowances (BT-95) and charges (BT-102). UBL: every cac:TaxCategory/cbc:ID is checked, i.e. additionally the category in the VAT breakdown (BT-118).
Typical causes
A VAT rate (e.g. 19) or a name ("VAT") instead of the category code.
Lower case (s) or spaces.
A code from UNCL 5305 that is not intended for EN 16931, e.g. A.
How to fix the error
State the category with one of the permitted codes; the VAT rate belongs in a separate field (BT-96, BT-103 or BT-119).
CII: ram:SpecifiedTradeAllowanceCharge/ram:CategoryTradeTax/ram:CategoryCode, UBL: cac:AllowanceCharge/cac:TaxCategory/cbc:ID or cac:TaxSubtotal/cac:TaxCategory/cbc:ID.
Generate and validate the invoice again.
In E-Rechnungsfreund
In the invoice form, "Experte" view, section "Zu-/Abschläge auf Dokumentenebene (BG-20/BG-21)" (document level allowances and charges), select a category from the list in the field "St-Kat." (VAT category).
Example
Wrong
<ram:CategoryTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>19</ram:CategoryCode>
</ram:CategoryTradeTax>
Correct
<ram:CategoryTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19</ram:RateApplicablePercent>
</ram:CategoryTradeTax>
For developers: test expression per syntax
EN 16931 (CII) (CII)
Context: ram:CategoryTradeTax/ram:CategoryCode
((not(contains(normalize-space(.), ' ')) and contains(' AE L M E S Z G O K B ', concat(' ', normalize-space(.), ' '))))
EN 16931 (UBL) (UBL)
Context: cac:TaxCategory/cbc:ID
( ( not(contains(normalize-space(.),' ')) and contains( ' AE L M E S Z G O K B ',concat(' ',normalize-space(.),' ') ) ) )
Related validation rules
- BR-CL-01: Invoice type code (BT-3) not from UNTDID 1001
- BR-CL-03: Currency attribute currencyID not according to ISO 4217
- BR-CL-04: Invoice currency code (BT-5) not according to ISO 4217
- BR-CL-05: VAT accounting currency code (BT-6) not according to ISO 4217
- BR-CL-06: Value added tax point date code (BT-8) not permitted
- BR-CL-07: Object identifier scheme (BT-18-1, BT-128-1) not from UNTDID 1153
Last updated:
Explanation of the validation rule, not legal or tax advice.