Progress-claim bars stepping up towards a dashed contract-sum line, with a slice of the last claim held back as an orange square labelled retention, beside the words Odoo for contractors.

Odoo for contracting companies in the UAE works well once you know, before you buy, which parts of a contractor’s job it covers out of the box. Projects, purchasing per site, job costing and progress billing are covered. Retention, BOQ import and subcontractor certificates are not, and on a construction, fit-out or MEP contract that is where the cash sits.

Can Odoo run a contracting company in the UAE?

Quick answer: Yes, with a clear split. Standard Odoo gives each contract a project with its own analytic account, purchase orders and stock per site, live job costing, milestone or measured progress billing, WPS payroll and Arabic tax invoices. Retention, BOQ import, payment certificates and subcontractor certificates need a construction module or custom work.

Running more than one site? Send us one recent progress claim and we’ll show where it fits in Odoo.

What spreadsheets cost a contractor

On a contract job, margin leaks between the estimate and the site: materials bought for one project and used on another, labour that never reaches the job, variations done before anyone priced them. The spreadsheet shows it after the job closes, when nothing can be recovered.

E-invoicing adds a date. Businesses with revenue of AED 50 million or more start on 1 January 2027 and smaller ones on 1 July 2027, as our UAE e-invoicing 2027 guide sets out. From then, every progress invoice and credit note goes through your accredited provider, so a claim that fails its checks holds up the payment behind it.

What Odoo’s own construction setup covers

Odoo publishes a construction setup for Odoo Enterprise, and its construction page compares two tiers:

  • General contractor, for trades and residential work: quotes signed online with deposits, billing in progress increments, variations tracked with the main contract, timesheets against estimates and live margins.
  • Property developer, for large projects: adds a multi-level work breakdown, estimating by work item ratios, phased shopping lists for procurement and cumulative progress billing.

Odoo’s page doesn’t mention retention, subcontractor certificates or importing a consultant’s BOQ. Ask any quote which tier it assumes, and how it handles those three.

Odoo for contracting companies: which apps cover what

The middle column is standard Odoo; the last is what needs a module or custom work.

What you need Odoo apps Standard in Odoo Needs a module or custom work
Job costing per project Project, Accounting, Timesheets A project per contract with its analytic account; a dashboard of revenue against purchases, bills, stock issued to the job, labour and expenses; analytic budgets with committed and actual amounts Cost codes by trade as a second analytic plan; actual payroll cost, not an hourly rate, split by project
BOQ and estimation Sales, Project Quotations with sections per trade, optional lines and rates from pricelists Importing a consultant’s BOQ from Excel, with item codes and rate build-ups for material, labour and plant
Progress billing Sales, Project Milestone invoicing, or measured progress by updating the quantity done per line; advances as down payment invoices, deducted later Payment certificates in your consultant’s format: work to date, less previous claims, retention and advance recovery
Retention No standard app Not in standard Odoo A retention line per claim, a retention receivable account, release at handover and after defects liability
Subcontractors Purchase, Accounting Subcontract orders charged to the project; bills on received quantities, updated as work is certified Subcontractor certificates with retention and advance recovery held back
Procurement per site Purchase, Inventory A warehouse or location per site; orders delivered to site and charged to the job; approval above an amount you set; calls for tenders Material requests from site engineers, approved before a purchase order
Equipment Maintenance, Planning, Fleet An equipment register with preventive maintenance; plant scheduled as resources; vehicle costs Plant hours charged to projects at an internal rate
Site payroll Payroll (UAE), Attendances, Timesheets WPS salary file, end-of-service and leave; site check-in on a kiosk; hours to projects Overtime and site allowances mapped to your rules
Arabic Accounting, Sales Arabic as a second language on tax invoices Claims, certificates and subcontract orders in Arabic or both languages

Two traps in the names. Odoo’s “Subcontracting” is a Manufacturing feature for parts made outside, not construction subcontractors. And Odoo Planning schedules cranes and forklifts as material resources, which is not the same as costing them to a job.

WPS files and end-of-service for site staff are in our Odoo payroll guide. Staff who never log in are light users, so check the bill in the Odoo licence calculator.

VAT on progress invoices and retention

The FTA’s Real Estate VAT Guide treats a construction contract with advances, stage payments or retention as a continuous supply under Article 26 of the VAT law:

  • Progress claims. VAT is due at the earliest of the tax invoice, the payment due date shown on it, or receipt of payment. Certification alone doesn’t trigger it, but a payment date tied to certification can. If none happens within 12 months of the work, the 12-month point does.
  • Retention. VAT is due at the earliest of the retention being paid, a tax invoice for it, or 12 months after the work is signed off as complete.
  • Retention kept for snags. If the client keeps it permanently, no VAT is due on that part; if VAT was already accounted for, a credit note or bad debt relief corrects it.

For Odoo, that means two design decisions. First, whether each progress invoice taxes the gross value of work, retention included, or only the amount claimed now. Second, a report of retention approaching 12 months after sign-off. Standard Odoo has no retention, so both belong in the module or custom work that adds it. Your tax adviser decides the treatment; we make Odoo follow it. Our Odoo VAT setup guide covers TRNs, emirates and the VAT201 check.

What this means for you: decide how your invoices treat retention before anyone configures Odoo. Changing it after go-live means correcting claims already issued.

Module, Studio or custom code

  • A construction module from the Odoo Apps Store is the quickest route to BOQs, certificates and retention. It needs Odoo.sh or your own servers on the Custom plan, since Odoo Online can’t run Apps Store modules. Test it on your version with one real claim, including Arabic and VAT, before you buy.
  • Odoo Studio, on the Custom plan, adds fields, simple approval rules and report changes. It doesn’t build a retention ledger.
  • A custom module fits when your certificates, retention and subcontract flows are specific. It is built once and carried through each upgrade.

Change the process first, use a module where one fits, and write code only for the rest.

How to set up Odoo for a contracting company, step by step

  1. Map one live contract end to end: estimate, contract, variations, site purchases, stock issued, labour, claims, retention, final account.
  2. Settle VAT and cost structure first: retention and advance treatment with your tax adviser, then the cost codes management reads.
  3. Choose standard, module or custom for each row of the table, and the plan and hosting that follow.
  4. Test on that contract: run your last three claims through Odoo and compare each with the certificate.
  5. Migrate open contracts at a VAT-period start: contract value, claimed to date, retention held, open orders and subcontractor balances. Moving from Tally? Our Tally to Odoo migration guide covers balances and timing. Then connect your e-invoicing provider to Odoo.

Decision checklist for contractors

Each row you tick adds a module, custom work or a licence change, so name them before you compare quotes.

If this is true for you Plan for
Clients hold retention on your claims A retention module or custom work, built to your VAT treatment
A consultant certifies claims in their own format A certificate layout with cumulative totals
Estimators price from a consultant’s BOQ in Excel A BOQ import
You hold retention from subcontractors Subcontractor certificates with retention payable
Several sites draw from one store Site locations, transfers and stock costed to each job
You own cranes, generators or other plant Maintenance and Planning, plus an internal plant rate
Most site staff never log in Light users for payroll, and a kiosk for site check-in
You need modules from the Apps Store Odoo.sh or your own servers, on the Custom plan

Want the checklist turned into a plan? For an estimate, send us:

  • your work: construction, fit-out or MEP, and how many projects run at once;
  • one recent progress claim and its certificate, with figures blanked if you prefer;
  • how you hold retention and advances, from clients and with subcontractors;
  • what you run today for estimating, accounts and payroll;
  • your VAT quarter and your e-invoicing date.

We reply with what standard Odoo covers for you, what needs a module or custom work, and the effort, team and price. Scope your contracting rollout →

Not ready for a call? Ask for our company profile and we’ll send it to you.

Who runs your rollout

We implement Odoo for UAE businesses from Dubai Digital Park, with our core engineering team in Egypt, and our Odoo team leads the rollout. Quality is built into every step:

  • CTO oversight on the retention and VAT design and the cost structure, the decisions hardest to undo.
  • Independent QA before each release, re-running real claims against their certificates.
  • A dated plan in FloPlan, the delivery software we built and use, with each test and the go-live date.

Our core team are native Arabic speakers, so bilingual claims and invoices are checked by people who read Arabic daily. Outside Odoo, we build ERP software from scratch: Al-Mawared ERP is a web-based ERP we built for exchange companies across the MENA region. Talk to the team that built it: book a meeting.

Bring one contract

Send us one contract’s claims and how you hold retention. Migration, VAT, WPS payroll, the e-invoicing connection and custom modules are part of our Odoo implementation services in the UAE; our Odoo implementation cost guide shows what sizes a rollout.

Scope your contracting rollout → We ask about your goal, what you use today, your timing and who else should be involved. You leave with clear next steps. We reply by email first and set up a call only if you want one. Asking commits you to nothing, and we sign an NDA first if you ask.

Odoo’s construction page and Planning documentation, and the FTA’s Real Estate VAT Guide, checked on 27 October 2026.

FAQ

Frequently asked questions

Does Odoo have a construction module?

Odoo publishes a construction setup for Odoo Enterprise, built on Project, Sales, Purchase, Inventory, Planning, Field Service and Timesheets, in a general contractor tier and a property developer tier. Third-party modules on the Odoo Apps Store add BOQs, payment certificates and retention. Between the two, most contractors find a fit once the gaps are named up front.

Can Odoo handle retention on progress invoices?

Not in standard Odoo. Retention needs a construction module or custom work: a retention line on each claim, a retention receivable account, and its release at handover and after the defects liability period. Agree the VAT treatment with your tax adviser first, and the module is built to follow it.

Can Odoo do progress billing for construction, fit-out and MEP contracts?

Yes. Odoo invoices a contract by milestones, each releasing a share of the contract value, or by measured progress, where you update the quantity done on each line. Advances are down payment invoices deducted from later ones. A certificate in your consultant's format, with cumulative totals, needs a layout or module, which is set up once and reused on every claim.

Can a contractor run Odoo on Odoo Online?

Yes, if standard apps and Odoo's own construction setup cover your work. Odoo Online can't run custom modules or modules from the Odoo Apps Store, so a retention or certificate module means Odoo.sh or your own servers, on the Custom plan. Settle this in discovery, before you pay for a plan.

Does Odoo payroll handle WPS for site workers?

Yes. Odoo's UAE payroll localisation, part of Odoo Enterprise, exports the WPS salary file and calculates end-of-service and leave provisions. Site staff who never log in count as light users, which cost less than full users. Site hours reach each project through timesheets, so labour shows up in the job cost every week.

What does Odoo for a contracting company cost?

The licence is Odoo's published price per user, and our licence calculator works it out for your users. The rollout follows your scope: the apps, the number of live projects, the modules or custom work for retention and certificates, and the data you move. Send us those details and we reply with the effort, the team and the price, agreed in your proposal.

See your contracts in Odoo

Send us one progress claim and how you hold retention. We’ll say what standard Odoo covers and what needs a module.