
Job costing is not a report you run at the end, it is what falls out of purchase order discipline at the start. A PO carrying 4 fields makes costing automatic. A PO missing 1 of them makes every downstream number an assumption.
Most service companies treat these as separate concerns. Purchase orders are a procurement habit, and job costing is something the office produces afterwards by piecing information together.
They are the same activity seen from two ends. A purchase order is the moment when cost and job are connected, and it is the only moment where connecting them is easy, because the person creating it knows why.
Everything after that is reconstruction. A supplier bill arriving three weeks later carries a part number and an amount, and nothing about which fryer it went into.
| Field | What breaks without it |
|---|---|
| The job | Cost lands in a general parts account and no job margin is real |
| The equipment | Spend per piece of equipment cannot be built, so the repair or replace case has no evidence |
| The part number and quantity | The supplier bill cannot be matched, and price differences go unnoticed |
| The expected cost | Nothing to check the bill against, so overcharges are invisible |
The second row is the one service companies skip most and regret later. Attaching the purchase order to the job is standard practice. Attaching it to the specific equipment is what makes spend-per-asset possible, and that is the number every capital conversation with a customer depends on.
Roopairs holds purchase orders attached to work orders with parts inventory alongside and equipment records behind both, which is what lets one purchase order carry all four.
Do you create a purchase order for a $12 gasket? The answer has to be a rule rather than a judgment.
Create one for everything and the office drowns in paperwork for items that do not affect any decision. Create one only for large items and your parts costing has holes exactly where the volume is.
The practical resolution is that the threshold is not about value, it is about where the part came from:
That third case is the leak in most service companies. A technician buying a part locally with a card produces a receipt that reaches the office with no job attached, and the cost enters the books as general expense.
Treating them the same is why inventory and job costing disagree.
A stock purchase order replenishes inventory. The cost enters stock valuation and it is attributed to jobs later, as parts are consumed. No job number belongs on it.
A job purchase order buys something for one specific repair. The cost belongs to that job directly, and the part frequently goes straight to the technician without touching a shelf.
Both are legitimate and each needs the other. Where a service company uses only job orders, van stock is invisible. Where it uses only stock orders, the special-order compressor for a specific walk-in disappears into general inventory and the job it belonged to shows a suspiciously good margin.
The arrangement most likely to quietly break costing.
Many service companies have an open account with a supplier where technicians collect parts and everything is invoiced monthly. Convenient, and it produces one bill covering forty jobs with nothing tying any line to any of them.
Two ways to handle it, and both work:
What does not work is neither, which is the common state. The monthly bill gets coded to parts expense, the jobs show no parts cost, and the service company concludes its margins are better than they are.
Four reports, all of which are impossible without it and straightforward with it.
Margin per job, with parts at what you actually paid rather than an assumed markup. Spend per piece of equipment, which is the repair-or-replace evidence. Spend per customer, which is the sharpest indicator of whether an account is worth keeping. And parts margin by supplier, which is a purchasing conversation with numbers behind it.
None of those is a reporting feature. All four fall out of purchase orders carrying their job and their equipment, and none can be reconstructed afterwards without reading years of documents.
Three failure points, in the order they cost the most.
The counter purchase. A technician buys locally, the receipt arrives without a job, and nobody chases it because it is small. Multiplied across a year it is the largest hole in most service companies' costing.
The urgent order. A part ordered by phone during a breakdown, with the purchase order created later or never. Understandable in the moment and it needs a rule for the following morning.
The supplier bill with no reference. It arrives, nobody can place it, and it gets coded to general parts. That is the symptom rather than the cause, and the cause is one of the first two.
All three are fixed the same way: the person who knows why the part was bought records that at the moment they know it, which is the moment of ordering rather than the moment of paying.
Ten minutes, on last month's numbers.
Take your total parts spend for a month from the accounts. Then add up the parts cost attributed to jobs in the same month. The gap between those two numbers is the part of your parts spend that no job knows about.
Most service companies doing this for the first time find a gap larger than they expected, and it is concentrated in counter purchases and standing accounts rather than spread evenly.
Then repeat it quarterly. The gap closing is the clearest evidence that the discipline is working, and it is a better measure than any report the software produces.
Roopairs runs a product tour where you can see purchase orders attached to work orders with parts and equipment records behind them.
“When we first started the company I decided to do it by pen and paper and keeping on like a day minder. I've done bookkeeping for 30 years so that part of it wasn't hard. It was more trying to keep track of what he was doing, when he was doing it, who he did it for, what parts he put in. The logistics of it. You miss things, the notes aren't there.” — ProTemp Solutions (NC)
They are the same activity from two ends. A purchase order is the moment cost and job are connected, and the only moment where connecting them is easy, because the person creating it knows why. Everything afterwards is reconstruction.
The job, the equipment, the part number and quantity, and the expected cost. The equipment field is the one most often skipped, and it is what makes spend per piece of equipment possible.
The rule is about origin rather than value. Ordered from a supplier for a specific job, always. Taken from stock, never, since it is a consumption. Bought at a counter, either create one after the fact or treat it as a stock purchase, but decide which.
A stock order replenishes inventory and carries no job, with cost attributed as parts are consumed. A job order buys for one specific repair and the cost belongs to that job directly. A service company needs both, and using only one hides either van stock or special orders.
Either a purchase order per collection referencing the job, or treat it as stock and record consumption against jobs separately. What fails is neither, where the monthly bill is coded to parts expense and the jobs show no parts cost at all.
Take a month's total parts spend from the accounts and compare it to the parts cost attributed to jobs in the same month. The gap is spend no job knows about, and it usually concentrates in counter purchases and standing accounts.
The all-in-one platform built for commercial kitchen service companies. Dispatch, invoicing, parts ordering — all in one place.
Book a product tour →