Codul regulii este BR-IP-08.
Pentru fiecare cotă IPSI din detalierea de TVA (BG-23), baza înscrisă acolo (BT-116) trebuie să fie exact suma liniilor de factură care au același cod IPSI (BT-151) și aceeași cotă (BT-152), plus eventualele taxe la nivel de factură și minus reducerile. Dacă o linie are alt cod de TVA sau altă cotă, ea iese din sumă, iar baza din detaliere nu mai corespunde cu liniile. IPSI este impozitul din Ceuta și Melilla (codul M în lista EN 16931) și nu există în sistemul românesc de TVA, deci regula se declanșează doar dacă un astfel de cod a ajuns în factură din greșeală. Factura de referință folosește cota standard S; în exemplele de mai jos codul a fost mutat pe M doar ca să se vadă regula.
Verifică detalierea de TVA: baza fiecărei cote IPSI trebuie să fie suma liniilor cu același cod și aceeași cotă. În exemplu, baza din detaliere este 900,00 în loc de 1.000,00 cât însumează linia, iar TVA-ul aferent a scăzut la 171,00. Dacă ai modificat după generare o linie (valoare, cotă sau cod de TVA), regenerează detalierea și totalurile, sau corectează manual baza din detaliere până egalează liniile.
<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">171.00</cbc:TaxAmount><!-- BT-110 TVA total -->
<cac:TaxSubtotal><!-- BG-23 DETALIEREA TVA -->
<cbc:TaxableAmount currencyID="RON">900.00</cbc:TaxableAmount><!-- BT-116 NU acopera linia de 1000.00 -->
<cbc:TaxAmount currencyID="RON">171.00</cbc:TaxAmount><!-- BT-117 -->
<cac:TaxCategory>
<cbc:ID>M</cbc:ID><!-- BT-118 IPSI -->
<cbc:Percent>19.00</cbc:Percent><!-- BT-119 -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:InvoiceLine><!-- BG-25 LINIA FACTURII -->
<cbc:ID>1</cbc:ID><!-- BT-126 -->
<cbc:InvoicedQuantity unitCode="H87">10</cbc:InvoicedQuantity><!-- BT-129, H87 = bucata -->
<cbc:LineExtensionAmount currencyID="RON">1000.00</cbc:LineExtensionAmount><!-- BT-131 -->
<cac:Item>
<cbc:Name>Serviciu de consultanta</cbc:Name><!-- BT-153 -->
<cac:ClassifiedTaxCategory>
<cbc:ID>M</cbc:ID><!-- BT-151 -->
<cbc:Percent>19.00</cbc:Percent><!-- BT-152 -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price>
<cbc:PriceAmount currencyID="RON">100.00</cbc:PriceAmount><!-- BT-146 -->
</cac:Price>
</cac:InvoiceLine>
</ubl:Invoice><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><!-- BT-110 TVA total -->
<cac:TaxSubtotal><!-- BG-23 DETALIEREA TVA -->
<cbc:TaxableAmount currencyID="RON">1000.00</cbc:TaxableAmount><!-- BT-116 = suma liniilor IPSI la 19% -->
<cbc:TaxAmount currencyID="RON">190.00</cbc:TaxAmount><!-- BT-117 -->
<cac:TaxCategory>
<cbc:ID>M</cbc:ID><!-- BT-118 IPSI -->
<cbc:Percent>19.00</cbc:Percent><!-- BT-119 -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:InvoiceLine><!-- BG-25 LINIA FACTURII -->
<cbc:ID>1</cbc:ID><!-- BT-126 -->
<cbc:InvoicedQuantity unitCode="H87">10</cbc:InvoicedQuantity><!-- BT-129, H87 = bucata -->
<cbc:LineExtensionAmount currencyID="RON">1000.00</cbc:LineExtensionAmount><!-- BT-131 -->
<cac:Item>
<cbc:Name>Serviciu de consultanta</cbc:Name><!-- BT-153 -->
<cac:ClassifiedTaxCategory>
<cbc:ID>M</cbc:ID><!-- BT-151 -->
<cbc:Percent>19.00</cbc:Percent><!-- BT-152 -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price>
<cbc:PriceAmount currencyID="RON">100.00</cbc:PriceAmount><!-- BT-146 -->
</cac:Price>
</cac:InvoiceLine>
</ubl:Invoice>Greseala asta strica si alte verificari, deci in acelasi raspuns vei gasi si: BR-CO-15. Le repari pe toate odata cu asta.
ro16931-ubl-1.0.9. Factura cu fragmentul din stanga a fost respinsa cu exact mesajul de mai sus; cea cu fragmentul din dreapta a trecut fara nicio eroare. Verificarea s-a facut pe 14.09.2026.For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "IPSI", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "IPSI" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
$VATIP
$BR-IP-08
Codul scris efectiv în XML: textul oficial al regulii spune că BT-118 este 'IPSI', dar în lista de coduri EN 16931 categoria IPSI (impozitul din Ceuta și Melilla) este M, iar 'IPSI' nu este o valoare de cod validă. Nu am putut confirma din datele primite dacă schematronul CIUS-RO testează literalul 'IPSI' sau codul 'M'; exemplele folosesc M. De asemenea, nu am confirmat dacă CIUS-RO acceptă deloc această categorie de TVA pe o factură emisă în România.