Straight Figures Apply

QuickBooks Desktop, answered

What should I reorder this week?

QuickBooks Desktop has a reorder point on each item and a report that flags what is under it. It does not know how fast you sell the item, how long the supplier takes, or what is already on order against that. So it tells you what is low today, not what to order, how much, or by when. The reorder list is a report it cannot make, built from three things you already have.

What we do about it

We take your data out of QuickBooks as reports, put it in a database, and connect it to your Claude or ChatGPT. QuickBooks stays as it is.

The first step is small on purpose. We model one year of your sales data and get on a live call where you ask and your own numbers answer. You give us the three questions you most want answered, and we get you those answers or figure out how we can deliver them. You keep the database, connected to your Claude or ChatGPT.

The first step is $950, credited in full toward your setup if you go ahead. If you don’t, we delete the project and your data doesn’t stay with us. If it earns its place, we keep it current every week and send the reports you pick.

Nothing we build can write to your books.

ApplyEleven quick questions to see if we’re a good fit.

What QuickBooks gives you

Inventory Stock Status by Item lists every item with quantity on hand, on purchase order, and the reorder point, and puts a check mark next to anything under the point. The reorder point is a number someone typed when the item was set up. On most files it was typed once and never revisited.

The report has no idea of pace. An item with twenty on hand that sells two a week is fine. An item with twenty on hand that sells ninety a week runs out on Wednesday, and the report shows both as above the point.

What the reorder list needs

Three things. The stock count, the sales lines, and the supplier’s lead time. The count is the weekly stock report from QuickBooks, or a physical count if the QuickBooks quantities are not trusted. The sales lines are already in the database. The lead time comes off the supplier’s price sheet.

From those, each item gets a pace, weeks of cover, an order-by date, and a suggested quantity. The list is kept every Monday from the week the count starts. It does not pretend to know last spring.

Three questions from a fictional company

The Monday list, the opposite question, and whether last Monday’s list was acted on. The last one is the standing report the weekly email carries.

For example

What am I going to run out of, and when?

This Monday’s reorder list. 50 lines in all; the first 12 shown, the ones closest to running out first:

YardItemOn handOn orderPer weekWeeks of coverOrder bySuggested
Main YardSiding:Trim Coil 24x50-29016.1-1.82026-07-27125
Main YardMillwork:Stair Riser Primed-8037.8-0.22026-07-27240
North YardDoors-Ext:French Door 6068-331.00.02026-07-276
Main YardMillwork:Ashwyn Casing 356 16ft330128.10.32026-07-27740
Main YardMillwork:Newel Post Primed405.50.72026-07-2729
North YardHardware:Barn Door Hw Set202.60.82026-07-2713
Main YardDecking:PT 4x4-1068090.10.82026-07-27480
Main YardDecking:PP-546-16-BRN-691936242.81.02026-07-271,224
Main YardFasteners:Const Adhesive Case10010.21.02026-07-2851
Main YardDoors-Int:Louver Door 246811010.91.02026-07-2754
Main YardFasteners:Trim Nails 16ga Box21017.71.22026-07-3085
Main YardFasteners:Framing Nails Box17012.81.32026-07-3159

11 of the 50 lines show stock below zero. Those are items QuickBooks let you sell that you did not have: either the truck came and nobody keyed the receipt, or you sold from the next load. The owner knows which. Either way the count is wrong, and the list says so. It is built from the weekly stock count, the last twelve weeks of sales at that yard, and the supplier’s lead time from the price sheet.

How that was computed
select r.yard, i.name as item, r.on_hand, r.on_order,
       r.weekly_velocity as per_week, r.weeks_of_cover, r.reorder_by, r.suggested_qty
from reorder_report r
join items i on i.id = r.item_id
where r.week = '2026-07-27'
order by r.weeks_of_cover, r.on_hand

For example

What’s sitting on the shelf too long?

Items with more than twelve weeks of stock at the current pace:

Vantera Bay 8048Vantera Bay 8048: $24,114$24,114Housewrap 9x150Housewrap 9x150: $17,292$17,292Smart Lock WiFiSmart Lock WiFi: $16,159$16,159Vantera Picture 4848Vantera Picture 4848: $13,867$13,867Vantera Csmt 2848Vantera Csmt 2848: $8,186$8,186
YardItemOn handPer weekWeeks of stockTied up at cost
North YardWindows:Vantera Bay 8048181.215$24,114
Main YardSiding:Housewrap 9x1501329.314$17,292
Main YardHardware:Smart Lock WiFi1137.016$16,159
North YardWindows:Vantera Picture 4848451.923$13,867
North YardWindows:Vantera Csmt 2848250.738$8,186

$79,618 tied up in slow stock, most of it at the North Yard, where the reorder points were set when the yard opened and never revisited. Same weekly count, opposite question.

How that was computed
with pace as (
    select i.canonical_id as item_id, t.class as yard, sum(l.qty) / 12.0 as per_week
    from txn_lines l
    join txns t on t.id = l.txn_id
    join items i on i.id = l.item_id
    where t.date >= '2026-05-04' and t.date < '2026-07-27'
    group by i.canonical_id, t.class),
price as (
    select item_canonical_id as item_id, unit_cost
    from item_costs c
    where effective_date = (select max(effective_date) from item_costs x
                            where x.item_canonical_id = c.item_canonical_id
                              and x.effective_date <= '2026-07-27'))
select s.yard, i.name as item, s.on_hand,
       round(coalesce(p.per_week, 0) * 10) / 10 as per_week,
       round(s.on_hand / p.per_week) as weeks_of_stock,
       round(s.on_hand * pr.unit_cost) as tied_up_at_cost
from stock_snapshots s
join items i on i.id = s.item_id
join price pr on pr.item_id = s.item_id
left join pace p on p.item_id = s.item_id and p.yard = s.yard
where s.week = '2026-07-27' and s.on_hand > 0
  and (p.per_week is null or s.on_hand / p.per_week > 12)
order by tied_up_at_cost desc

For example

Did last week’s reorder list get acted on?

Last Monday’s list against the purchase orders raised that week. 32 lines; the first 12 shown:

YardItemList said orderOrdered that week
North YardSiding:Fascia Alum 8in 12ft300320
North YardMillwork:Ashwyn Crown 434 16ft340290
Main YardSiding:TruNor D5 Panel /sq248272
Main YardDecking:PP Fascia 12ft Gry84144
Main YardHardware:Lever Passage Ni108132
Main YardRailing:Post Cap Light102126
Main YardDoors-Int:6-Panel Hollow 2668131125
Main YardDoors-Int:6-Panel Hollow 28687395
North YardDoors-Int:6-Panel Hollow 28684055
North YardSiding:Wrap Tape 3in4254
North YardRailing:Post Sleeve 4x4 Wht3054
North YardMillwork:Handrail Oak 16ft4040

22 of 32 lines had a purchase order raised that week. The rest are back on this week’s list. This is the standing report the weekly email carries: the list, and whether it happened.

How that was computed
select r.yard, i.name as item, r.suggested_qty as list_said,
       coalesce((select sum(l.qty)
                 from po_lines l
                 join purchase_orders p on p.id = l.po_id
                 join items li on li.id = l.item_id
                 where li.canonical_id = r.item_id and p.yard = r.yard
                   and p.date >= '2026-07-20' and p.date < '2026-07-27'), 0) as ordered_that_week
from reorder_report r
join items i on i.id = r.item_id
where r.week = '2026-07-20'
order by ordered_that_week desc, list_said desc

Northgale Building Products is a fictional company. Every name, figure and supplier on this page is made up, built to behave like a real three-and-a-half-year QuickBooks Desktop file so we can show real screens without showing anyone’s real numbers. Data as of the 2026-07-27 refresh; the last invoice in the file is dated 2026-07-24.

Short answers

  • Does QuickBooks Desktop have a reorder report?It has Inventory Stock Status by Item, which flags items under their reorder point. It does not say how much to order or by when.
  • What if the quantities in QuickBooks are wrong?Then the count comes from a weekly physical count instead, and the list shows where the two disagree.
  • How far back does the reorder history go?To the week the counts start. The list is kept from then on and never backfilled.

Related questions