Erori e-Factura

EN16931

Totalul facturii fără TVA (BT-109) cu maximum 2 zecimale

Codul regulii este BR-DEC-12.

Mesajul exact din validatorul ANAF

textEroare=[BR-CO-13]-Invoice total amount without VAT (BT-109) = Σ Invoice line net amount (BT-131) - Sum of allowances on document level (BT-107) + Sum of charges on document level (BT-108).
textEroare=[BR-DEC-12]-The allowed maximum number of decimals for the Invoice total amount without VAT (BT-109) is 2.
textEroare=[BR-CO-15]-Invoice total amount with VAT (BT-112) = Invoice total amount without VAT (BT-109) + Invoice total VAT amount (BT-110).
textEroare=[UBL-DT-01]-Amounts shall be decimal up to two fraction digits
textEroare= [BR-RO-Z2]-Numarul maxim permis de zecimale pentru Valoarea totala a facturii fara TVA (BT-109) este 2. #The allowed maximum number of decimals for the Invoice total amount without VAT (BT-109) is 2.

Ce înseamnă

BT-109 este totalul facturii fără TVA, adică baza pe care se calculează TVA-ul, scrisă în cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount. Regula impune ca această sumă să aibă cel mult 2 zecimale în XML. Dacă programul scrie 1000.123, ANAF respinge factura chiar dacă aritmetica din spate este corectă.

Cum repari

Setează în programul de facturare rotunjirea la 2 zecimale pentru toate totalurile facturii (bază, TVA, total cu TVA, de plată), nu doar la afișare. După rotunjire verifică faptul că totalul fără TVA rămâne egal cu suma liniilor, altfel factura pică pe regulile de coerență dintre totaluri.

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:LegalMonetaryTotal>
    <cbc:TaxExclusiveAmount currencyID="RON">1000.123</cbc:TaxExclusiveAmount>
  </cac:LegalMonetaryTotal>
</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:LegalMonetaryTotal>
    <cbc:TaxExclusiveAmount currencyID="RON">1000.00</cbc:TaxExclusiveAmount>
  </cac:LegalMonetaryTotal>
</ubl:Invoice>

Greșeala asta strică și alte verificări, deci în același răspuns vei găsi și: BR-CO-13, BR-CO-15, BR-DEC-RO-12, UBL-DT-01. Le repari pe toate odată cu asta.

Verificat. Am pus fiecare din cele două fragmente într-o factură completă și le-am trecut prin validatorul oficial ANAF, versiunea 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ă

The allowed maximum number of decimals for the Invoice total amount without VAT (BT-109) is 2.

Unde se aplică

$Document_totals

Condiția care trebuie să fie adevărată

$BR-DEC-12
Ce nu rezultă din textul oficial al regulii

Nu am confirmat dacă validatorul semnalează simultan și ruperea coerenței dintre totaluri (BR-CO-15: total cu TVA = total fără TVA + TVA), fiindcă în exemplul greșit am modificat doar BT-109, fără să ating celelalte totaluri, conform regulii de decupaj.