Erori e-FacturaBR-S-01

Defalcarea de TVA nu conține sub-totalul cu cota S

Codul regulii este BR-S-01.

Mesajul exact din validatorul ANAF

textEroare=[BR-S-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is Standard rated shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with Standard rated .
textEroare=[BR-E-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is Exempt from VAT the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are Exempt from VAT .
textEroare=[BR-E-09]-The VAT category tax amount (BT-117) In a VAT breakdown (BG-23) where the VAT category code (BT-118) equals Exempt from VAT shall equal 0 (zero).
textEroare=[BR-E-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) Exempt from VAT shall have a VAT exemption reason code (BT-121) or a VAT exemption reason text (BT-120).

Ce inseamna

Dacă orice linie de factură, orice discount (BG-20) sau orice taxă (BG-21) la nivel de document este încadrată la cota standard (BT-151, BT-95 sau BT-102 = S), atunci defalcarea de TVA (BG-23) trebuie să conțină obligatoriu cel puțin un sub-total cu codul S la BT-118. Validatorul se uită la codul de categorie, nu la suma de TVA: poți avea 190.00 lei TVA calculați corect și tot pică factura. Dacă sub-totalul standard lipsește complet sau codul lui a fost schimbat în E ori Z, regula se încalcă.

Cum repari

Verifică în programul de facturare că pentru fiecare cotă folosită pe linii există un sub-total cu același cod de categorie în defalcarea de TVA (linie S -> sub-total S, linie Z -> sub-total Z etc.). Dacă ai șters sub-totalul de 19% sau i-ai schimbat codul în E/Z, readaugă-l ori corectează codul înapoi în S. Nu lasă nici o linie cu S fără pereche în BG-23.

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:TaxTotal>
    <cac:TaxSubtotal>
      <cac:TaxCategory>
        <cbc:ID>E</cbc:ID>
      </cac:TaxCategory>
    </cac:TaxSubtotal>
  </cac:TaxTotal>
</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:TaxTotal>
    <cac:TaxSubtotal>
      <cac:TaxCategory>
        <cbc:ID>S</cbc:ID>
      </cac:TaxCategory>
    </cac:TaxSubtotal>
  </cac:TaxTotal>
</ubl:Invoice>

Greseala asta strica si alte verificari, deci in acelasi raspuns vei gasi si: BR-E-08, BR-E-09, BR-E-10. 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

An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Standard rated" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "Standard rated".

Unde se aplica

$Invoice

Conditia care trebuie sa fie adevarata

$BR-S-01
Ce nu rezulta din textul oficial al regulii

Nu pot confirma din datele primite ce cod apare concret în fișierele respinse în practică; am folosit E (scutit) doar ca exemplu de cod diferit de S, iar înlocuirea lui lasă intenționat alte reguli (de exemplu cele care cer procent 0 pentru E/Z) să cadă, că să se vadă exact efectul BR-S-01. De asemenea, fragmentul arată doar sub-totalul; linia cu BT-151 = S din factura de referință rămâne neschimbată și este cea care declanșează regula.