Out-of-stock reporting that actually helps
Shopify's admin has an "Inventory" view. It tells you, in real time, which variants are at zero. That is useful — for a merchant who owns their inventory. For a dropship merchant, by the time your own inventory hits zero, your customer has already tried to buy something you can't ship. The damage is done.
The report that actually helps is the one built on supplier stock. Supplier stock at zero today means your stock hits zero in the next shipment cycle. Supplier stock trending down for three weeks means a conversation to have before it's urgent.
Why "your" inventory lies to you
In a dropship model, the quantity Shopify thinks you have is often aspirational. You set it to 100 when you listed the product; nobody decrements it until an order ships; the supplier's actual stock has been at 4 for a week. The Shopify view shows you "99 available" and congratulations, you just sold product number 100.
Supplier stock is the ground truth. It's the number the person shipping the goods looks at. Everything else is downstream.
What a good out-of-stock report shows
For each product:
- Current supplier on-hand. What's physically at the warehouse.
- Supplier on-order. What's incoming but not received.
- When the number last changed. "Reported yesterday" vs "reported six weeks ago" is the difference between a live feed and silence.
- Which supplier the number came from. If you have two suppliers for the same SKU, you care about both.
- The SKU and the product link. Zero reading without a click-through to fix the listing is just noise.
Crucially, the report should not show every zero in an undifferentiated list. A SKU with on-hand 0 but incoming 5,000 is fine. A SKU with on-hand 0, incoming 0, and last-reported six weeks ago is urgent. Don't make the merchant triage.
What we built
Stockpost's out-of-stock view collapses the above into one list. Three filters:
- At risk — supplier on-hand is 0, no incoming, last reported within 14 days. Pause these listings now.
- Watching — supplier on-hand is low (merchant-configurable threshold) but incoming is non-zero. Keep an eye on.
- Stale — last-reported is more than 30 days old. Either the supplier stopped sending, or their format broke and we stopped parsing. Investigate.
Each row links to the Shopify product admin and to the raw supplier report that produced the number. No summaries, no aggregation — the underlying data is one click away.
The piece nobody builds
It's the "stale" category that catches people out. Most inventory tools assume the source of truth is always fresh. Dropship doesn't work like that. Your data is only as good as your supplier's last email, and sometimes they stop sending — staff change, an ERP migration happens, your inbound address stops being on their distribution list. If you're not watching the freshness of supplier data, the first sign of silence is usually a customer complaint.
If you only build one thing from this post, build the freshness alarm. It's the cheapest good habit in dropship inventory management.