How to Build a Simple Invoice Escalation Ladder for Construction Teams

Construction invoices usually do not stall because nobody cares.
They stall because nobody is sure who should act next.
Accounts sees a missing PO, site remembers a variation, commercial wants a revised value, and the supplier is waiting for an answer. By the time everyone has looked at it, the invoice has become a shared problem with no clear owner.
A simple invoice escalation ladder solves that.
It does not need to be complicated. It just needs to tell the team what happens when an invoice is missing evidence, over value, coded to the wrong job, or waiting on a commercial decision.
Why invoices get stuck
Most invoice delays in construction come from a small set of issues:
- no purchase order number
- the job code or site reference is missing
- the invoice exceeds the approved value
- a delivery note, timesheet, or valuation sheet is missing
- the supplier has sent a corrected invoice or credit note
- the invoice includes work that looks like a variation
- the person who can approve it is away, busy, or never told it was waiting
The content of the invoice is not always the real problem.
The real problem is that the business has not defined the next step.
If an invoice can sit in the inbox for three days while people debate who should look at it, the process is already too vague.
What an escalation ladder is for
An escalation ladder is simply a set of rules for who takes the next action when an invoice cannot move forward as normal.
It answers questions like:
- who checks it first
- what counts as a routine query
- when the issue should move from accounts to site
- when commercial needs to step in
- when director approval is genuinely required
- how long each person has before the item escalates again
That keeps the work moving without forcing every problem up the chain.
It also keeps directors out of the small decisions that should already be covered by the workflow.
A practical four-step ladder
For most small and mid-sized construction businesses, four steps are enough.
1. Accounts does the first check
Accounts should be the first stop for routine matching.
That means checking whether the invoice has:
- a supplier name
- an invoice number
- a date
- a job reference or site reference
- a PO number where one should exist
- a value that makes sense against the record
If the invoice clearly fails one of those checks, accounts should not spend time trying to solve the commercial question.
It should move to the right owner.
2. Site or project management handles factual queries
If the issue is factual, the site team or project manager should answer it.
That usually covers:
- whether goods were delivered
- whether labour was signed in
- whether the work was completed
- whether a delivery note exists
- whether the job reference is correct
- whether the invoice belongs to the right package
This is the layer where many invoices should go quickly and come back quickly.
The important thing is to keep it narrow.
If site can answer the question, site should answer it.
3. Commercial or quantity surveying handles value questions
If the invoice is technically right but commercially wrong, the issue should move to commercial.
That includes:
- a variation that was never priced
- a stage payment that does not match the agreed position
- a subcontractor claim that is over the approved value
- a split cost that needs apportioning between jobs
- a corrected invoice that changes the original amount
This is where the invoice stops being a simple clerical check and becomes a commercial decision.
Commercial should own that decision, not accounts.
4. Director review is reserved for exceptions
Directors should not become the default next step.
They should only be involved when:
- the invoice is outside the normal approval limit
- the commercial risk is unusual
- there is a disputed or sensitive cost
- the business needs a policy decision rather than a routine approval
If directors are asked to review every invoice query, the business has not built an escalation ladder.
It has built a bottleneck.
Define the trigger at each step
The ladder only works if each step knows what sends an invoice upward.
For example:
- accounts escalates when the invoice lacks a job reference, PO, or obvious match
- site escalates when the facts are unclear or the paperwork does not match what happened on site
- commercial escalates when the amount, scope, or variation is the issue
- directors escalate only when the decision is outside the normal control limits
That avoids the common habit of passing an invoice around simply because nobody wants to be the person who decides.
Set a time limit for each handoff
An escalation ladder without time limits is just a polite suggestion.
If an invoice waits too long at one step, it should move on.
A simple rule might be:
- accounts has same-day review for obvious mismatches
- site has one working day to confirm the facts
- commercial has a set review window for value or scope issues
- unresolved exceptions escalate again after the deadline
The exact timings matter less than the fact that they exist.
Without a time limit, invoices drift.
With a time limit, the team can see whether the delay is normal or a real blocker.
Keep the status visible
The invoice should always have a visible status.
Not just "in progress".
It should say something more useful, such as:
- awaiting job reference
- waiting for site confirmation
- pending commercial review
- corrected invoice requested
- blocked by missing evidence
- ready to pay
That status makes the next action obvious.
It also stops people from reopening already-solved items because they cannot remember what the invoice was waiting for.
If the status is visible, the queue can be worked in the right order.
What to do with repeated queries
Some invoices keep coming back with the same problem.
That usually means the issue is not the invoice itself. It is the process around it.
If the same supplier keeps sending invoices without the right job reference, or the same package keeps landing with missing evidence, the business should fix the source rather than treating each invoice as a one-off annoyance.
That might mean:
- changing the PO template
- telling site what evidence is needed
- asking the supplier to use a different reference format
- tightening the approval rule for that type of cost
- moving the issue to a named owner until it is resolved
Repeated queries are a control problem, not just an inbox problem.
How BuilderDash helps
BuilderDash is useful here because the ladder should live with the job, not in one person's memory.
If the invoice, approval status, query reason, and next owner are all attached to the same record, the team can see where the item sits and who needs to move it forward.
That makes it easier to:
- keep routine checks with accounts
- send factual questions to the site team
- push value questions to commercial
- avoid overusing director review
- protect month-end reporting from avoidable drift
The workflow becomes easier to run because the handoffs are visible.
A short ladder you can use this week
If you want a simple starting point, use this:
- Check whether the invoice has the right job reference, PO, and value.
- If the facts are missing, send it to site.
- If the value or scope is wrong, send it to commercial.
- If it is outside policy or limits, send it to the director.
- Give each step a deadline.
- Keep the status visible until the invoice is either approved or formally queried.
That is enough to stop most invoice delays from turning into a game of pass the parcel.
The point is not to make approvals slower.
The point is to make the next step obvious so the invoice can move without guesswork.
Suggested internal links
- Why Construction Invoice Status Needs a Pending Evidence Step
- Why Every Construction Invoice Query Needs a Named Owner
- How to Stop Spend Slipping Through Email Approval Chains on Construction Jobs
- How to Build a Month-End Accrual List for Construction Jobs
Call to action
If invoice queries keep stalling in your team, start by defining who owns the next step, how long they have, and what happens if they do nothing.
BuilderDash helps keep that route visible so the invoice, the blocker, and the owner stay attached to the same job record.
Run your projects properly with BuilderDash.
One system for every enquiry, job, quote and invoice - built for project-based trades, not reactive call-outs.


