EN16931
Grupa de TVA (BG-23) trebuie să aibă suma TVA (BT-117)
Codul regulii este BR-46.
Mesajul exact din validatorul ANAF
Ce înseamnă
Fiecare detaliere de TVA din factură (BG-23) trebuie să conțină și suma de TVA aferentă cotei respective (BT-117), nu doar baza impozabilă. Din acest element validatorul ANAF adună TVA-ul pe fiecare cotă și îl compară cu TVA-ul total al facturii (BT-110). Dacă lipsește, factura este respinsă chiar dacă totalul general pare corect.
Cum repari
În programul de facturare, verifică fiecare <cac:TaxSubtotal> și scrie în <cbc:TaxAmount> TVA-ul calculat pe grupa respectivă, în aceeași monedă ca factura. Elementul se pune între <cbc:TaxableAmount> și <cac:TaxCategory>.
Exemplu
Așa pică
<ubl:Invoice>
<cac:TaxTotal>
<cbc:TaxAmount currencyID="RON">190.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="RON">1000.00</cbc:TaxableAmount>
<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>Așa trece
<ubl:Invoice>
<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>În practică nu ajungi să vezi codul regulii: valoarea e respinsă mai devreme, de schema XML, iar mesajul arată cum scrie mai sus. Regula există și ea, dar prinde doar cazurile pe care schema le lasă să treacă.
ro16931-ubl-1.0.9. Factura cu fragmentul din stânga a fost respinsă cu 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ă
Each VAT breakdown (BG-23) shall have a VAT category tax amount (BT-117).
Unde se aplică
$VAT_breakdown
Condiția care trebuie să fie adevărată
$BR-46