Navigating the Post-Stocky World: 3 Critical Pitfalls (and Fixes!) for Shopify Inventory Management
Hey there, fellow store owners! It's been a few months since Stocky officially rode off into the sunset on August 31st. Many of us have been busy migrating inventory and forecasting systems, and in the rush, it’s easy to overlook crucial details.
I’ve been watching the community discussions closely, and a thread started by juhyun_han really resonated. It dove into "three things that catch people out afterwards, whichever replacement you picked." What began as three points quickly expanded into incredibly valuable insights from folks like Denyslg and Ian_Chechin. It’s exactly the kind of real-world advice we need, so I wanted to share a synthesis of what we learned.
Don't Lose Your History: The 60-Day Data Trap
This is probably the most urgent point, one that can quietly sabotage your future planning. When you install a new forecasting app, you expect it to pick up your sales history, right? Well, it’s not always that straightforward.
Shopify’s default read_orders permission only gives an app access to the last 60 days of your orders. To get your full sales history – going back years – an app needs the more powerful read_all_orders permission, granted by Shopify case-by-case.
But here’s the kicker, as juhyun_han pointed out: just because an app *holds* read_all_orders doesn’t mean it *uses* it to grab your whole history. Building an app to re-read a rolling 60-day window is simpler, and for the first couple of months, it looks identical! Then, suddenly, your historical seasonal data for last Christmas is gone. Ian_Chechin shared how their app uses a Bulk Operations query for the whole history initially, then incrementally updates with `updated_at`.
Even worse, there’s a sneaky silent failure mode. If an app tries to pull data older than 60 days without proper permission, Shopify doesn't error out. It just returns an empty page, successfully. Your app might then confidently record "zero orders" for that month, leading to a complete-looking history full of flat zeros for older periods. That's a recipe for disastrous forecasting!
What to Ask Your New App (and What to Do Now):
- "Which permission do you hold:
read_ordersorread_all_orders?" This is your first filter. - "What do you do with it? Do you keep daily history, or re-read the window each time?" A robust app should store a full, accumulating history.
- Install your chosen app TODAY. Even if evaluating, get something installed that starts accumulating data. As Ian_Chechin wisely put it, "the history you have in a year is the history something started keeping today."
- Consider separate archiving. Tools like StoreVault (mentioned by Ian_Chechin) can archive every order from day one, providing an independent backup.
- Beware of incremental updates. Juhyun_han highlighted that if an app only appends new data, edits to past orders (like refunds or cancellations) might not be reflected, leading to permanently inflated sales velocity. Ensure your app either recomputes affected days or adjusts them properly.
The Out-of-Stock Blip: Why Your Forecasting Might Be Wrong
Here’s another subtle but potent pitfall: how your app calculates daily sales rates. Many tools use a simple formula: "units sold divided by days." Sounds logical, right?
But what if your best-selling hoodie was out of stock for 20 of those 30 days? Dividing its 10 sales by 30 days makes it look like a slow mover. Your app then tells you to reorder less, you run out faster, and the cycle of under-ordering continues. Soon, your "slow-mover" list is populated with your actual cash cows.
How to Protect Your Averages:
When evaluating new inventory or forecasting tools, ask them directly: "Does your tool account for days a product was actually available for purchase (in stock) when calculating sales velocity?" A sophisticated tool should factor in your in-stock days to give you a true picture of demand.
Beyond the PO: Preserving Your Supplier Knowledge
This point really resonated because it touches on the often-overlooked human element of inventory management. Juhyun_han initially noted that Shopify historically didn't have a Purchase Order (PO) API, meaning apps couldn't read or write Shopify’s own POs. Any app showing you POs was essentially keeping its own separate records.
However, Shopify is building this functionality! As juhyun_han clarified, a `Physical inventory feature preview` was announced, adding read-only access to `inventoryPurchaseOrder` and `inventoryPurchaseOrders` in the unstable GraphQL Admin API. This lets apps read details like `id`, `name`, `status`, `supplier`, and `line items` with `title`, `supplierSku`, and `totalQuantity`.
But hold your horses! This is still read-only, unstable, and behind a per-store feature preview. So, for most of us, the practical advice remains: keep your Stocky exports! They’re still the only comprehensive copy of your historical POs you're likely to have.
Now, let's talk about the *real* hidden gem uncovered by Denyslg: supplier knowledge. This isn't just about structured PO data; it's about the invaluable free-text notes. Things like "MOQ 50, cases of twelve," "call before ordering hoodies because they run two weeks late in Q4," or "two percent off if you pay inside ten days." This critical information often lived in free-text fields on supplier records in Stocky, and structured exports rarely pull that out.
Think about it: a beautiful reorder point of 37 units means nothing if your supplier only ships in cases of 144. Ignoring those nuances leads to confident, but utterly wrong, reorder quantities.
Saving Your Supplier's Secrets:
- Manually copy your supplier notes. If you still have read-only access to Stocky (or wherever those notes lived), make it a priority. One row per supplier, pasted verbatim, no tidying. This is the "thing that cannot be reconstructed is the thing nobody thought to save."
- Ask your new app if it can handle unstructured data. Some tools, like Binly (mentioned by Denyslg), are designed to parse this pasted text into structured fields like MOQ and case size, making your reorder math truly intelligent.
Navigating the post-Stocky landscape can feel a bit like uncharted territory, but you're not alone. The Shopify community is full of smart folks sharing their experiences and insights. The key takeaway from all these discussions? Be proactive, ask detailed questions of any new app you consider, and don't underestimate the value of your own historical data and those seemingly small, free-text notes. Getting these foundations right now will save you countless headaches and missed sales opportunities down the line. If you're just starting your journey on Shopify, setting up these systems correctly from day one is a huge advantage!