- Home
- Apps
- SaaS Tools
- UAE Corporate Tax Computation & Filing
Illustrative previewCustom Odoo module to compute UAE 9% corporate tax with income adjustments,
small-business relief and FTA-ready reports. Built by ECOSIRE.
What is UAE Corporate Tax Computation & Filing?
Custom Odoo module to compute UAE 9% corporate tax with income adjustments, small-business relief and FTA-ready reports. Built by ECOSIRE. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Odoo.
- 3
Go live + support
You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
Since UAE Corporate Tax took effect for financial years starting on or after 1 June 2023, finance teams have been forcing a 9% federal tax regime into spreadsheets that never reconcile back to the general ledger. This is a build-to-order Odoo module that ECOSIRE designs, develops, installs and supports for your specific chart of accounts and legal structure — it is not an instant download from apps.odoo.com and it is not a generic template.
We build a dedicated Corporate Tax computation engine directly on top of your Odoo Accounting data. New models (models.Model) sit alongside account.move and account.account so the taxable-income computation starts from your actual accounting profit, then applies the statutory add-backs, deductions and exemptions the FTA requires. Computed fields use @api.depends so every figure — accounting profit, total adjustments, taxable income, tax due at 9% above the AED 375,000 threshold — recalculates automatically when the underlying entries change, with a full audit trail from the headline number down to each contributing journal item.
The module implements the 0% band on the first AED 375,000 of taxable income and 9% above it, optional Small Business Relief (elective 0% treatment where revenue stays under the FTA threshold), configurable add-back rules for non-deductible expenses (fines, certain entertainment, non-arm's-length interest), and Free Zone qualifying-income logic that separates qualifying from non-qualifying income for Qualifying Free Zone Person assessment. Every rule is data-driven and stored as configurable records — not hardcoded — so your finance team can adjust thresholds and adjustment categories as FTA guidance evolves, without a redeploy.
Access is locked down with ir.model.access.csv and record rules so only your tax preparers and reviewers touch the computation, and multi-company record rules keep each entity's return isolated. A branded QWeb PDF report produces an FTA-ready corporate tax computation schedule and supporting workings you can attach to your EmaraTax filing. Where you want to push figures into another system, the computation is exposed over Odoo's XML-RPC/JSON-RPC API. We deliver on Odoo 17, 18 or 19, Community or Enterprise, and hand over clean, documented code your team fully owns.
ECOSIRE handles requirements, the build, installation on your server or Odoo.sh, UAT against your prior-year numbers, and a support window after go-live. Typical delivery is one working week depending on the number of adjustment rules and legal entities.
What you get
- Complete custom Odoo module (source code with __manifest__.py, models, views, security and reports) that your company fully owns
- Configured corporate-tax rate bands, thresholds and adjustment rule set mapped to your actual chart of accounts
- ir.model.access.csv + record rules defining Tax Preparer / Tax Reviewer roles and multi-company isolation
- Branded QWeb PDF computation schedule template ready to attach to an EmaraTax filing
- Installation and deployment on your Odoo 17/18/19 server or Odoo.sh, including migration/upgrade of the module
- UAT sign-off: your computation reconciled against a prior period or a worked example you provide
- Admin + preparer documentation and a recorded/live training session for your finance team
- Post-go-live support window (bug fixes and configuration questions) per the agreed SOW
Who this is for
Finance Manager / Controller at a UAE mainland company
Owns the first corporate-tax return post-2023 introduction and needs taxable income computed straight from the Odoo GL with a defensible, auditable trail from accounting profit to the 9% figure — not a fragile spreadsheet.
Tax preparer at an accounting firm serving multiple UAE clients
Runs corporate-tax computations for several entities and wants a repeatable Odoo workflow with configurable add-backs, reviewer sign-off and multi-company record rules so each client's return stays isolated and consistent.
Free Zone company CFO assessing Qualifying Free Zone Person status
Needs to split qualifying vs non-qualifying income cleanly to justify 0% treatment on qualifying income while applying 9% correctly to the rest, with reporting that stands up to FTA scrutiny.
Group finance lead of a multi-entity UAE structure
Consolidates several legal entities in one Odoo database and needs each entity to compute and file its own corporate-tax return under strict record-rule isolation, with elective Small Business Relief applied per entity where eligible.
How UAE Corporate Tax Computation & Filing Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| UAE-specific 9% / AED 375,000 band + Small Business Relief logic | Built in and configurable to your entities | Possible but you build every rule from scratch | Rarely UAE-specific; often generic tax add-ons | Not included |
| Taxable income derived from your actual GL (account.move.line) | Yes, mapped to your chart of accounts | Yes, if you design the model correctly | Partial — assumptions about your accounts | Not included |
| Configurable add-backs & Free Zone qualifying-income split | Data-driven rules, editable without redeploy | Whatever you code; maintenance is on you | Fixed feature set; limited flexibility | Not included |
| FTA-ready QWeb computation schedule for EmaraTax | Branded, tailored report delivered | Build the QWeb template yourself | Generic report if any | Not included |
| Fits your exact Odoo version/edition (17/18/19, CE/EE) | Targeted to your environment | You own compatibility across upgrades | Depends on vendor's supported versions | Partial support |
| Access control (ir.model.access.csv + record rules) & multi-company isolation | Role-based, per-entity isolation configured | You implement and test the security model | Varies; often coarse | Partial support |
| Delivery, installation, UAT reconciliation & training | Full build-to-order engagement, one working week | Your team's time and risk | Self-install; support varies | Not included |
| Ownership of source code + post-go-live support window | You own the code; support window included | You own it; support is internal | Licensed; support per vendor plan | Partial support |
Frequently Asked Questions about UAE Corporate Tax Computation & Filing
How long does it take to deliver, and is this an instant download?
This is a build-to-order module — not an instant apps.odoo.com download. After we confirm scope (your legal entities, chart of accounts and adjustment rules), typical delivery is one working week: requirements, development, installation on your server or Odoo.sh, and UAT against a prior period or worked example before go-live. More entities or more complex Free Zone and adjustment logic push toward the longer end.
What support and updates do I get after go-live?
Every engagement includes a post-go-live support window (defined in the SOW) covering bug fixes and configuration questions. Because the add-back rules, thresholds and rate bands are data-driven configuration records rather than hardcoded, your team can adjust most parameters as FTA guidance evolves without a redeploy. If a future FTA change needs new logic (e.g. a new relief), we scope that as a follow-on update, and you own the code either way.
Does it work with Odoo Community or only Enterprise, and which versions?
We build and test on Odoo 17, 18 and 19, and the module runs on both Community and Enterprise editions — it depends on the standard Accounting models. During scoping we confirm your exact version and edition and target that build so it installs cleanly on your environment or Odoo.sh.
How does it handle the AED 375,000 threshold, Small Business Relief and Free Zone income?
The engine applies 0% on the first AED 375,000 of taxable income and 9% above it via configurable rate-band records. Small Business Relief is an elective per-period flag with eligibility checks for the revenue threshold. Free Zone qualifying-income logic tags revenue as qualifying vs non-qualifying so you can assess and evidence Qualifying Free Zone Person 0% treatment on qualifying income while taxing the rest.
Where do the numbers come from and can I trust the computation?
The taxable-income base is derived directly from your Odoo accounting data (account.move / account.move.line), so it starts from real accounting profit rather than re-keyed figures. Computed fields use @api.depends to recalculate automatically, and every adjustment drills down to the exact journal items feeding it, giving a full audit trail. During UAT we reconcile the output against a prior period or worked example you supply before you rely on it.
Is this tax filing software that submits to the FTA for me?
The module computes your corporate tax and produces a QWeb PDF computation schedule and supporting workings formatted for attachment to your EmaraTax filing. It prepares defensible figures inside Odoo; the actual submission is made by your team (or your tax advisor) through the FTA's EmaraTax portal. We can also expose the figures over XML-RPC/JSON-RPC if you want to feed them into another system.
Can it isolate multiple legal entities in one database?
Yes. The module uses multi-company record rules so each UAE legal entity computes, reviews and files its own corporate-tax return in isolation, with per-entity Small Business Relief elections and adjustment sets. Access is further restricted by ir.model.access.csv to Tax Preparer and Tax Reviewer roles.
Related Modules

Turkey Payroll (SGK)
Build-to-order Odoo Turkey payroll: SGK premiums, cumulative income tax, stamp duty, severance & TRY salary structures.

Türkiye e-Arşiv & e-Fatura for Odoo
Issue GİB-compliant e-Fatura and e-Arşiv documents straight from Odoo, with automatic scenario routing for registered and non-registered buyers, correction workflows, and a durable audit archive. Built to order by ECOSIRE for your Odoo 17.0, 18.0 or 19.0 database.

UAE FTA POS Tax Invoice & QR
FTA-compliant UAE tax invoices and bilingual Arabic/English VAT receipts straight from Odoo POS, with TRN, 5% VAT breakdown and a verification QR.

UAE Localization Pack for Odoo
An FTA-aligned UAE VAT layer for Odoo 17/18/19 covering tax configuration, bilingual Arabic/English tax invoices, VAT return preparation views, reverse charge and designated zone handling, and audit file export. Built to your chart of accounts and delivered by ECOSIRE.
UAE Corporate Tax Computation & Filing
Custom Odoo module to compute UAE 9% corporate tax with income adjustments, small-business relief and FTA-ready reports. Built by ECOSIRE.
- Corporate-tax taxable-income computation derived directly from your Odoo accounting profit (account.move / account.move.line), not re-keyed spreadsheets
- 9% standard rate applied above the AED 375,000 threshold with a 0% band on the first AED 375,000, implemented as configurable rate records
- Elective Small Business Relief handling — flag a period for 0% treatment where revenue stays under the FTA threshold, with eligibility checks
- Data-driven add-back rules for non-deductible expenses (fines and penalties, non-qualifying entertainment, non-arm's-length interest, donations to non-approved bodies)