Erori e-FacturaBR-RO-212

Subdiviziunea țării de livrare trebuie codificată ISO 3166-2:RO

Codul regulii este BR-RO-212. In raspunsul de la ANAF vezi insa BR-RO-210: eticheta din mesaj nu coincide cu identificatorul regulii. Nu cauta dupa codul regulii, ci dupa textul mesajului.

Mesajul exact din validatorul ANAF

textEroare=[BR-RO-210]-Daca Codul tarii de livrare (BT-80) este RO , atunci Subdiviziunea tarii de livrare (BT-79) trebuie sa fie codificata folosind lista de coduri ISO 3166-2:RO (ex. RO-B pentru Municipiul Bucuresti, RO-AB pentru judetul Alba...). #If Delivery country code (BT-80) is RO , then Delivery country subdivision (BT-79) must be coded using the ISO 3166-2: RO code list (ex. RO-B for Bucharest, RO-AB for Alba County...).

Ce inseamna

În răspunsul ANAF regula apare sub eticheta [BR-RO-210], nu sub id-ul BR-RO-212, deci după eticheta o cauți. Ea se aplică doar dacă folosești secțiunea de livrare (cac:Delivery) și acolo codul țării de livrare (BT-80) este "RO": atunci subdiviziunea (BT-79) nu poate fi numele județului scris liber, ci trebuie să fie codul ISO 3166-2:RO, adică RO-AB, RO-AR, RO-B și așa mai departe, până la RO-VS. Factura de referință nu are deloc cac:Delivery, deci regula nu o afectează; te prinde doar după ce adaugi livrarea în factura.

Cum repari

În programul de facturare, la adresa de livrare, câmpul de județ/sector trebuie să trimită codul, nu denumirea: pentru Arad scrii RO-AR, pentru Municipiul București scrii RO-B, pentru Brașov scrii RO-BV. Dacă nu ai nevoie de date de livrare separate, cea mai simplă ieșire este să nu completezi deloc adresa de livrare, iar regula nu se aplică.

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:AccountingCustomerParty>
    <cac:Party>
      <cac:PostalAddress>
        <cbc:StreetName>Bd. Revolutiei nr. 10</cbc:StreetName>
        <cbc:CityName>ARAD</cbc:CityName>
        <cbc:PostalZone>310130</cbc:PostalZone>
        <cbc:CountrySubentity>RO-AR</cbc:CountrySubentity>
        <cac:Country>
          <cbc:IdentificationCode>RO</cbc:IdentificationCode>
        </cac:Country>
      </cac:PostalAddress>
      <cac:PartyTaxScheme>
        <cbc:CompanyID>RO14399840</cbc:CompanyID>
        <cac:TaxScheme>
          <cbc:ID>VAT</cbc:ID>
        </cac:TaxScheme>
      </cac:PartyTaxScheme>
      <cac:PartyLegalEntity>
        <cbc:RegistrationName>Cumparator SRL</cbc:RegistrationName>
        <cbc:CompanyID>J02/4321/2012</cbc:CompanyID>
      </cac:PartyLegalEntity>
    </cac:Party>
  </cac:AccountingCustomerParty>
  <cac:Delivery>
    <cac:DeliveryLocation>
      <cac:Address>
        <cbc:CountrySubentity>Arad</cbc:CountrySubentity>
        <cac:Country>
          <cbc:IdentificationCode>RO</cbc:IdentificationCode>
        </cac:Country>
      </cac:Address>
    </cac:DeliveryLocation>
  </cac:Delivery>
  <cac:PaymentMeans>
    <cbc:PaymentMeansCode>31</cbc:PaymentMeansCode>
    <cac:PayeeFinancialAccount>
      <cbc:ID>RO49AAAA1B31007593840000</cbc:ID>
    </cac:PayeeFinancialAccount>
  </cac:PaymentMeans>
</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:AccountingCustomerParty>
    <cac:Party>
      <cac:PostalAddress>
        <cbc:StreetName>Bd. Revolutiei nr. 10</cbc:StreetName>
        <cbc:CityName>ARAD</cbc:CityName>
        <cbc:PostalZone>310130</cbc:PostalZone>
        <cbc:CountrySubentity>RO-AR</cbc:CountrySubentity>
        <cac:Country>
          <cbc:IdentificationCode>RO</cbc:IdentificationCode>
        </cac:Country>
      </cac:PostalAddress>
      <cac:PartyTaxScheme>
        <cbc:CompanyID>RO14399840</cbc:CompanyID>
        <cac:TaxScheme>
          <cbc:ID>VAT</cbc:ID>
        </cac:TaxScheme>
      </cac:PartyTaxScheme>
      <cac:PartyLegalEntity>
        <cbc:RegistrationName>Cumparator SRL</cbc:RegistrationName>
        <cbc:CompanyID>J02/4321/2012</cbc:CompanyID>
      </cac:PartyLegalEntity>
    </cac:Party>
  </cac:AccountingCustomerParty>
  <cac:Delivery>
    <cac:DeliveryLocation>
      <cac:Address>
        <cbc:CountrySubentity>RO-AR</cbc:CountrySubentity>
        <cac:Country>
          <cbc:IdentificationCode>RO</cbc:IdentificationCode>
        </cac:Country>
      </cac:Address>
    </cac:DeliveryLocation>
  </cac:Delivery>
  <cac:PaymentMeans>
    <cbc:PaymentMeansCode>31</cbc:PaymentMeansCode>
    <cac:PayeeFinancialAccount>
      <cbc:ID>RO49AAAA1B31007593840000</cbc:ID>
    </cac:PayeeFinancialAccount>
  </cac:PaymentMeans>
</ubl:Invoice>
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.

ANAF raporteaza sub aceeasi eticheta BR-RO-210 si

Regula asa cum e scrisa in schematronul oficial

Textul oficial, in romana

Daca Codul tarii de livrare (BT-80) este "RO", atunci Subdiviziunea tarii de livrare (BT-79) trebuie sa fie codificata folosind lista de coduri ISO 3166-2:RO (ex. "RO-B" pentru Municipiul Bucuresti, "RO-AB" pentru judetul Alba...)

Textul oficial, in engleza

If Delivery country code (BT-80) is "RO", then Delivery country subdivision (BT-79) must be coded using the ISO 3166-2: RO code list (ex. "RO-B" for Bucharest, "RO-AB" for Alba County...).

Unde se aplica

/ubl:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address | /ubl:CreditNote/cac:Delivery/cac:DeliveryLocation/cac:Address

Conditia care trebuie sa fie adevarata

normalize-space(cac:Country/cbc:IdentificationCode) = 'RO' and not(normalize-space(cbc:CountrySubentity) = $ISO-3166-RO-CODES)
Ce nu rezulta din textul oficial al regulii

Nu pot confirma din datele primite dacă CIUS-RO cere și alte elemente în cac:Delivery atunci când îl adaugi (de exemplu data livrării efective sau denumirea localității de livrare) și dacă acestea declanșează la rândul lor alte reguli; în exemplu am pus doar strict ce cere BR-RO-210, iar cac:Delivery l-am inserat între cac:AccountingCustomerParty și cac:PaymentMeans, ordinea din secvența UBL 2.1. Nu am verificat dacă lista de coduri are într-adevăr 42 de valori (41 de județe plus RO-B), am folosit-o exact pe cea data.