Checking paint supplier invoices

A painter's invoices come off a trade account: paint by the tin, priced by product, sheen, tint base and tin size, usually as a discount off the list price, with sundries each and access equipment by the day.

Check my invoice

Free · No account · We don't keep the file

Who you buy from, and how it's billed

The invoice line often names the colour, which isn't what sets the price, and that makes a wrong price easy to read past.

Paint trade centres and merchants
Interior and exterior paint by the tin, priced by product, sheen, tint base and tin size, at your account's trade price.
Undercoats, primers and coatings
Sealer undercoats, metal primers and floor and roof coatings, by the tin.
Sundries
Rollers, brushes, drop sheets, tape, gap sealant and abrasives, each, by the roll or by the pack.
Access equipment hire
Scissor lifts, mobile scaffold towers and ladders by the day or the week.

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

  1. From your first invoice

    The same invoice twice, GST over ten per cent, or no ABN on a tax invoice.

  2. 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.

  3. 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.

    • Paint above your trade price per tin

      Checked
      Load your net prices, after your discount, and each line is checked against the list in force on the invoice date. A tin billed at list, or at a smaller discount, is held when it's at least $25 and 3% over.
    • The colour on the line instead of the product

      Checked
      Where the merchant prints its product code on the line and on your price list, the line finds its agreed price by the code, whatever colour it names. Without a code, a line whose wording isn't on the list shows as Unverified, and an owner or admin can link it to its item once, so the same wording finds it after that.
    • A tin priced each, billed per litre

      Checked
      Held as billed in a different unit, with both shown. CostCode doesn't work out how many litres are in a tin.
    • Sundries by the pack against a price each

      Asks you first
      A pack can hold any number, so the line shows as Unverified, asking how many are in one.
    • A merchant that bills at list and pays a rebate later

      Checked, for you only
      Record the rebate arrangement on the supplier. Lines over your agreed price are still held, for you to see, and never go into a query to the merchant.
    • Access hire above the agreed rate

      Checked
      Checked in the unit it's billed in: days against a day rate, weeks against a week rate. Days billed against a weekly rate show as Unverified, asking what the rate is per.
    • Delivery, small-order fees and card surcharges

      Checked
      Checked against the charge you agreed. With nothing agreed, the line shows as Unverified, with the reason.

A worked example, made up

With your pricesSample · made up

Sample Paint Trade Centre (made up)

SAMPLE-5187

Held

17 Sep 2026 · 1 line · $2,356.20

$126.00

over what you agreed (6.25%)

The line on sample invoice SAMPLE-5187, checked against the agreed price list
ItemAmountYour prices
Interior acrylic low sheen white base 15L12 EA × $178.50$2,142.00Above the agreed rate$126.00 over
Above the agreed rate. Agreed $168.00 per tin on the price list from 1 Jul 2026
Not sent: supplier email is off. CostCode writes the query, quoting the agreed price list, for you to copy into your own email. Nothing reaches the supplier unless someone in your team sends it.

12 tins at $178.50 against an agreed $168.00 per tin is $126.00 over (6.25%). That's at least $25 and 3%, the default floors, so the invoice is held.

The kind of gap a trade discount taken at the wrong percentage leaves: small on one tin, and past both floors across an order.

At the same price on 2 tins, the line would be $21.00 over (6.25%): more than 3% but under $25, so it wouldn't be held.

Made up: the supplier, the invoice and every price in this example are invented to show the arithmetic. They aren't market prices.

Painting supplies schedule of rates templatePaint by product and tin size, rollers

What CostCode doesn't check

  • Returned tins credited at less than you paid. A credit line isn't price-checked, so a return credited below the price you paid is yours to spot.
  • Whether the tins billed are the ones delivered, or used on the job.
  • The colour. CostCode checks the price for the product, base and tin size, not whether the colour is the one specified.
  • A list price less a percentage: CostCode checks the net prices you load, and doesn't work out a discount for you.
  • Rebates the merchant pays you later.

Questions

Do we need a row on the price list for every colour?

No. Paint is priced by product, base and tin size, so load one row for each of those, with the merchant's product code. A line carrying the same code is checked against that row whatever colour it names.

Our merchant prints TIN as the unit. Does that matter?

Not if your price list says TIN too. A unit CostCode doesn't recognise is compared when the price list and the invoice spell it the same way. When they don't (TIN on the invoice, EA on the list), the line shows as Unverified, asking, rather than assuming they're the same.

We get a rebate from our paint merchant. Will CostCode query its list prices?

No. Record the rebate arrangement on the supplier and CostCode still checks the prices and holds a line over your agreed price, but keeps it for you and never puts it in a query to the merchant.

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