Erori e-FacturaBR-DEC-16

Suma plătită în avans (BT-113) nu poate avea peste 2 zecimale

Codul regulii este BR-DEC-16.

Mesajul exact din validatorul ANAF

textEroare=[BR-DEC-16]-The allowed maximum number of decimals for the Paid amount (BT-113) 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 Suma platita (BT-113) este 2. #The allowed maximum number of decimals for the Paid amount(BT-113) is 2.

Ce inseamna

BT-113 este avansul încasat înainte de emiterea facturii, adică suma care se scade din totalul cu TVA pentru a rezulta suma de plată. Regula cere ca această sumă să fie scrisă cu cel mult 2 zecimale, ca toate celelalte sume din factură. Validatorul numără zecimalele din textul XML, nu valoarea numerică: 100.000 este respins, chiar dacă înseamnă exact 100,00.

Cum repari

Setează în programul de facturare două zecimale fixe pentru câmpul de avans (BT-113) și verifică fișierul XML exportat, fiindcă rotunjirea de la afișare poate ascunde o a treia zecimală. Dacă modifici avansul, recalculează suma de plată: BT-115 = BT-112 − BT-113 + BT-114.

Exemplu

Asa pica

<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:TaxInclusiveAmount currencyID="RON">1190.00</cbc:TaxInclusiveAmount>
    <cbc:PrepaidAmount currencyID="RON">100.000</cbc:PrepaidAmount>
    <cbc:PayableAmount currencyID="RON">1090.00</cbc:PayableAmount>
  </cac:LegalMonetaryTotal>
</ubl:Invoice>

Asa 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:TaxInclusiveAmount currencyID="RON">1190.00</cbc:TaxInclusiveAmount>
    <cbc:PrepaidAmount currencyID="RON">100.00</cbc:PrepaidAmount>
    <cbc:PayableAmount currencyID="RON">1090.00</cbc:PayableAmount>
  </cac:LegalMonetaryTotal>
</ubl:Invoice>

Greseala asta strica si alte verificari, deci in acelasi raspuns vei gasi si: BR-DEC-RO-16, UBL-DT-01. Le repari pe toate odata cu asta.

Verificat. Am pus fiecare din cele doua fragmente intr-o factura completa si le-am trecut prin validatorul oficial ANAF, versiunea 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.
Regula asa cum e scrisa in schematronul oficial

Textul oficial, in engleza

The allowed maximum number of decimals for the Paid amount (BT-113) is 2.

Unde se aplica

$Document_totals

Conditia care trebuie sa fie adevarata

$BR-DEC-16
Ce nu rezulta din textul oficial al regulii

Factura de referință nu conține deloc avans, așa că am adăugat eu elementul cbc:PrepaidAmount, în ambele variante, pe poziția lui din secvența UBL (după TaxInclusiveAmount, înainte de PayableAmount). Nu am putut confirma din datele primite dacă CIUS-RO impune și alte condiții pentru BT-113 în afara numărului de zecimale, nici dacă validatorul ANAF tratează zerourile finale exact ca în exemplu.