Checking roofing supply invoices
A metal roofing invoice is sheet cut to your lengths and priced per lineal metre, flashings priced by girth, and the rest by the length, the roll and the box.
Who you buy from, and how it's billed
The price per metre changes with the profile, the thickness and the finish, and when coil prices move, the roll-former's price list moves with them. A few cents a metre is hard to see, and it's charged on every metre of a roof.
- Roll-formers and roofing suppliers
- Roof and wall sheet cut to length and priced per lineal metre, by profile, base metal thickness (BMT) and finish: plain zinc-aluminium or prepainted.
- Flashings and capping
- Flashings folded to order and priced per metre by girth band, and ridge and barge capping by the length or the metre.
- Rainwater goods
- Gutter by the metre, downpipe by the length, and brackets, outlets and stop ends each.
- Battens, sarking and insulation
- Steel battens by the metre, and sarking and insulation blanket by the roll.
- Fixings, accessories and roof loading
- Roofing and batten screws by the box, vents and skylights each, and roof loading by the supplier's crane truck, usually per delivery.
What CostCode checks, and from when
Anything it can't check yet shows as Unverified, with the reason. It's never marked as fine. Why a line is unverified
From your first invoice
The same invoice twice, GST over ten per cent, or no ABN on a tax invoice.
Once a supplier has billed you a few times
A price up on what you've paid before, once there are three earlier prices. Kept between you and CostCode.
Once your prices are in
Import each supplier's price list from a spreadsheet or a PDF, or let CostCode suggest one from invoices you've already uploaded, for you to confirm.
Roof sheet above the agreed price per lineal metre
CheckedEach line against the price list in force on the invoice date, compared to four decimal places, with the difference worked out on every metre billed.A price rise billed before it starts
CheckedLoad the roll-former's new price list with the date it starts. An invoice dated before then is still checked against the old prices, so a rise can't arrive early.Plain sheet billed at the prepainted price
CheckedEach profile, thickness and finish is its own item on your price list. A line carrying the plain sheet's code or wording is checked against the plain sheet's price, so billed at the prepainted one it's over.Capping or flashings billed per length or each when you agreed per metre
CheckedHeld as billed in a different unit, with both shown. A 6 m length and a metre are six times apart, and CostCode doesn't convert one into the other.Sarking billed per square metre when you agreed per roll
CheckedHeld as billed in a different unit. CostCode doesn't work out how many square metres are on a roll.Roof loading above the agreed price
CheckedRoof loading billed per delivery is an item like any other: put it on the price list and it's checked. With no agreed price, the line shows as Unverified, with the reason.Delivery, small-order and minimum-order fees
CheckedChecked against the fee you agreed. With nothing agreed, the line shows as Unverified, with the reason.
A worked example, made up
Sample Roofing Supplies (made up)
SAMPLE-4630
Held$169.92
| Item | Amount | Your prices |
|---|---|---|
| Corrugated roof sheet 0.42 BMT prepainted212.4 LM × $15.40 | $3,270.96 | Above the agreed rate$169.92 over |
| Above the agreed rate. Agreed $14.60 per lineal metre on the price list from 1 Mar 2026 | ||
212.4 lineal metres at $15.40 against an agreed $14.60 per lineal metre is $169.92 over (5.48%). That's at least $25 and 3%, the default floors, so the invoice is held.
The supplier's new price list, at $15.40 per lineal metre, starts on 1 Sep 2026. This invoice is dated 26 Aug 2026.
Without the start date, the new price on an invoice raised a few days early would look right. With it, the line is checked against the price that applied on the day, and the gap is charged on every metre of the roof.
What CostCode doesn't check
- Metres billed against your cutting list. CostCode doesn't read your cutting list or the roll-former's order confirmation, so the lengths billed are yours to check.
- The metres billed against what was delivered.
- Whether the profile, thickness or colour billed is the one you ordered.
- Coil or steel market prices. Sheet is checked against the price list you load.
- Credits for returned or damaged sheets. A credit line isn't price-checked.
Questions
Our roll-former puts its prices up with notice. How does CostCode handle that?
Load the new price list with the date it starts. Invoices dated before then are checked against the old list, and invoices dated from then against the new one.
Flashings are priced by girth. Can CostCode check them?
Yes, when each girth band is on your price list as its own item, with the code or wording the supplier's invoices use. A flashing line is checked against the price for its band. CostCode doesn't measure girths, so a flashing billed in a wider band than the drawing shows is yours to spot.
Will CostCode email the supplier about a price that's over?
Not by itself. Supplier email starts off, so CostCode writes the query, quoting only your agreed price list, for you to copy into your own email. Nothing reaches a supplier unless someone in your team sends it.
Got a supplier invoice handy? Check it now.
About ten seconds. No account. We don't keep the file.
Or start free: 20 invoices a month, no card