Days on hand reporting

Track days on hand at the SKU level. Combine inventory from your ERP with velocity from your storefront. Flag slow-moving and at-risk stock before it becomes write-down exposure.

The prompt

I want to track days on hand across our SKU catalog to flag slow-moving and at-risk inventory. Can you build me a flow that pulls current inventory levels from NetSuite and sales velocity from Shopify, calculates days on hand per SKU, and outputs a report flagging anything outside our target range?

Just copy and paste the prompt into a new Parabola flow to get started.

What Parabola builds

A workflow with six steps you can edit:

1. Pull current inventory. From NetSuite or your ERP. On-hand by SKU, by warehouse, with reservations excluded.

2. Pull sales velocity. From Shopify, your WMS, or a sales feed. Units sold per SKU over the chosen lookback window.

3. Standardize the SKU. Trim, uppercase, strip prefixes, map between code systems so velocity and inventory line up.

4. Calculate days on hand. On-hand divided by daily velocity, with seasonality smoothing if the planner asks for it.

5. Apply your bands. Slow-mover threshold, target range, at-risk-of-stockout threshold. Different bands per category if needed.

6. Output the report. Full table for the record, flagged-only view for merchandising, and a Slack alert when a SKU crosses a threshold.

Why teams stop doing this manually

Days on hand is the metric merchandising wants every week and the metric nobody has on a fresh report. The numerator lives in the ERP. The denominator lives in the storefront. The lookback window depends on whether the category is steady or seasonal, and the planner has to make that call on every refresh.

The manual version is a workbook the planner builds Monday morning. Export inventory, export sales, line them up, calculate the ratio, apply the thresholds, build the deck for the merch meeting. The numbers are clean for about thirty hours, then a Shopify push or a 3PL receipt makes the workbook stale and the meeting on Wednesday is debating yesterday's view.

The judgment in days on hand is in the threshold and the merch response. Reorder, mark down, push paid, hold and wait. That belongs in the meeting. The arithmetic belongs in a flow. Run the flow daily and the merchandising conversation gets the actual answer, not the version that was true on Monday.

How it works

Step 1. Paste the prompt.

Open Parabola, paste the prompt in section 2, and let it ask follow-up questions about your inventory source, your velocity window, and what bands count as slow or at-risk.

Step 2. Connect your data.

NetSuite, Shopify, your WMS. Plus the threshold table that says what target range applies per category.

Step 3. Run it on the cycle merch needs.

Daily for fast categories, weekly for steady ones. The flow refreshes against the latest data each time.

FAQ

What lookback window should I use for velocity?

Whatever matches your category dynamics. Trailing seven days for fast-moving consumables, trailing thirty for steady categories, season-adjusted for products with cyclicality. The flow supports a different window per category.

Does this work if I sell through multiple channels?

Yes. Pull velocity from each channel and aggregate to the SKU level. The flow can also report days on hand per channel if merch wants to see where a SKU is selling fastest.

How does it handle new SKUs without enough velocity history?

Optional fallback rule. New SKUs use a category-average velocity for the first N days, then transition to actual once enough history exists.

Can the flow trigger a markdown candidate list?

Yes. When a SKU crosses the slow-mover threshold, the flow can drop a row into a markdown queue with the current cover days and the dollar exposure.

How is this different from a native NetSuite stock report?

NetSuite shows on-hand and historical sales. The flow combines them with your velocity window, your category bands, and your seasonality logic. The output is the call merch needs to make, not the raw numbers.
Catch the slow-mover before it becomes a write-down.
Paste the prompt, point it at your inventory and sales velocity, and let the report run on its own.
Start for free