UAE Corporate Tax Compliance
The ECOSIRE UAE Corporate Tax Compliance module is a computation and return-preparation tool for companies subject to UAE Corporate Tax under Federal Decree-Law No. 47 of 2022, effective for financial years starting on or after 1 June 2023. It derives Taxable Income from your Odoo accounting profit through a structured adjustment waterfall, applies Small Business Relief and Free Zone (QFZP) elections, and produces a printable audit-ready working paper that you enter into the FTA EmaraTax portal.
Important: There is no public machine-to-machine API for UAE CT return submission. EmaraTax (https://emsrvs.tax.gov.ae) is a portal-only channel requiring a UAE Pass or FTA account login. This module prepares the numbers and workpaper; the taxpayer or tax agent files manually in EmaraTax.
Compatibility: Odoo 17 / 18 / 19 Price: $299 (one-time) License: LGPL-3
Explore the module on the ECOSIRE demo server before purchasing. Contact [email protected] for demo access.
Key Features
- Structured taxable-income waterfall: accounting profit, additions, deductions, and prior-year tax loss application
- AED 375,000 zero-rate band and 9% standard rate computation (FDL 47/2022)
- Small Business Relief (SBR) election with eligibility validation against revenue threshold (AED 3,000,000) and period-expiry guard (reported: available through FY ending 31 Dec 2026)
- Qualifying Free Zone Person (QFZP) regime: separate Qualifying Income (0%) from Non-Qualifying Income (9% above threshold)
- Pull-from-ledger helper: automatically derives accounting profit and gross revenue from posted Odoo journal entries for the selected period
- Printable QWeb working paper (PDF) with all waterfall steps and FDL article references
- EmaraTax field-map export: structured data output keyed to EmaraTax CT return fields for copy-paste filing
- Configurable rate parameters: all legislative thresholds (9% rate, AED 375,000 band, AED 3M SBR ceiling, SBR expiry date, 30% EBITDA interest cap, AED 12M floor) are stored per-company and can be updated without code changes when primary Ministerial Decisions are verified
- Multi-company support: each company maintains its own CT configuration and period records
- Chatter and tracking on all CT periods for audit trail
- License-gated actions via
ecosire_license_client
Overview of Supported Standards
| Standard | Detail | Confirmation status |
|---|---|---|
| Federal Decree-Law No. 47 of 2022 | Primary UAE CT legislation | Confirmed (mof.gov.ae) |
| Effective date | FY starting on or after 1 June 2023 | Confirmed (mof.gov.ae) |
| 9% rate / AED 375,000 zero band | Art. 3 FDL 47/2022 | Widely reported; verify from FDL text |
| 9-month filing and payment deadline | After end of tax period | Confirmed (mof.gov.ae) |
| Small Business Relief | MD 73/2023 | Reported; full text not yet retrieved |
| QFZP 0% on Qualifying Income | MD 139/2023 | Confirmed (mof.gov.ae) |
| EmaraTax as sole filing channel | No API | Confirmed (negative — no API found) |
Prerequisites
- Odoo 17, 18, or 19 (Community or Enterprise edition)
- An active ECOSIRE license for
ecosire_uae_corporate_tax ecosire_license_client(installed automatically as a dependency)- The Odoo
accountmodule (standard Odoo Accounting) - A company with AED as its primary currency for correct threshold comparisons
- Your FTA Tax Registration Number (TRN) — 15-digit number from your EmaraTax profile
- No third-party API credentials are required (there is no CT filing API)
Installation
- Download the module ZIP from your ECOSIRE Dashboard
- Extract the archive to your Odoo addons directory:
unzip ecosire-uae-corporate-tax-*.zip -d /opt/odoo/addons/ - Restart the Odoo service:
sudo systemctl restart odoo - Navigate to Apps, click Update Apps List
- Search for "ECOSIRE UAE Corporate Tax Compliance" and click Install
- Activate your ECOSIRE license when prompted (see Configuration below)
Configuration
Step 1: Activate the ECOSIRE License
- Navigate to Settings > ECOSIRE License (or the license activation screen shown after install)
- Enter the license key from your ECOSIRE purchase confirmation
- Click Activate — the module features become available once the license is confirmed as active
- The license is tied to your database domain; use Move License to This Database if you need to transfer it from a staging instance
Step 2: Enter Your UAE CT Company Settings
- Navigate to Settings > General Settings > UAE Corporate Tax section
- Fill in the following fields:
| Field | Description | Default |
|---|---|---|
uae_ct_trn | UAE Tax Registration Number (TRN) — 15 digits from EmaraTax | (blank) |
uae_ct_standard_rate | CT standard rate (%) | 9.0 |
uae_ct_zero_rate_threshold | Zero-rate band ceiling (AED) | 375,000 |
uae_ct_sbr_revenue_threshold | Small Business Relief gross revenue ceiling (AED) | 3,000,000 |
uae_ct_sbr_available_until | Last eligible FY end date for SBR election | 2026-12-31 |
uae_ct_interest_cap_ebitda_pct | Interest Deduction Limitation: EBITDA % cap | 30.0 |
uae_ct_interest_cap_floor | Interest Deduction Limitation: floor amount (AED) | 12,000,000 |
- Click Save
Note on legislative parameters: The seeded defaults reflect publicly reported values. Because several Ministerial Decisions (MD 73/2023 for SBR, MD 139/2023 for QFZP) have not been fully retrieved from primary sources at the time of this writing, you should verify each threshold against the FTA's legislation page (https://tax.gov.ae/en/Legislation.aspx) and update the settings fields accordingly before filing. No code change is needed.
Step 3: Identify QFZP Companies (if applicable)
If your company is a Qualifying Free Zone Person:
- On the CT Period working paper (see Usage), enable the Qualifying Free Zone Person toggle
- Enter the Free Zone name
- Enter the period's Qualifying Income (0%) and Non-Qualifying Income (9%) amounts
The module will apply 0% to Qualifying Income and compute 9% (above the AED 375,000 threshold) on Non-Qualifying Income only. QFZP companies are automatically ineligible for Small Business Relief.
Usage
Core Workflow
-
Create a CT Period working paper
- Navigate to UAE Corporate Tax > CT Periods > New
- Set the Tax Period Start and Tax Period End dates to match your company's financial year
- The Filing & Payment Due date is computed automatically (9 months after period end)
- Select the Entity Type (Resident juridical person / Non-resident with UAE PE / Natural person with business activity)
- The Tax Registration Number defaults from your company settings; override it here if needed
-
Enter or pull accounting profit
- Click Pull Accounting Profit to have the module derive accounting profit and gross revenue from posted journal entries (income accounts minus expense accounts) for the period
- Alternatively, enter the Accounting Profit from your audited financial statements directly
- Enter Gross Revenue (required for SBR eligibility checking)
-
Add income adjustments
- In the Income Adjustments tab, add adjustment lines:
- Addition lines increase taxable income (non-deductible expenses such as fines, penalties, disallowed entertainment, interest disallowance)
- Deduction lines reduce taxable income (exempt income such as qualifying dividends or capital gains)
- Each adjustment line references an Adjustment Type with a legal reference (FDL article)
- Always enter amounts as positive figures; the Kind (addition/deduction) sets the direction
- In the Income Adjustments tab, add adjustment lines:
-
Apply tax losses
- Enter Tax Losses Brought Forward from prior periods
- Enter Tax Losses Applied to offset against this period's adjusted income (capped at brought-forward balance)
- The Losses Carried Forward figure is computed automatically
-
Configure relief elections
- To elect Small Business Relief: enable the Elect Small Business Relief checkbox. The module validates eligibility (revenue threshold, entity type, QFZP exclusion, period expiry) and displays an SBR Notice if the election is invalid
- For QFZP treatment: enable Qualifying Free Zone Person and enter qualifying/non-qualifying income split
-
Compute the working paper
- Click Compute Corporate Tax. The waterfall runs:
Accounting Profit
+ Total Additions
- Total Deductions
- Tax Losses Applied
= Adjusted Income
→ Relief elections (SBR → taxable income = 0; QFZP → split income)
→ Zero-rate band (AED 375,000 at 0%)
→ Standard rate (9% on excess)
= CT Payable - The period moves to Computed status and a chatter entry records the taxable income and CT payable
- Click Compute Corporate Tax. The waterfall runs:
-
Print the working paper
- Click Print Working Paper to generate a PDF audit document showing every waterfall step with legal references
- Use the EmaraTax Field Map action (available in Computed status) to export a structured field list matching EmaraTax CT return sections: identification, revenue, SBR, free zone, and tax payable
-
File in EmaraTax
- Log in to https://emsrvs.tax.gov.ae using your UAE Pass or FTA account
- Navigate to Corporate Tax > File Return, select your tax period
- Copy each value from the working paper into the EmaraTax CT return screens
- Submit and retain the EmaraTax confirmation reference number
- Return to Odoo and click Mark as Filed (in EmaraTax) to close the period
Tax Group (Consolidated Return)
Tax Group consolidated returns are not yet supported. The UAE CT consolidation mechanics (single group return vs. member offset) are not publicly confirmed from the primary source (FDL Part 7). Each group member must file an individual CT period until the rules are wired. If you attempt to use the Tax Group return action, the module raises a clear error rather than producing an incorrect computation.
Troubleshooting / FAQ
| Issue | Cause | Fix |
|---|---|---|
| "License not active" error when creating a CT period | ECOSIRE license is not activated or has expired | Go to Settings > ECOSIRE License; enter or renew your license key |
| Pull Accounting Profit returns zero | No posted journal entries exist for the selected period dates | Ensure the period dates match your posted accounting data; check that entries are confirmed (posted), not draft |
| SBR notice appears even though you elected SBR | The election fails an eligibility check | Read the SBR Notice text — it states the exact reason (revenue above AED 3M, QFZP company, non-resident entity, or period end after the SBR expiry date) |
| QFZP toggle removes SBR option | Expected behaviour | QFZPs are ineligible for Small Business Relief per the reported MD 73/2023 rules |
| Adjustments with negative amounts are rejected | Validation error | Always enter adjustment amounts as positive figures; use the Kind field (addition/deduction) to control direction |
| CT Payable seems too high for a QFZP | Qualifying and Non-Qualifying income not split correctly | For QFZPs, the 0% rate applies to all Qualifying Income (no AED 375,000 band deducted from it); enter only Non-Qualifying Income in the Non-Qualifying field |
| Filing due date looks wrong | Company financial year not set correctly | The filing due date is computed as 9 months after Tax Period End — verify the period end date matches your FY end |
| "Tax Group consolidated returns are not yet supported" error | Group return attempted | File individual CT periods for each group member; group consolidation is blocked pending confirmed rules |
| Settings fields not visible | User does not have CT Manager or CT User group | Ask your Odoo administrator to assign you to the UAE CT security group under Settings > Users |
| Legislative thresholds appear incorrect | Default seeded values not yet verified against primary legislation | Update the thresholds in Settings > General Settings > UAE Corporate Tax once you have verified them from the FTA legislation page |
Important Regulatory Notes
- SBR time limit (reported): Small Business Relief is reported to be available for tax periods ending on or before 31 December 2026 (MD 73/2023). The module warns you if you elect SBR for a period ending after the configured expiry date. Verify this boundary from the primary Ministerial Decision before relying on it.
- QFZP conditions (reported): Qualifying Free Zone Person status requires the company to be registered in a UAE free zone, maintain adequate substance, derive only qualifying income (or de-minimis non-qualifying income), and prepare audited financial statements. The module accepts the QFZP flag as a manual input; confirming the company's QFZP status is the taxpayer's responsibility.
- No API transmission: UAE CT returns have no taxpayer-facing machine-to-machine filing API. This module will never transmit data to the FTA. It produces a workpaper for manual portal entry.