Romania's e-Factura is mandatory, and the hard part isn't the idea — it's ANAF's stack. You hit SOAP endpoints, an OAuth + digital-certificate lifecycle, and rejection codes that read like hex dumps. This is the field guide I wish I'd had: what actually makes ANAF reject an invoice, and how to read the error.
Why does ANAF reject my e-Factura?
Almost every rejection falls into one of four buckets:
Schema / RO_CIUS validation — the XML is well-formed but breaks a business rule of the Romanian CIUS (the national customization of the EU standard, EN 16931). This is the most common and the most cryptic.
Missing or malformed mandatory fields — a required party identifier, tax category, or total is absent or in the wrong shape.






