AccAnalysisAccAnalysis
Field Service & Maintenance

The job, the parts and the invoice on one record

A third-party maintenance provider serving fuelling stations was running work orders, stock, billing and accounts as four disconnected activities. We delivered them as one, on a shared-resource managed model.

At a glance
Status
Delivered
Region
Pakistan
Engagement model
Shared specialists, managed service

Status: Delivered. Described from our own delivery records. Client identity, brand and commercial terms are withheld. Figures, where given, cover the period stated and nothing beyond it.

The organisation

Context

A maintenance contractor working on customer sites across a petroleum retail network.

Its work is dispatched, performed, consumed parts from stock, and eventually generated an invoice — but each of those four things lived in a different place, so the chain from work performed to revenue recognised was manual and slow.

The brief

The problem

  • Work orders and the parts consumed against them were recorded separately, so stock and job cost were reconciled after the fact.
  • Billing lagged completion, because the evidence needed to raise an invoice arrived late and incomplete.
  • Purchasing had no reliable signal from field consumption.
  • Accounting entries were assembled from operational records rather than produced by them.
  • Nobody could see which contracts were profitable at the job level.
The work

What we built

A single operational chain

Work orders, inventory, sales, purchasing and accounting configured as one system, so completing a job moves stock, generates the timesheet and cost lines, and produces the invoice.

Consumption-driven replenishment

Parts used in the field raise the purchase signal rather than waiting for someone to notice a gap.

Job-level cost visibility

Material and labour attributed to the work order rather than absorbed into an overhead pool.

Method

How we delivered it

  1. 1

    Process mapping

    Of the dispatch-to-cash chain, with the people who run it.

  2. 2

    Foundation

    Entities, chart of accounts, stock locations, environments.

  3. 3

    Work-order and inventory build

    Configured to the real job types and parts catalogue.

  4. 4

    Billing wiring

    Completion and sign-off producing the invoice.

  5. 5

    Pilot on one region

    Through a full billing cycle, before wider roll-out.

  6. 6

    Ongoing managed operation

    On a shared-resource basis.

Sequence

How it was phased

PhaseDurationWhat happens
1Fit review
1–2 wks

Job types, parts catalogue, stock topology

2Foundation
2 wks

Entities, accounts, environments

3Work orders & inventory
3–4 wks

Job types, consumption, stock movement

4Sales, purchase & billing
2–3 wks

Completion to invoice, purchase signals

5Pilot
2 wks

One crew or region through a full cycle

6Roll-out
ongoing

Crew by crew

Indicative phasing for work of this shape. Actual duration varies with data quality, access and decision speed.

Hand-over

What the client keeps

  • The production system
  • Configuration documentation
  • The job-type and parts configuration
  • Runbooks
  • The reporting layer
Stack
Odoo (Work Orders, Inventory, Sales, Purchase, Accounting)PythonPostgreSQL
Keep reading

Related

Related case studies

Tell us what your current system can't do, and we'll tell you what it would take to change that.