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: ro-income-tax |
| 3 | description: > |
| 4 | Use this skill whenever asked about Romanian income tax for self-employed individuals (PFA). Trigger on phrases like "how much tax do I pay", "Declarația Unică", "PFA tax", "norma de venit", "impozit pe venit", "CAS", "CASS", "self-employed tax Romania", or any question about filing or computing income tax for a self-employed or freelance client in Romania. ALWAYS read this skill before touching any Romanian income tax work. |
| 5 | version: 2.0 |
| 6 | jurisdiction: RO |
| 7 | tax_year: 2025 |
| 8 | category: international |
| 9 | depends_on: |
| 10 | - income-tax-workflow-base |
| 11 | --- |
| 12 | |
| 13 | # Romania Income Tax (Declarația Unică) -- Self-Employed Skill v2.0 |
| 14 | |
| 15 | ## Section 1 -- Quick reference |
| 16 | |
| 17 | **Read this whole section before classifying anything.** |
| 18 | |
| 19 | | Field | Value | |
| 20 | |---|---| |
| 21 | | Country | Romania (România) | |
| 22 | | Tax type | Impozit pe venit (income tax on independent activities) | |
| 23 | | Primary legislation | Codul Fiscal (Legea 227/2015), Titlul IV | |
| 24 | | Supporting legislation | Codul de Procedură Fiscală (Legea 207/2015); OUG 168/2022; Legea 239/2025 | |
| 25 | | Tax authority | ANAF (Agenția Națională de Administrare Fiscală) | |
| 26 | | Filing portal | SPV (Spațiul Privat Virtual) / declaratii.anaf.ro | |
| 27 | | Currency | RON only | |
| 28 | | Income tax rate | 10% flat on net income | |
| 29 | | CAS (pension) | 25% on threshold tiers (RON 48,600 / 97,200) | |
| 30 | | CASS (health) | 10% on threshold tiers (RON 24,300 / 48,600 / 97,200) | |
| 31 | | Filing deadline | 25 May of the following year | |
| 32 | | Minimum wage (2025) | RON 4,050/month | |
| 33 | | Contributor | Open Accountants Community | |
| 34 | | Validated by | Pending -- requires Romanian expert contabil or consultant fiscal sign-off | |
| 35 | | Validation date | Pending | |
| 36 | |
| 37 | **Income determination methods:** |
| 38 | |
| 39 | | Method | Tax base | Bookkeeping | |
| 40 | |---|---|---| |
| 41 | | Sistem real | Revenue - documented expenses | Full daňová evidence required | |
| 42 | | Norma de venit | Fixed deemed amount by CAEN/county | Revenue records only | |
| 43 | |
| 44 | **CAS/CASS threshold tiers (2025):** |
| 45 | |
| 46 | | Threshold | CAS (25%) | CASS (10%) | |
| 47 | |---|---|---| |
| 48 | | Below 6x min wage (RON 24,300) | Optional | Mandatory minimum RON 2,430 | |
| 49 | | 6x--12x (RON 24,300--48,600) | Optional | RON 2,430 | |
| 50 | | 12x--24x (RON 48,600--97,200) | RON 12,150 | RON 4,860 | |
| 51 | | Above 24x (RON 97,200+) | RON 24,300 | RON 9,720 | |
| 52 | |
| 53 | **Conservative defaults:** |
| 54 | |
| 55 | | Ambiguity | Default | |
| 56 | |---|---| |
| 57 | | Unknown entity type | STOP -- PFA vs SRL changes everything | |
| 58 | | Unknown income method | STOP -- sistem real vs norma | |
| 59 | | Unknown expense category | Not deductible | |
| 60 | | Unknown CAEN code for norma | STOP -- norma varies by code and county | |
| 61 | |
| 62 | --- |
| 63 | |
| 64 | ## Section 2 -- Required inputs and refusal catalogue |
| 65 | |
| 66 | ### Required inputs |
| 67 | |
| 68 | **Minimum viable** -- bank statement for the tax year. Acceptable from: BCR (Banca Comercială Română), BRD (Groupe Société Générale), Banca Transilvania, ING Romania, Raiffeisen Romania, CEC Bank, or fintech (Revolut, Wise). |
| 69 | |
| 70 | **Recommended** -- invoices, CAEN code, county (județ), chosen income method, prior year Declarația Unică. |
| 71 | |
| 72 | **Ideal** -- complete bookkeeping, norma de venit published amount, CAS/CASS payment statements. |
| 73 | |
| 74 | ### Refusal catalogue |
| 75 | |
| 76 | **R-RO-1 -- SRL.** *Trigger:* client is a limited company. *Message:* "This skill covers PFA/II/IF only. SRL files corporate income tax (impozit pe profit) or micro-enterprise tax. Please use a separate skill." |
| 77 | |
| 78 | **R-RO-2 -- International income.** *Trigger:* significant foreign income. *Message:* "International income is outside scope. Consult a consultant fiscal." |
| 79 | |
| 80 | **R-RO-3 -- Crypto.** *Trigger:* crypto trading income. *Message:* "Crypto taxation is outside scope." |
| 81 | |
| 82 | **R-RO-4 -- Income method unknown.** *Trigger:* not confirmed. *Message:* "I cannot compute without knowing: sistem real or norma de venit?" |
| 83 | |
| 84 | --- |
| 85 | |
| 86 | ## Section 3 -- Transaction pattern library (the lookup table) |
| 87 | |
| 88 | ### 3.1 Romanian banks (fees and interest) |
| 89 | |
| 90 | | Pattern | Treatment | Notes | |
| 91 | |---|---|---| |
| 92 | | BCR, BANCA COMERCIALĂ ROMÂNĂ | Bank charges: deductible (sistem real) | Monthly fees | |
| 93 | | BRD, GROUPE SOCIÉTÉ GÉNÉRALE | Bank charges: deductible | Same | |
| 94 | | BANCA TRANSILVANIA, BT | Bank charges: deductible | Same | |
| 95 | | ING BANK ROMANIA | Bank charges: deductible | Same | |
| 96 | | RAIFFEISEN BANK ROMANIA | Bank charges: deductible | Same | |
| 97 | | CEC BANK | Bank charges: deductible | Same | |
| 98 | | REVOLUT, WISE (fees) | Deductible | Fintech fees | |
| 99 | | DOBÂNDĂ (interest credit) | EXCLUDE from independent activity income | Capital income | |
| 100 | | DOBÂNDĂ (interest debit) | Deductible if business loan | Personal: EXCLUDE | |
| 101 | | CREDIT, ÎMPRUMUT (principal) | EXCLUDE | Loan principal | |
| 102 | |
| 103 | ### 3.2 Romanian government and statutory bodies |
| 104 | |
| 105 | | Pattern | Treatment | Notes | |
| 106 | |---|---|---| |
| 107 | | ANAF | EXCLUDE | Tax payment | |
| 108 | | IMPOZIT PE VENIT | EXCLUDE | Income tax payment | |
| 109 | | CAS, CASA NAȚIONALĂ DE PENSII | Deductible from gross income (sistem real) | Pension contribution | |
| 110 | | CASS, CASA NAȚIONALĂ DE SĂNĂTATE | Deductible from gross income (sistem real) | Health contribution | |
| 111 | | REGISTRUL COMERȚULUI, ONRC | Deductible | Registration fees | |
| 112 | |
| 113 | ### 3.3 Romanian utilities and telecoms |
| 114 | |
| 115 | | Pattern | Treatment | Notes | |
| 116 | |---|---|---| |
| 117 | | ENEL, E-DISTRIBUȚIE, ELECTRICA | Deductible if business premises | Electricity; apportion if home | |
| 118 | | ENGIE, E.ON ENERGIE | Deductible if business premises | Gas | |
| 119 | | ORANGE RO, VODAFONE RO, DIGI, RCS & RDS | Deductible: business phone/internet | Mixed: apportion | |
| 120 | | TELEKOM ROMANIA | Deductible: business phone/internet | Mixed: apportion | |
| 121 | |
| 122 | ### 3.4 Insurance |
| 123 | |
| 124 | | Pattern | Treatment | Notes | |
| 125 | |---|---|---| |
| 126 | | ALLIANZ-ȚIRIAC, EUROINS, GROUPAMA, OMNIASIG | Deductible if business insurance | Personal: NOT deductible | |
| 127 | | ASIGURARE AUTO (RCA/CASCO) | Deductible: business vehicle portion | Personal vehicle: NOT deductible | |
| 128 | |
| 129 | ### 3.5 SaaS and software -- international |
| 130 | |
| 131 | | Pattern | Treatment | Notes | |
| 132 | |---|---|---| |
| 133 | | GOOGLE, MICROSOFT, ADOBE, META | Deductible expense | EU reverse charge TVA | |
| 134 | | GITHUB, OPENAI, ANTHROPIC | Deductible expense | Non-EU | |
| 135 | | SLACK, ZOOM, ATLASSIAN | Deductible expense | Check entity | |
| 136 | |
| 137 | ### 3.6 Professional services (Romania) |
| 138 | |
| 139 | | Pattern | Treatment | Notes | |
| 140 | |---|---|---| |
| 141 | | CONTABIL, CONTABILITATE, EXPERT CONTABIL | Deductible | Accounting fees | |
| 142 | | AVOCAT, CABINET AVOCAT | Deductible if business | Legal fees | |
| 143 | | NOTAR, BIROU NOTARIAL | Deductible if business | Notary fees | |
| 144 | | CONSULTANT FISCAL | Deductible | Tax advisory | |
| 145 | |
| 146 | ### 3.7 Transport and travel |
| 147 | |
| 148 | | Pattern | Treatment | Notes | |
| 149 | |---|---|---| |
| 150 | | CFR CĂLĂTORI | Deductible if business | Train | |
| 151 | | TAROM, WIZZAIR, RYANAIR | Deductible if business travel | Flights | |
| 152 | | UBER, BOLT | Deductible if business | Ride services | |
| 153 | | PETROM, OMV, MOL, ROMPETROL, LUKOIL | Deductible: business vehicle portion | Fuel | |
| 154 | |
| 155 | ### 3.8 Food and entertainment |
| 156 | |
| 157 | | Pattern | Treatment | Notes | |
| 158 | |---|---|---| |
| 159 | | KAUFLAND, LIDL, CARREFOUR, MEGA IMAGE, AUCHAN | Default: NOT deductible | Personal provisioning | |
| 160 | | RESTAURANT, PENSIUNE | Protocol expenses: limited to 2% of adjusted gross income | Must document business purpose | |
| 161 | |
| 162 | ### 3.9 Internal transfers and exclusions |
| 163 | |
| 164 | | Pattern | Treatment | Notes | |
| 165 | |---|---|---| |
| 166 | | TRANSFER PROPRIU, OWN TRANSFER | EXCLUDE | Internal | |
| 167 | | NUMERAR, ATM | EXCLUDE (default: drawings) | Ask client | |
| 168 | | DEPUNERE | EXCLUDE | Owner deposit | |
| 169 | |
| 170 | --- |
| 171 | |
| 172 | ## Section 4 -- Worked examples |
| 173 | |
| 174 | ### Example 1 -- PFA sistem real, mid-range |
| 175 | |
| 176 | **Input:** CAEN 6201, revenue RON 200,000, expenses RON 70,000 (including prior CAS/CASS). |
| 177 | **Computation:** Net income = RON 130,000. Tax = 10% x RON 130,000 = RON 13,000. CAS = 25% x RON 97,200 = RON 24,300 (above 24x). CASS = 10% x RON 48,600 = RON 4,860. Total = RON 42,160. |
| 178 | |
| 179 | ### Example 2 -- PFA norma de venit |
| 180 | |
| 181 | **Input:** Taxi driver, Bucharest, norma = RON 32,000. |
| 182 | **Computation:** Tax = RON 3,200. CAS optional (below RON 48,600). CASS = RON 2,430 (mandatory minimum). Total (no CAS) = RON 5,630. |
| 183 | |
| 184 | ### Example 3 -- Low-income mandatory CASS |
| 185 | |
| 186 | **Input:** Net income RON 18,000. |
| 187 | **Computation:** Tax = RON 1,800. CAS optional. CASS = RON 2,430 (mandatory minimum). Total = RON 4,230. |
| 188 | |
| 189 | ### Example 4 -- Part-year PFA |
| 190 | |
| 191 | **Input:** Registered July 2025 (6 months), net income RON 30,000. |
| 192 | **Computation:** Tax = RON 3,000. CAS prorated: 6/12 x RON 48,600 = RON 24,300 threshold. RON 30,000 > RON 24,300, so CAS = 25% x RON 24,300 = RON 6,075. CASS prorated similarly = RON 1,215. Total = RON 10,290. |
| 193 | |
| 194 | --- |
| 195 | |
| 196 | ## Section 5 -- Tier 1 rules (deterministic) |
| 197 | |
| 198 | ### 5.1 Income tax rate |
| 199 | Flat 10% on net income from independent activities. No progressive bands. **Legislation:** Codul Fiscal, Art. 68-69. |
| 200 | |
| 201 | ### 5.2 Sistem real |
| 202 | Net income = gross revenue - deductible expenses. CAS/CASS paid are deductible. Expenses must be documented and incurred for business purpose. Protocol/entertainment limited to 2% of adjusted gross income. **Legislation:** Art. 68. |
| 203 | |
| 204 | ### 5.3 Norma de venit |
| 205 | Fixed deemed income by CAEN code and county. Published by ANAF by 15 February. Tax = 10% x norma. Actual revenue/expenses irrelevant. Available only for specific CAEN codes. **Legislation:** Art. 69. |
| 206 | |
| 207 | ### 5.4 CAS thresholds |
| 208 | Fixed amounts based on tier brackets, NOT percentage of actual income. Below RON 48,600: optional. RON 48,600--97,200: RON 12,150. Above RON 97,200: RON 24,300. **Legislation:** Art. 148-154. |
| 209 | |
| 210 | ### 5.5 CASS thresholds |
| 211 | Mandatory even if income is zero. Minimum RON 2,430. Tiers at RON 24,300/48,600/97,200. **Legislation:** Art. 170-174. |
| 212 | |
| 213 | ### 5.6 Part-year proration |
| 214 | CAS/CASS thresholds prorated by months of registration. **Legislation:** Codul Fiscal. |
| 215 | |
| 216 | ### 5.7 Record keeping |
| 217 | Sistem real: full accounting records. Norma: revenue records only. Retention: 5 years. **Legislation:** Codul de Procedură Fiscală. |
| 218 | |
| 219 | --- |
| 220 | |
| 221 | ## Section 6 -- Tier 2 catalogue |
| 222 | |
| 223 | ### 6.1 Norma vs sistem real comparison |
| 224 | *Why:* Depends on actual profit vs deemed amount. *Default:* Present both. *Question:* "What is the published norma for your CAEN code and county?" |
| 225 | |
| 226 | ### 6.2 SRL micro vs PFA comparison |
| 227 | *Why:* Total cost differs significantly including dividend extraction tax. Threshold drops to EUR 100,000 in 2026. *Default:* Flag for reviewer. *Question:* "Are you considering SRL structure? Revenue level?" |
| 228 | |
| 229 | ### 6.3 Multiple CAEN codes |
| 230 | *Why:* Norma applies only to qualifying activities; others must use sistem real. *Default:* Flag for reviewer. *Question:* "Do you have multiple CAEN codes? Which have published norma?" |
| 231 | |
| 232 | ### 6.4 Minimum wage increase impact |
| 233 | *Why:* CAS/CASS thresholds tied to minimum wage. *Default:* Use RON 4,050 (2025). *Question:* "Confirm current minimum wage if mid-year change occurred." |
| 234 | |
| 235 | --- |
| 236 | |
| 237 | ## Section 7 -- Excel working paper template |
| 238 | |
| 239 | ### Sheet "Transactions" |
| 240 | Columns: Date, Counterparty, Description, Amount (RON), Category (Revenue/Expense/CAS/CASS/EXCLUDE), Deductible amount, Default?, Question, Notes. |
| 241 | |
| 242 | ### Sheet "Tax Computation" |
| 243 | Branches by method: sistem real or norma de venit. Includes CAS/CASS tier determination. |
| 244 | |
| 245 | --- |
| 246 | |
| 247 | ## Section 8 -- Bank statement reading guide |
| 248 | |
| 249 | **CSV formats.** BCR exports use semicolons with DD.MM.YYYY. BRD uses CSV with comma delimiters. Banca Transilvania offers various formats. Common columns: Data (Date), Beneficiar/Ordonator (Counterparty), Suma (Amount), Sold (Balance). |
| 250 | |
| 251 | **Romanian language variants.** Common: transfer (transfer), depunere (deposit), retragere (withdrawal), comision (commission), dobândă (interest), factură (invoice), plată (payment), chirie (rent). |
| 252 | |
| 253 | **CAS/CASS payments.** Payments to ANAF labelled "CAS" or "CASS". These are deductible from gross income under sistem real. |
| 254 | |
| 255 | **Tax payments.** Impozit pe venit payments to ANAF: EXCLUDE (not deductible). |
| 256 | |
| 257 | **Foreign currency.** Convert to RON at BNR (National Bank) rate on transaction date. |
| 258 | |
| 259 | --- |
| 260 | |
| 261 | ## Section 9 -- Onboarding fallback |
| 262 | |
| 263 | ### 9.1 Entity type |
| 264 | *Inference:* PFA from bank account name. *Fallback:* "Are you a PFA, II, IF, or SRL?" |
| 265 | |
| 266 | ### 9.2 Income method |
| 267 | *Inference:* Not inferable. Always ask. *Fallback:* "Sistem real or norma de venit?" |
| 268 | |
| 269 | ### 9.3 CAEN code |
| 270 | *Inference:* From counterparty mix. *Fallback:* "What is your CAEN activity code?" |
| 271 | |
| 272 | ### 9.4 County (județ) |
| 273 | *Inference:* From bank branch or address. *Fallback:* "Which county (județ) are you registered in? (Affects norma de venit.)" |
| 274 | |
| 275 | ### 9.5 VAT status |
| 276 | *Inference:* TVA payments in statement. *Fallback:* "Are you TVA registered?" |
| 277 | |
| 278 | ### 9.6 Other income |
| 279 | *Inference:* Salary credits. *Fallback:* "Do you have employment income? (Affects CAS/CASS.)" |
| 280 | |
| 281 | --- |
| 282 | |
| 283 | ## Section 10 -- Reference material |
| 284 | |
| 285 | ### Test suite |
| 286 | |
| 287 | **Test 1 -- Sistem real, mid-range.** Revenue RON 200,000, expenses RON 70,000. Tax RON 13,000 + CAS RON 24,300 + CASS RON 4,860 = RON 42,160. |
| 288 | **Test 2 -- Norma de venit taxi.** Norma RON 32,000. Tax RON 3,200 + CASS RON 2,430 = RON 5,630. |
| 289 | **Test 3 -- Low income, mandatory CASS.** RON 18,000 net. Tax RON 1,800 + CASS RON 2,430 = RON 4,230. |
| 290 | **Test 4 -- High income, all caps.** RON 500,000 net. Tax RON 50,000 + CAS RON 24,300 + CASS RON 9,720 = RON 84,020. |
| 291 | **Test 5 -- Part-year.** 6 months, RON 30,000. Tax RON 3,000 + prorated CAS/CASS. |
| 292 | |
| 293 | ### Edge case registry |
| 294 | |
| 295 | **EC1 -- CAS between thresholds.** Fixed at tier amount, not percentage of actual income. |
| 296 | **EC2 -- Low income, CASS still mandatory.** Minimum RON 2,430 even if income is zero. |
| 297 | **EC3 -- Norma vs sistem real.** Compare both. |
| 298 | **EC4 -- SRL micro vs PFA.** Include dividend extraction cost. |
| 299 | **EC5 -- Multiple CAEN codes.** Separate norma and sistem real activities. |
| 300 | **EC6 -- CAS/CASS deductibility timing.** Deductible in year paid. |
| 301 | **EC7 -- Micro threshold exceeded.** Exit to impozit pe profit. |
| 302 | **EC8 -- Part-year proration.** CAS/CASS thresholds prorated. |
| 303 | **EC9 -- PFA with employment.** Separate CAS/CASS calculations. |
| 304 | **EC10 -- Minimum wage change.** Verify threshold basis. |
| 305 | |
| 306 | ### Prohibitions |
| 307 | |
| 308 | - NEVER apply progressive rates -- Romania uses flat 10% |
| 309 | - NEVER ignore mandatory CASS minimum |
| 310 | - NEVER confuse CAS thresholds with percentage of actual income |
| 311 | - NEVER apply norma to CAEN codes without published norma |
| 312 | - NEVER use micro-enterprise rules for PFA |
| 313 | - NEVER forget to prorate for part-year |
| 314 | - NEVER advise on crypto, international income, or transfer pricing |
| 315 | - NEVER present calculations as definitive |
| 316 | - NEVER assume micro EUR 250,000 threshold is stable (drops to EUR 100,000 in 2026) |
| 317 | |
| 318 | ### Sources |
| 319 | |
| 320 | 1. Codul Fiscal (Legea 227/2015) |
| 321 | 2. Codul de Procedură Fiscală (Legea 207/2015) |
| 322 | 3. OUG 168/2022 |
| 323 | 4. Legea 239/2025 |
| 324 | 5. ANAF -- https://www.anaf.ro |
| 325 | |
| 326 | ### Disclaimer |
| 327 | |
| 328 | 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 an expert contabil or consultant fiscal in Romania) before filing or acting upon. |
| 329 | |
| 330 | The most up-to-date, verified version of this skill is maintained at [openaccountants.com](https://openaccountants.com). |
| 331 |
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.
Quality
Q3: AI-drafted
AI-generated with structure and citations. Not independently verified.
Needs deep research against tax authority websites to reach Q2.
Accountant Review
About
Use this skill whenever asked about Romanian income tax for self-employed individuals (PFA). Trigger on phrases like "how much tax do I pay", "Declarația Unică", "PFA tax", "norma de venit", "impozit pe venit", "CAS", "CASS", "self-employed tax Romania", or any question about filing or computing income tax for a self-employed or freelance client in Romania. ALWAYS read this skill before touching any Romanian income tax 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, flag it — a licensed accountant will review.