Erori e-Factura

EN16931

Rotunjirea sumei de plată nu poate avea mai mult de 2 zecimale

Codul regulii este BR-DEC-17.

Mesajul exact din validatorul ANAF

textEroare=[BR-DEC-17]-The allowed maximum number of decimals for the Rounding amount (BT-114) is 2.
textEroare=[UBL-DT-01]-Amounts shall be decimal up to two fraction digits
textEroare= [BR-RO-Z2]-Numarul maxim permis de zecimale pentru Valoare de rotunjire (BT-114) este 2. #The allowed maximum number of decimals for the Rounding amount(BT-114) is 2.

Ce înseamnă

BT-114 (PayableRoundingAmount) este diferența de rotunjire pe care o adaugi sau o scazi din suma de încasat, ca să ajungi la o sumă cu bani întregi. EN 16931 acceptă maximum 2 zecimale pentru acest câmp, adică exact ca la orice sumă în bani. Validatorul ANAF dă eroarea BR-DEC-17 când găsește 3 sau mai multe zecimale, de exemplu 0,205.

Cum repari

În programul de facturare, setează rotunjirea la 2 zecimale (0,20, nu 0,205) sau elimină complet câmpul dacă nu ai nevoie de rotunjire. Verifică apoi că suma de plată să fie TaxInclusiveAmount + PayableRoundingAmount.

Exemplu

Așa pică

<ubl:Invoice>
  <cac:LegalMonetaryTotal>
    <cbc:TaxInclusiveAmount currencyID="RON">1190.00</cbc:TaxInclusiveAmount>
    <cbc:PayableRoundingAmount currencyID="RON">0.205</cbc:PayableRoundingAmount>
    <cbc:PayableAmount currencyID="RON">1190.20</cbc:PayableAmount>
  </cac:LegalMonetaryTotal>
</ubl:Invoice>

Așa trece

<ubl:Invoice>
  <cac:LegalMonetaryTotal>
    <cbc:TaxInclusiveAmount currencyID="RON">1190.00</cbc:TaxInclusiveAmount>
    <cbc:PayableRoundingAmount currencyID="RON">0.20</cbc:PayableRoundingAmount>
    <cbc:PayableAmount currencyID="RON">1190.20</cbc:PayableAmount>
  </cac:LegalMonetaryTotal>
</ubl:Invoice>

Greșeala asta strică și alte verificări, deci în același răspuns vei găsi și: BR-DEC-RO-17, 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 Rounding amount (BT-114) is 2.

Unde se aplică

$Document_totals

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

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

În factura de referință BT-114 lipsește, așa că am adăugat elementul în ambele fragmente; poziția lui corectă este după PrepaidAmount și înainte de PayableAmount. Nu am putut confirma dacă validatorul aplică vreo toleranță la BR-CO-16 (PayableAmount = TaxInclusiveAmount - PrepaidAmount + PayableRoundingAmount): dacă nu aplică, variantă greșită va raporta în plus și o diferență de 0,005 între suma de plată și rotunjire, iar corecția trebuie făcută în ambele locuri.