Codul regulii este BR-46.
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.
Î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>.
<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><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>In practica nu ajungi sa vezi codul regulii: valoarea e respinsa mai devreme, de schema XML, iar mesajul arata cum scrie mai sus. Regula exista si ea, dar prinde doar cazurile pe care schema le lasa sa treaca.
ro16931-ubl-1.0.9. Factura cu fragmentul din stanga a fost respinsa cu mesajul de mai sus; cea cu fragmentul din dreapta a trecut fara nicio eroare. Verificarea s-a facut pe 14.09.2026.Each VAT breakdown (BG-23) shall have a VAT category tax amount (BT-117).
$VAT_breakdown
$BR-46