Book a strategy call for your next project. Tell us what you want built
Book a strategy call Tell us what you want built Book a Call
AE
  Construction ERP, UAE

Construction ERP Software in the UAE: Odoo for Contractors

See each project's margin while you can still act, bill progress claims and retention from one system, and keep subcontract spend inside budget.

On the call we cover
  • Your current system and what has to change
  • The deadlines and rules that apply to you
  • A step-by-step plan with timeline
  • A clear scope and cost range
Book a Call

A job looks profitable every month until the final account, when unpriced variations, forgotten retention and late subcontractor bills land together. Construction ERP software for a UAE contractor should show cost against budget per project every week, raise progress invoices from certified values and track retention until it is paid.

Devvista is a software development and growth agency and an official Odoo partner that sets up Odoo as a construction ERP for UAE contractors, fit-out companies and MEP subcontractors. Below: why margins vanish, five fix steps in Odoo, the e-invoicing angle, how to measure progress and where Odoo is the wrong choice.

Why contractor margins vanish between tender and final account

Margins leak in small amounts that nobody sees until the project closes, because the numbers sit in different places: the QS valuation in Excel, purchase orders in email, timesheets on paper and the ledger in an accounting package.

Find your own cause:

  • If project reports only show costs once bills are posted, you are missing committed cost.
  • If finance and the QS disagree on what was billed, claims are typed from a spreadsheet, not generated from the contract.
  • If retention is a column in someone's workbook, releases get missed at practical completion and again at the end of the defects period.
  • If labour and plant sit in overheads, every project looks better than it is, and the next tender is priced on wrong data.
  • If variations are agreed on site by phone, some are never invoiced.

What construction ERP software must do that accounting software cannot

Accounting packages such as Tally, QuickBooks or Zoho Books record what happened. A construction ERP links each cost and invoice to a contract, a cost code and a budget while the job is still running.

Need on a UAE projectTypical accounting packageOdoo set up as a construction ERP
Cost per project and cost headCost centres, added after postingAnalytic account per project, analytic plan for cost heads, defaulted on purchase lines
Committed costNot trackedBudget report adds confirmed, unbilled purchase orders to actual cost
Progress claimsManual invoice from the QS sheetMilestone invoicing by percentage against the contract value
Retention receivable and payableSpreadsheetConfigured retention lines and accounts, with a release report

Step 1: Give every project a cost structure the system can report on

  1. Create one analytic account per project (or per contract if a project has several), named with the project code your site teams already use.
  2. Add a second analytic plan for cost heads: materials, labour, subcontract, plant, preliminaries. Keep it short enough that site teams fill it in correctly.
  3. Load the tender budget per project and cost head. In Odoo 19, analytic budgets show an Achieved column from posted entries and a Committed column that adds confirmed purchase orders not yet billed, and a purchase line that exceeds the budget is highlighted in red (Odoo budget documentation).
  4. Make the analytic distribution mandatory on purchase and bill lines, so nothing reaches the ledger without a project.
  5. Review the budget report weekly with each project manager.

Committed cost tells you a package is over budget when the order is placed, not months later when the bill arrives.

Step 2: Raise progress claims from the contract, not from a spreadsheet

Odoo bills by percentage through milestone invoicing: a service product set to Based on Milestones, with project milestones that each carry a percentage of the order value. Reaching a milestone updates the delivered quantity, and the invoice is created from the sales order (Odoo milestone invoicing).

  1. Enter the contract as a sales order, split into the sections your client certifies.
  2. Bill the advance payment as a down payment, which Odoo supports as a percentage or a fixed amount (Odoo down payments), and agree how it is recovered from each claim.
  3. Invoice the certified value, not the claimed value, with the certificate number on the invoice.
  4. Add each approved variation as its own order line; keep unapproved ones on a list that someone chases.

Step 3: Treat retention as money owed, not a note in Excel

We did not find a dedicated retention feature in Odoo's standard documentation, so retention is configured: a retention receivable account, a negative retention line on each progress invoice, and a report by project showing the amount held, the release trigger and the expected date. Subcontractor retention works the same way on the payable side.

Worked example (assumptions, not a client figure): a AED 4,000,000 subcontract with 10% retention in the contract terms. When 60% of the work is certified, AED 2,400,000 has been billed and AED 240,000 is held back. If half is released at practical completion and half after a 12-month defects period, finance has two dates to chase long after the site team has moved on.

One decision belongs to your tax adviser, not your ERP partner: when VAT becomes due on the amount held back. Settle it before the invoice lines are configured, because it decides whether the retention line carries VAT on each claim or only on release.

Step 4: Control subcontractors and site purchasing

  • Approval limits by amount and project, from site engineer to commercial manager.
  • Subcontracts as purchase orders with their own milestones, so each subcontractor application is checked against the certified percentage before it is paid.
  • Back-charges as credit lines on the subcontract, plus retention payable on the same terms as your own.
  • Site store receipts recorded on delivery, so supplier bills are matched to what arrived.

Running contracting and trading as separate companies in one database needs Odoo's Custom plan (Odoo pricing); see our Odoo pricing guide.

Step 5: Put labour and plant costs on the job

Labour often ends up in overheads because payroll runs monthly through WPS while work happens on several sites. Daily timesheets per project, entered by the foreman on a phone, post an hourly cost to each project. Payroll stays where it is; only the allocation changes.

Give each machine an internal daily rate and charge it to the project using it; allocate camp accommodation and transport by headcount. Payroll and WPS setup itself is covered on our Odoo implementation page for UAE businesses.

VAT, corporate tax and e-invoicing for UAE contractors

VAT in the UAE has applied at a standard rate of 5% since 1 January 2018 (Ministry of Finance). Corporate tax is 9% on taxable income above AED 375,000 (Ministry of Finance), which makes accurate project profit a tax question as well as a management one.

E-invoicing is the deadline contractors should plan around now. Businesses with revenue of AED 50 million or more must go live by 1 January 2027, with the deadline to appoint an Accredited Service Provider moved to 30 October 2026 (Ministry of Finance); businesses below that threshold appoint one by 31 March 2027 and go live by 1 July 2027 (KPMG). Every progress invoice and credit note becomes structured data your ASP must accept.

  • Test a progress claim with advance recovery and retention lines in the ASP sandbox early; these are the invoices most likely to fail validation.
  • Invoices inside one VAT tax group are excluded for 24 months from 1 January 2027 (Ministry of Finance).
  • Odoo's own UAE e-invoicing module is not released at the time of writing; read how Odoo connects to a UAE ASP and check your dates in the e-invoicing deadline guide.

Odoo or a dedicated construction ERP: an honest comparison

Search results for construction ERP software in the UAE are mostly vendor pages for construction-only products. They make sense if your main pain is estimating, bills of quantities or planning.

Odoo suits contractors whose pain is the back office: cost control, billing, purchasing, stock, HR and finance in one database, including any trading or facility management division. Its core is open source, so you are not tied to one reseller. Its standard documentation does not describe a bill of quantities or estimating tool, so keep estimating where it is and import the awarded budget.

  • Choose Odoo if you run several entities and need purchasing, stock and HR next to project cost.
  • Choose a construction-only product if estimating is the core problem and finance is under control.
  • Either way, use our guide to choosing an ERP provider in Dubai.

How to measure whether your construction ERP is working

MeasureWhere to read itWhat good looks like after 3 months
Days from month end to a project cost reportBudget report per analytic accountUnder 5 working days
Days from certificate to invoiceCertificate date against invoice dateSame week
Retention receivable past its release dateRetention report by projectZero items unchased
E-invoice first-time acceptanceASP status per invoiceRejections traced to a fixed cause

The targets are Devvista's working goals, not industry benchmarks. Record your starting figures at kick-off.

Mistakes contractors make when moving to an ERP

  • Designing a cost code list for accountants that site teams will never fill in.
  • Leaving retention to be "sorted later".
  • Going live on a project that is already in its final account stage, where every number is disputed.
  • Skipping an ASP sandbox test for progress invoices until weeks before the e-invoicing date.

Where Devvista fits for UAE contractors

Devvista is an official Odoo partner that configures Odoo for UAE contractors: project job costing with committed cost, milestone progress claims, retention on both sides, subcontract control, WPS-linked labour costing and PINT-AE e-invoicing through your chosen ASP. The team works remotely, in hours that overlap the UAE business day. Our Odoo projects are under NDA, so calls use sanitised configurations, not client names.

A good fit: contractors and fit-out firms with 15 to 300 users, several live projects and a commercial manager who will own the cost structure. Not a fit: firms needing weekly site visits or mainly estimating software. See our Odoo implementation service, Odoo customisation, the real estate ERP guide for developers and landlords, or go back to the UAE hub.

Straight
Answers.

No single product is best; it depends on whether your problem is estimating or cost control and finance. Construction-only products focus on estimating, while Odoo covers project cost, purchasing, stock, HR and multi-company finance in one database. Ask any vendor to demo a progress claim with retention on your own contract.

Yes. Odoo covers job costing with analytic budgets, progress billing through milestones, advance payments and subcontract purchasing. Retention needs configuration, as it is not a standard feature in Odoo's documentation.

A service product set to invoice based on milestones links the sales order to project milestones, each with a percentage of the contract value. When a milestone is marked as reached, the invoice is created from the sales order for that percentage. Many contractors invoice the certified percentage from the consultant's certificate.

As a separate receivable (or payable for subcontractors) with its own release dates, usually practical completion and the end of the defects period. In Odoo that means dedicated accounts, a retention line on each claim and a release report. Agree the VAT timing with your tax adviser first.

It is money already committed through confirmed purchase or subcontract orders that are not yet billed. Odoo's budget report adds it to actual cost, so overruns show when the order is placed, not when the bill arrives.

Yes. UAE e-invoicing starts on 1 January 2027 for businesses with revenue of AED 50 million or more and on 1 July 2027 for smaller businesses. Progress invoices with advance recovery and retention lines must pass your Accredited Service Provider's validation, so test them early.

Yes, as separate companies with their own journals, TRNs and invoice layouts. Multi-company in one database requires Odoo's Custom plan.

Estimate: roughly 10 to 16 weeks for one or two entities, including migration and testing. The basis is the phase plan on our UAE implementation page plus time for contract and retention tests; multi-division groups take longer.

Devvista is an official Odoo partner that sets up Odoo for UAE contractors remotely, covering job costing, progress claims, retention, subcontract control and e-invoicing. If you need someone on site every week, a Dubai-based partner is a better fit.
United Arab Emirates

Know each project's margin before the final account

Book a call with your current cost report and one live contract. We will show how that contract would run in Odoo, from progress claim to retention release.

  • 30-minute consultation
  • No commitment required
  • Response within 24 hours
  1. Book a call30 minutes with an Odoo partner.
  2. Get a clear planSteps, timeline and a cost range for your setup.
  3. DecideGo ahead with us, or take the plan with you.
Chat on WhatsApp