Skip to Content

ERP for Restaurants, Bars and Hospitality in Malta: A Practical Guide

30 September 2026 by
ERP for Restaurants, Bars and Hospitality in Malta: A Practical Guide
Kieran Sant

ERP for Construction and Contracting Businesses in Malta: A Practical Guide

Part 7 of our series on ERP for Maltese businesses, by sector.

The job finished in March. On paper it made 18%.

Then the last subcontractor invoice arrived in May, higher than expected. Then someone worked out that three of the variations the client asked for were done but never billed, because they were agreed on site, verbally, in the middle of a busy week. Then the retention - 5% held for twelve months - turned out never to have been chased on the previous two jobs either.

By the time all of that settles, the 18% is something closer to 6%. And the business only discovers it long after the site has been handed over, the team has moved on, and the same mistakes have already been repeated on the next two projects.

Construction is unusual in that the gap between when you spend money and when you know whether you made any can run to a year or more.

Why construction is a harder problem than most sectors

Every project is a one-off, built in an uncontrolled environment, with a supply chain you don't own.

Your costs land at wildly different times. Labour is weekly. Materials arrive when they arrive. Subcontractors invoice whenever they get round to it, sometimes months later. So the cost of a job at any given moment is genuinely unknown unless someone is deliberately tracking committed cost as well as invoiced cost.

The scope changes constantly, and the changes are agreed informally. That's not bad practice, it's the nature of a live site. But a variation agreed by conversation and never documented is work you've done for free.

Your cash flow is structurally awkward. You buy materials and pay labour up front, bill in stages, and then have a percentage held back for months after completion. A profitable business can still run out of money.

And in Malta the constraints are tighter than elsewhere. Sites are dense with almost no storage, so materials arrive just in time and get moved around. Finishes and specialist items are imported with real lead times. Documentation requirements have increased considerably in recent years. And the sector runs on a large number of small subcontractors, each with their own paperwork habits.

The five things that cost you money

1. Variations that never get billed

This is the biggest single leak in contracting, and almost everyone in the sector knows it.

The client asks for something extra while you're on site. It's reasonable, it's not huge, and stopping to paper it would be awkward. So it gets done. Three weeks later, nobody can remember exactly what was agreed or what it was worth, and raising it now feels like a difficult conversation.

Individually these are small. Across a project they routinely amount to more than the profit margin.

2. Retention that isn't tracked

Money held back at completion, released after a defects period. It's your money, it's agreed, and it is astonishingly easy to lose track of.

The failure mode is simple: nothing in the business is watching the calendar. Retention releases don't chase themselves, and if the person who knew about them has moved on, the money quietly stays where it is.

3. You can't see committed cost

Invoiced cost is what you've been billed. Committed cost is what you've already agreed to spend - orders placed, subcontractors engaged, materials on the way - whether or not the invoice has arrived.

Most contractors can see the first and not the second. Which means the picture of a job's profitability is systematically flattering right up until the late invoices land.

By the time you can see the true position, you've usually already priced the next job using the wrong assumptions.

4. Materials nobody is tracking

Materials get ordered for a job, delivered to a site with nowhere to store them, partly used, moved to another site, damaged, or simply not accounted for.

There are three separate losses here: over-ordering because nobody knows what's already there, leftover stock that gets written off rather than used elsewhere, and straightforward disappearance. On a dense urban site with several trades coming and going, all three are common.

5. Progress billing that drifts from actual progress

Stage payments are agreed at the start. Actual progress rarely follows the plan exactly.

If billing follows the schedule rather than reality, you either bill ahead of the work, which creates a dispute later, or you bill behind it, which means financing the client's project out of your own cash for months. Most contractors do the second without ever quantifying it.

What good looks like

Setting software aside, a well-run contracting business looks like this:

  • Every project has a budget broken down by cost category, with actual and committed cost visible against it while the job is running
  • Variations are captured the day they're agreed, priced, and approved in writing before the work is done
  • Retention amounts and release dates are recorded and chased automatically
  • Subcontractor orders are raised properly, so the commitment exists in the system before the invoice arrives
  • Materials are ordered against a specific project and tracked to it
  • Labour hours are recorded against the job, not just against the week
  • Progress billing reflects what has actually been built
  • At handover, you can produce a full cost breakdown within days rather than months

Where Odoo fits

The core of this for a contractor is analytic project costing — every cost, whatever its type and whenever it lands, tagged to the project it belongs to.

Projects with budgets. Each job is a project with a planned budget, broken down by category. Labour, materials, subcontractors and plant all report against it.

Committed cost through purchase orders. When you raise a purchase order for materials or engage a subcontractor, the commitment is recorded against the project immediately, not when the invoice eventually turns up. This is the change that makes mid-project profitability real rather than optimistic.

Timesheets against the job. Site hours recorded against the project, from a phone if needed, so labour cost lands where it belongs.

Materials ordered and tracked per project. Purchases linked to a specific job, with deliveries recorded. Where you hold central stock, materials issued to site are recorded as such, so leftover material is visible rather than lost.

Variation management. Additional work can be raised as a quotation against the project and sent for approval, with Odoo Sign capturing the client's signature electronically. That turns the awkward conversation into a two-minute process on a phone, on site, while the agreement is fresh.

Milestone and progress invoicing. Invoicing set up by milestone or by percentage completion, drawn from the project record so what you bill reflects what the system says has been done.

Retention tracking. Retention amounts can be held and tracked with their release dates, so the money is visible and chaseable rather than forgotten.

Subcontractor management. Vendors, their orders, their invoices and their documents held against the project, so you can see who is engaged on what and what they've been committed for.

Document control. Drawings, permits, certificates, method statements and correspondence filed against the project rather than scattered across inboxes — which matters increasingly as documentation requirements grow.

Planning for crews and plant. Scheduling of teams and equipment across concurrent projects, so you can see whether you actually have the capacity you've promised.

Real project profitability. Because every cost type is tagged to the project, you get a live view of cost against budget and revenue, rather than an answer six months after handover.

One honest note. Construction implementations depend heavily on discipline in the field. If purchase orders get skipped because it's quicker to phone a supplier, and if hours get written down on paper on Friday, the system will show a partial picture and people will stop trusting it. The projects that work are the ones where site managers are involved in the design from the start, rather than having a system handed to them.

How these projects usually run

Sensible phasing for a contractor: start with project structure, purchasing and committed cost, since that's where the largest blind spot is. Then add labour timesheets. Then variations and progress billing. Then documents, planning and the reporting layer.

Start on new projects rather than mid-flight ones. Trying to migrate a job that's already half-built produces a mess of partial data that satisfies nobody.

Where to start

Three things you can do this month, without buying anything:

Take your last completed project and rebuild its true cost. Every subcontractor invoice, every material delivery, every hour. Compare it to what you thought the margin was at handover. That difference is what you're currently unable to see in real time.

List every variation on a current job and check which have been billed. Not the ones you remember - go and ask the site team what the client has asked for. The gap is usually uncomfortable.

Find out how much retention is outstanding across all completed jobs, and when it's due. If nobody can answer within an hour, that's money at genuine risk.

If those exercises are difficult, the difficulty is the business case.

Centric Malta is an Odoo implementation partner based in Birkirkara, working with Maltese contractors, developers and specialist trades. If you'd like to talk through how your project costs, variations and billing currently connect  and what it would take to see a job's real position while it's still running — get in touch.

Mob +356 7746 9333 | Tel +356 2746 3333 | info@centricmt.com

Previously in this series: ERP for restaurants, bars and hospitality in Malta.

ERP for Retail and Multi-Outlet Businesses in Malta: A Practical Guide