Use this skill with your AI agent
Paste this skill into your AI agent's context, or save the file to your project. Works with any AI agent that reads markdown.
| 1 | --- |
| 2 | name: romania-einvoice |
| 3 | description: > |
| 4 | Use this skill whenever asked about e-invoicing in Romania, RO e-Factura, ANAF electronic invoice system, SPV (Spațiul Privat Virtual), B2B e-invoice clearance model, UBL 2.1 Romania, CIUS-RO, XML invoice validation, or any question about issuing, transmitting, validating, or archiving electronic invoices under Romanian law. Trigger on phrases like "e-Factura", "RO e-Factura", "ANAF invoice", "SPV portal", "CIUS-RO", "B2B clearance Romania", "B2C e-invoice Romania", "OUG 115/2023", "EN 16931 Romania", or "invoice validation ANAF". ALWAYS read this skill before touching any Romania invoicing compliance work. |
| 5 | version: 1.0 |
| 6 | jurisdiction: RO |
| 7 | category: invoicing |
| 8 | depends_on: |
| 9 | - einvoice-workflow-base |
| 10 | --- |
| 11 | |
| 12 | # Romania E-Invoicing Compliance Skill v1.0 |
| 13 | |
| 14 | --- |
| 15 | |
| 16 | ## Section 1 -- Quick Reference |
| 17 | |
| 18 | | Field | Value | |
| 19 | |---|---| |
| 20 | | Country | Romania (România) | |
| 21 | | Currency | RON (domestic); EUR accepted for cross-border | |
| 22 | | E-invoicing system name | RO e-Factura (Sistemul național privind factura electronică) | |
| 23 | | Governing body | Agenția Națională de Administrare Fiscală (ANAF) / Ministry of Finance (MF) | |
| 24 | | Key legislation | OUG 120/2021 (system establishment); OUG 115/2023 (B2B mandate); OUG 69/2024, OUG 138/2024 (B2C extension); Ordinul MF 1.366/2021 (CIUS-RO); Codul Fiscal Art. 319 | |
| 25 | | Implementation timeline | B2G Nov 2021; High-risk B2B Jul 2022; All B2B Jan 2024 (reporting) / Jul 2024 (clearance); B2C Jan 2025 | |
| 26 | | Current status (2026) | Centralised clearance model: B2B and B2G fully mandatory; B2C mandatory for established taxpayers; XML-only invoicing through ANAF platform | |
| 27 | | Skill version | 1.0 | |
| 28 | |
| 29 | --- |
| 30 | |
| 31 | ## Section 2 -- Mandate Scope |
| 32 | |
| 33 | ### Who Must Comply |
| 34 | |
| 35 | **B2G (Business-to-Government):** |
| 36 | All suppliers to Romanian public institutions must issue e-invoices via RO e-Factura. Mandatory since November 2021 for voluntary adoption, compulsory since July 2022. |
| 37 | |
| 38 | **B2B (Business-to-Business):** |
| 39 | All taxable persons established in Romania (VAT-registered or not) must transmit invoices through RO e-Factura for domestic supplies of goods and services with place of supply in Romania. Non-resident entities registered for VAT in Romania must also comply. Since July 2024, this operates as a centralised exchange clearance model -- an invoice is not legally valid until ANAF validates it. |
| 40 | |
| 41 | **B2C (Business-to-Consumer):** |
| 42 | Mandatory from 1 January 2025 for Romanian-established taxpayers. Simplified invoices under Art. 319(12) of the Fiscal Code are exempt. Grace period for penalties ran until 31 March 2025. Certain entities (small taxpayers, non-profits, farmers under special regimes) had until 1 July 2025 to comply. |
| 43 | |
| 44 | ### Thresholds and Exemptions |
| 45 | |
| 46 | - No turnover threshold -- all taxable persons established in Romania must comply. |
| 47 | - Exempt: invoices for intra-community supplies, exports, services taxed outside Romania. |
| 48 | - Exempt: transactions within the OSS (One-Stop Shop) regime. |
| 49 | - Simplified invoices issued via electronic cash registers are exempt from RO e-Factura but require fiscal memory compliance. |
| 50 | |
| 51 | ### Timeline Phases |
| 52 | |
| 53 | | Date | Milestone | |
| 54 | |---|---| |
| 55 | | November 2021 | RO e-Factura launched for B2G and voluntary B2B | |
| 56 | | July 2022 | B2G and high-risk B2B (fruit, vegetables, alcohol, mineral water, construction, new buildings) mandatory | |
| 57 | | January 2024 | All B2B reporting mandatory (5 working day submission window) | |
| 58 | | July 2024 | B2B clearance model active -- invoice legally valid only after ANAF validation | |
| 59 | | January 2025 | B2C e-invoicing mandatory for established taxpayers | |
| 60 | | July 2025 | Remaining B2C exemptions expire (non-profits, small farmers) | |
| 61 | |
| 62 | --- |
| 63 | |
| 64 | ## Section 3 -- Technical Format |
| 65 | |
| 66 | ### Invoice Format |
| 67 | |
| 68 | Romania follows the European standard EN 16931 and accepts two syntaxes: |
| 69 | - **UBL 2.1** (OASIS Universal Business Language) -- the primary and most common format |
| 70 | - **CII** (UN/CEFACT Cross-Industry Invoice) -- accepted but rarely used |
| 71 | |
| 72 | ### National CIUS |
| 73 | |
| 74 | **CIUS-RO** (Core Invoice Usage Specification -- Romania) defines national business rules on top of EN 16931. Current version: **ro16931-ubl-1.0.9** (effective from 5 June 2024). |
| 75 | |
| 76 | CIUS-RO specifies: |
| 77 | - Mandatory Romanian fiscal identifiers (CUI/CIF) |
| 78 | - Romanian-specific tax category codes |
| 79 | - National validation schematrons (operational rules + VAT rules + code list rules) |
| 80 | - Required document type codes for invoices and credit notes |
| 81 | |
| 82 | ### Schema and Namespaces |
| 83 | |
| 84 | | Component | Value | |
| 85 | |---|---| |
| 86 | | UBL 2.1 Invoice schema | `UBL-Invoice-2.1.xsd` | |
| 87 | | UBL 2.1 CreditNote schema | `UBL-CreditNote-2.1.xsd` | |
| 88 | | EN 16931 schematron | CEN/TC 434 base rules | |
| 89 | | CIUS-RO schematron | `ro16931-ubl-1.0.9.sch` | |
| 90 | | Primary namespace | `urn:oasis:names:specification:ubl:schema:xsd:Invoice-2` | |
| 91 | | Common components | `urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2` | |
| 92 | |
| 93 | --- |
| 94 | |
| 95 | ## Section 4 -- Mandatory Fields |
| 96 | |
| 97 | ### Fields Required by CIUS-RO (Beyond EN 16931 Baseline) |
| 98 | |
| 99 | | Field | UBL Path | Notes | |
| 100 | |---|---|---| |
| 101 | | Supplier tax ID (CUI/CIF) | `cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID` | Must be valid Romanian CUI or CIF | |
| 102 | | Buyer tax ID | `cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID` | Required for B2B; for B2C, use CNP or omit | |
| 103 | | Invoice number | `cbc:ID` | Unique, sequential | |
| 104 | | Issue date | `cbc:IssueDate` | ISO 8601 format | |
| 105 | | Due date | `cbc:DueDate` | Required if applicable | |
| 106 | | Invoice type code | `cbc:InvoiceTypeCode` | 380 (invoice), 381 (credit note), 389 (self-billed) | |
| 107 | | Currency code | `cbc:DocumentCurrencyCode` | RON or EUR; if non-RON, must include exchange rate | |
| 108 | | Tax point date | `cbc:TaxPointDate` | Date of supply | |
| 109 | | Supplier name and address | `cac:AccountingSupplierParty/cac:Party/cac:PostalAddress` | Full legal address | |
| 110 | | Buyer name and address | `cac:AccountingCustomerParty/cac:Party/cac:PostalAddress` | Full legal address | |
| 111 | | Line item description | `cac:InvoiceLine/cac:Item/cbc:Name` | Description of goods/services | |
| 112 | | Line quantity and unit | `cac:InvoiceLine/cbc:InvoicedQuantity` | With `@unitCode` | |
| 113 | | Line net amount | `cac:InvoiceLine/cbc:LineExtensionAmount` | | |
| 114 | | Tax category and rate | `cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID` + `cbc:Percent` | Per VAT rate | |
| 115 | | Total tax amount | `cac:TaxTotal/cbc:TaxAmount` | | |
| 116 | | Payable amount | `cac:LegalMonetaryTotal/cbc:PayableAmount` | | |
| 117 | | CPV code | `cac:InvoiceLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode` | Required for B2G; recommended for B2B | |
| 118 | |
| 119 | ### B2C-Specific Fields |
| 120 | |
| 121 | For B2C e-reporting (from 2025), the buyer identification uses a unique identifier. On the test/production platform, a dedicated B2C upload endpoint is used (mandatory since 31 March 2025). |
| 122 | |
| 123 | --- |
| 124 | |
| 125 | ## Section 5 -- Transmission Method |
| 126 | |
| 127 | ### RO e-Factura Platform (SPV) |
| 128 | |
| 129 | | Channel | Detail | |
| 130 | |---|---| |
| 131 | | SPV web portal | Manual upload of XML invoices at anaf.ro → Factura electronică → Trimitere Factură | |
| 132 | | REST API | Automated submission via ANAF web services; separate endpoints for B2B/B2G and B2C | |
| 133 | | Authentication | Qualified digital certificate (semnătură electronică calificată) registered in SPV | |
| 134 | | Submission deadline | 5 calendar days from invoice issuance (but no later than 5 calendar days from the legal deadline for issuance under Art. 319(16) Fiscal Code) | |
| 135 | | Recipient download | Buyer must download validated invoice within 60 days | |
| 136 | | Download availability | Validated XML available for download for 60 days; after that, archived and available on request | |
| 137 | |
| 138 | ### API Workflow |
| 139 | |
| 140 | 1. **Authenticate** with qualified digital certificate via SPV |
| 141 | 2. **Upload** XML invoice to the appropriate endpoint (B2B/B2G or B2C) |
| 142 | 3. **Receive** upload confirmation with upload index ID |
| 143 | 4. **ANAF validates** the invoice (schema + CIUS-RO + business rules) |
| 144 | 5. **Download** validation result: status = "ok" (validated) or "nok" (rejected with error codes) |
| 145 | 6. **For B2B clearance (post-July 2024):** validated invoice = legally issued invoice; buyer retrieves from RO e-Factura |
| 146 | |
| 147 | ### API Rate Limits |
| 148 | |
| 149 | ANAF enforces API call limits. Consult the current "Limite Apeluri API" documentation on the MF technical page for throttling thresholds. |
| 150 | |
| 151 | --- |
| 152 | |
| 153 | ## Section 6 -- Validation Rules |
| 154 | |
| 155 | ### ANAF Validation Process |
| 156 | |
| 157 | Upon upload, ANAF performs: |
| 158 | 1. **XML schema validation** against UBL 2.1 or CII XSD |
| 159 | 2. **EN 16931 base rule validation** (CEN/TC 434 schematrons) |
| 160 | 3. **CIUS-RO rule validation** (national schematrons for operational rules, VAT rules, code lists) |
| 161 | 4. **Business rule validation** (NIF/CUI validity, duplicate check, date consistency) |
| 162 | 5. **Return status**: validated (with download ID for buyer) or rejected (with error details) |
| 163 | |
| 164 | ### Pre-Submission Checks |
| 165 | |
| 166 | - Validate XML locally against UBL 2.1 XSD and CIUS-RO schematron before uploading |
| 167 | - Verify CUI/CIF validity using ANAF's public API |
| 168 | - Ensure invoice number uniqueness within your series |
| 169 | - Confirm tax point date and issue date are consistent |
| 170 | - Verify VAT rates match current Romanian rates |
| 171 | |
| 172 | ### Common Rejection Reasons |
| 173 | |
| 174 | | Reason | Detail | |
| 175 | |---|---| |
| 176 | | Schema violation | XML does not conform to UBL 2.1 XSD | |
| 177 | | CIUS-RO rule failure | National business rule violation (e.g., missing Romanian tax ID format) | |
| 178 | | Invalid CUI/CIF | Tax identification number fails ANAF validation | |
| 179 | | Duplicate invoice | Invoice number already submitted for the same supplier | |
| 180 | | Invalid tax category | Tax code does not match VAT treatment | |
| 181 | | Missing mandatory field | Required element absent or empty | |
| 182 | | Date inconsistency | Issue date after upload date, or tax point date mismatch | |
| 183 | |
| 184 | --- |
| 185 | |
| 186 | ## Section 7 -- Tax Computation Rules |
| 187 | |
| 188 | ### VAT Rates (2026) |
| 189 | |
| 190 | | Rate | Percentage | Application | |
| 191 | |---|---|---| |
| 192 | | Standard | 19% | Most goods and services | |
| 193 | | Reduced 1 | 9% | Foodstuffs, water supply, medicines, hotel accommodation, restaurant services | |
| 194 | | Reduced 2 | 5% | Social housing (under thresholds), cultural events, certain children's products | |
| 195 | | Exempt with credit | 0% | Intra-community supplies, exports | |
| 196 | | Exempt without credit | 0% | Financial services, insurance, education, healthcare | |
| 197 | |
| 198 | ### Rounding Rules |
| 199 | |
| 200 | - VAT amounts calculated per line, rounded to 2 decimal places (RON bani or EUR cents). |
| 201 | - Line totals summed; total VAT is the sum of rounded line-level VAT amounts. |
| 202 | - For multi-currency invoices: amounts must appear in the document currency; if not RON, the BNR (National Bank of Romania) exchange rate on the tax point date applies. |
| 203 | |
| 204 | ### Multi-Rate Invoice Handling |
| 205 | |
| 206 | Each VAT rate requires a separate `cac:TaxSubtotal` element within `cac:TaxTotal`. Tax base and tax amount must be stated per rate category. |
| 207 | |
| 208 | ### Credit Notes |
| 209 | |
| 210 | Credit notes must reference the original invoice number in `cac:BillingReference/cac:InvoiceDocumentReference/cbc:ID`. The invoice type code is 381. Negative amounts are expressed as positive values on the credit note (the document type signals the reversal). |
| 211 | |
| 212 | --- |
| 213 | |
| 214 | ## Section 8 -- Archiving Requirements |
| 215 | |
| 216 | | Requirement | Detail | |
| 217 | |---|---| |
| 218 | | Retention period | 10 years from the end of the fiscal year in which the invoice was issued | |
| 219 | | Format | Original XML as validated by ANAF (the validated XML is the legally binding document for B2B clearance) | |
| 220 | | Accessibility | Must be available for tax inspection on demand throughout retention period | |
| 221 | | ANAF download window | Validated invoices available on RO e-Factura for 60 days; after expiry, must be retrieved via archive request | |
| 222 | | Buyer obligation | Buyer must download and archive the validated XML within 60 days | |
| 223 | | Integrity | Digital certificate chain must remain verifiable; no modifications to the validated XML | |
| 224 | | Location | May be stored within the EU; storage outside Romania requires notification to ANAF | |
| 225 | | Conversion to PDF | ANAF provides XML-to-PDF conversion tools; the PDF is for human readability only and is not the legal document | |
| 226 | |
| 227 | --- |
| 228 | |
| 229 | ## Section 9 -- Penalties for Non-Compliance |
| 230 | |
| 231 | ### Late or Missing Submission Penalties |
| 232 | |
| 233 | | Taxpayer Category | Fine per Incident (RON) | |
| 234 | |---|---| |
| 235 | | Large taxpayers (contribuabili mari) | 5,000 -- 10,000 | |
| 236 | | Medium taxpayers (contribuabili mijlocii) | 2,500 -- 5,000 | |
| 237 | | Small taxpayers and individuals | 1,000 -- 2,500 | |
| 238 | |
| 239 | Fines apply per month in which one or more invoices miss the submission deadline. Multiple invoices in the same month = one fine. |
| 240 | |
| 241 | ### Additional Penalties |
| 242 | |
| 243 | | Violation | Penalty | |
| 244 | |---|---| |
| 245 | | Receiving/registering a B2B invoice not transmitted via RO e-Factura (buyer penalty) | 15% of the total invoice value | |
| 246 | | Failure to issue invoice via RO e-Factura for in-scope B2B transactions | Fine equal to the VAT amount on the invoice | |
| 247 | | B2C non-compliance (post-grace period) | Same graduated fines as above by taxpayer category | |
| 248 | |
| 249 | ### Consequences Beyond Fines |
| 250 | |
| 251 | - Loss of VAT deduction rights for invoices not properly issued/received through RO e-Factura |
| 252 | - Increased audit risk from ANAF's risk-analysis system |
| 253 | - Buyer notification right: if a buyer does not receive the invoice via RO e-Factura within the legal deadline, they can notify ANAF, triggering enforcement action against the supplier |
| 254 | |
| 255 | --- |
| 256 | |
| 257 | ## Section 10 -- Interaction with Tax Skills |
| 258 | |
| 259 | ### RO e-Factura → VAT Return (Declarația 300) |
| 260 | |
| 261 | ANAF uses RO e-Factura data to pre-populate the draft VAT return (RO e-TVA initiative). From 2024, ANAF cross-references e-Factura submissions against VAT declarations. Discrepancies trigger automated notifications and potential audits. |
| 262 | |
| 263 | ### RO e-Factura → RO e-TVA |
| 264 | |
| 265 | The RO e-TVA system provides taxpayers with a pre-filled VAT return based on RO e-Factura data, RO e-Transport data, and customs declarations. Taxpayers must review and adjust before submission. |
| 266 | |
| 267 | ### RO e-Factura → SAF-T (D406) |
| 268 | |
| 269 | Romania also requires SAF-T reporting (Declarația 406) for large and medium taxpayers. Invoice data from RO e-Factura should be consistent with SAF-T submissions. ANAF cross-checks between the two systems. |
| 270 | |
| 271 | ### RO e-Transport Integration |
| 272 | |
| 273 | For goods movements, RO e-Transport operates alongside RO e-Factura. Transport documents and invoices must carry consistent references. Goods in transit without matching e-Transport declarations face confiscation risk. |
| 274 | |
| 275 | ### Corporate Tax (Impozit pe profit) |
| 276 | |
| 277 | Invoice data feeds into corporate tax assessments. ANAF uses e-Factura data to verify revenue declarations and deduction claims. |
| 278 | |
| 279 | --- |
| 280 | |
| 281 | ## Disclaimer |
| 282 | |
| 283 | This skill and its outputs are provided for informational and computational purposes only and do not constitute tax, legal, or financial advice. Open Accountants and its contributors accept no liability for any errors, omissions, or outcomes arising from the use of this skill. All outputs must be reviewed and signed off by a qualified professional (such as a CPA, tax attorney, or equivalent licensed practitioner in your jurisdiction) before filing or acting upon. |
| 284 | |
| 285 | The most up-to-date, verified version of this skill is maintained at [openaccountants.com](https://openaccountants.com). |
| 286 |
Run this skill, then get an accountant to check it
After running the full skill pack in your AI agent, sign up and upload your worksheet. We'll connect you with a trusted accountant in our network who can review your numbers before you file.
Verification status
Research-verified
Drafted from authoritative sources (tax authority sites, Big-4 summaries). Awaiting credentialed sign-off.
Needs section-by-section practitioner review to reach accountant-verified.
Section review progress
About
Use this skill whenever asked about e-invoicing in Romania, RO e-Factura, ANAF electronic invoice system, SPV (Spațiul Privat Virtual), B2B e-invoice clearance model, UBL 2.1 Romania, CIUS-RO, XML invoice validation, or any question about issuing, transmitting, validating, or archiving electronic invoices under Romanian law. Trigger on phrases like "e-Factura", "RO e-Factura", "ANAF invoice", "SPV portal", "CIUS-RO", "B2B clearance Romania", "B2C e-invoice Romania", "OUG 115/2023", "EN 16931 Romania", or "invoice validation ANAF". ALWAYS read this skill before touching any Romania invoicing compliance work.
Use this skill
This skill is open source and free to use in any AI agent. Copy it, download it, or clone the repo. If you find an error, report an issue — a licensed accountant will review.