EN16931
Cota standard 19% nu poate avea motiv de scutire de TVA
Codul regulii este BR-S-10.
Mesajul exact din validatorul ANAF
Ce înseamnă
Când detalierea de TVA (BG-23) are codul de categorie "S" - cota standard, adică 19% - nu are voie să conțină nici cod de motiv al scutirii (BT-121), nici text de motiv al scutirii (BT-120). Motivul scutirii are sens doar la categoriile scutite (E, AE, K, G, O, Z etc.), unde TVA-ul nu se colectează. Dacă pe o linie cu 19% apare un motiv de scutire, validatorul îl tratează ca pe o contradicție: ori ai scutire, ori ai cota standard, nu amândouă.
Cum repari
În programul de facturare, șterge din blocul de detaliere a TVA (TaxSubtotal) elementele TaxExemptionReasonCode și TaxExemptionReason atunci când codul categoriei de taxă este S. Dacă factura chiar are operațiuni scutite, nu le lasă pe cota standard: creează un TaxSubtotal separat, cu codul de categorie care corespunde scutirii și cota 0, și abia acolo pune motivul scutirii.
Exemplu
Așa pică
<ubl:Invoice xmlns:ubl="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2">
<cac:TaxTotal>
<cbc:TaxAmount currencyID="RON">190.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="RON">1000.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="RON">190.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>19.00</cbc:Percent>
<cbc:TaxExemptionReasonCode>VATEX-EU-O</cbc:TaxExemptionReasonCode>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
</ubl:Invoice>Așa trece
<ubl:Invoice xmlns:ubl="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2">
<cac:TaxTotal>
<cbc:TaxAmount currencyID="RON">190.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="RON">1000.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="RON">190.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>19.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
</ubl:Invoice>ro16931-ubl-1.0.9. Factura cu fragmentul din stânga a fost respinsă cu exact mesajul de mai sus; cea cu fragmentul din dreapta a trecut fără nicio eroare. Verificarea s-a făcut pe 14.09.2026.Regula așa cum e scrisă în schematronul oficial
Textul oficial, în engleză
A VAT breakdown (BG-23) with VAT Category code (BT-118) "Standard rate" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
Unde se aplică
$VATS
Condiția care trebuie să fie adevărată
$BR-S-10
Ce nu rezultă din textul oficial al regulii
Codul VATEX-EU-O din varianta greșită este doar o valoare de exemplu, luată din lista de coduri de scutire EN 16931; regula se declanșează identic pentru orice cod sau text de scutire pus pe o categorie S, deci nu contează valoarea concretă. Nu am verificat dacă validatorul ANAF raportează regula sub același nume BR-S-10 sau tradus.