Skip to main content
Card class: HeroCategory: Ecommerce Platform
A real-time alert list of any item whose physical on-hand went negative in any warehouse. Negative on-hand signals a posting-sequence error, an oversell, or a sync race, and it corrupts costing.

At a glance

A live list of every item whose physical on-hand quantity has dropped below zero in any warehouse or location, across every legal entity. Negative on-hand is not a stock-level warning, it is a data-integrity alarm: physical inventory cannot truly be less than nothing, so a negative value means an issue transaction posted before its matching receipt, an oversell let a sale post against stock that was not there, or a sync race double-counted an issue. Beyond the operational risk, negative on-hand corrupts inventory costing, because cost-of-goods calculations have no valid quantity to value against.
What it countsEach row is an item whose on-hand quantity is below zero in a specific warehouse / location. The card lists, per row: item, warehouse, legal entity, and the negative quantity. It is a row-per-breach alert list, not a single rolled-up number. An item negative in two warehouses appears as two rows. As soon as a corrective receipt or adjustment lifts on-hand back to zero or above, the row clears.
CurrencyNot applicable to the headline, which is a quantity. The downstream cost impact is monetary, because negative on-hand distorts inventory valuation, but the card itself reports quantities and locations.
Time windowRT (real time, recomputed as inventory transactions post)
Alert triggerany item on-hand < 0. A single item going negative in a single warehouse raises the alert; there is no tolerance band, because negative physical stock is never legitimate.
Rolesowner, operations, engineering

Calculation

Calculated automatically from your Microsoft Dynamics 365 data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A multi-warehouse outdoor-equipment retailer running Business Central across two legal entities, with a Shopify storefront syncing orders in and inventory out. The alert list snapshot is taken at 14:20 on 16 Jun 26 after a busy sale day.
ItemWarehouseLegal entityOn-hand qty
TENT-2P-GRNMAIN-UKUK Outdoor Ltd-12
STOVE-CMP-01MAIN-UKUK Outdoor Ltd-3
JACKET-WP-LEU-NLEU Outdoor BV-8
HEADTORCH-200EU-NLEU Outdoor BV-1
Four things to notice:
  1. Four rows, two warehouses, two legal entities, all live. This is not a forecast or a low-stock warning; every one of these items is physically recorded as below zero right now. The list is the work queue for the operations team to clear before stock-take or month-end.
  2. TENT-2P-GRN at -12 is the worst breach and the most likely oversell. A negative of that size on a popular sale item points at the storefront continuing to sell after physical stock hit zero, with the issue transactions posting against nothing. Pair with OOS with Open Sales Order Demand to see the open orders piling up behind it.
  3. The single-unit breaches are usually posting-sequence errors, not oversells. HEADTORCH-200 at -1 is the signature of a sales shipment posting before its purchase receipt or transfer receipt landed. These clear themselves the moment the receipt posts, but until then they distort costing on every transaction that touches the item.
  4. Negative on-hand corrupts costing immediately. Average-cost and FIFO valuations have no valid quantity to apply a unit cost to, so cost-of-goods on these items is unreliable until the quantity is corrected. That is why the card is an alarm, not a metric: the longer a row sits, the more downstream postings inherit a bad cost.

Sibling cards merchants should reference together

Negative on-hand is usually a symptom of a sync or sequencing problem. These siblings show the cause and the blast radius.
CardWhy pair it with Inventory On-Hand Went Negative
ERP vs Ecom Inventory VarianceThe variance that lets oversells happen. When ERP and ecom disagree on stock, the storefront sells what the warehouse does not have.
SKUs with D365 vs Ecom Inventory Drift > 5The item-level drift list. SKUs drifting hardest are the ones most likely to go negative next.
Inventory Sync DriftThe sync-health view. A negative-on-hand spike usually coincides with a sync drift event.
Inventory Value by WarehouseThe valuation context. Negative on-hand corrupts the value figure for the affected warehouse.
Batch Job Error Queue (24h)The posting-failure context. A failed receipt-posting batch is a classic cause of negative on-hand.
OOS with Open Sales Order DemandThe demand backlog behind an oversold item. Shows how many open orders are stacked against negative stock.

Reconciling against Microsoft Dynamics 365

Where to look in Business Central / Finance & Operations:
Business Central: Item Availability by Location (negative quantities show in red against the affected location) Business Central: Item Ledger Entries (filter to the item to trace the issue transaction that posted before its receipt) Business Central: Inventory Setup (check whether “Prevent Negative Inventory” is enabled; if not, oversells can post) Finance & Operations: Inventory management > Inquiries > On-hand list (filter on-hand below zero by site and warehouse) Finance & Operations: Inventory management > Periodic > Closing and adjustment (negative on-hand blocks a clean inventory close)
To verify a single row, open Item Availability by Location (or the F&O on-hand list) for the named item and warehouse; the negative quantity should match the card. Then drill into the Item Ledger Entries to find the sequence: a negative on-hand is almost always an issue transaction (a sales shipment or transfer) timestamped before the receipt that should have preceded it. The fix is to post the missing receipt or an inventory adjustment, after which both the native screen and the card return to zero or positive. Why our number may legitimately differ:
ReasonDirectionWhy
Snapshot timingEitherThe card is real time. A native on-hand screen refreshed at a different moment, or before a corrective receipt posted, will show a different set of rows.
Location vs warehouse granularityEitherThe card reports at warehouse / location level. A native view rolled up to the item level can mask a negative in one bin that nets out across the whole item.
Reservations vs physical on-handCard focuses on physicalThe card watches physical on-hand, not available-to-promise. A native availability screen that subtracts reservations can show a different, more negative figure.
Prevent-negative settingEitherIf “Prevent Negative Inventory” is on, postings that would go negative are blocked, so genuine breaches are rarer and usually trace to adjustments or transfers rather than sales.
Sync lagCard up to 15 min behindA corrective receipt posted in the last few minutes may not yet have cleared the row on the card.
Negative on-hand is frequently a cross-connector failure: the storefront sold stock the warehouse did not have because the inventory feed back to the commerce platform lagged. Pair this card with the commerce platform’s inventory and the ERP-vs-ecom variance cards to confirm whether the breach originated from an oversell on the storefront or a posting-sequence error inside D365.

Known limitations / merchant FAQs

Why is negative on-hand a data-integrity alarm rather than a stock warning? Because physical inventory cannot genuinely be less than zero. A negative value means a transaction posted out of sequence (an issue before its receipt), an oversell let a sale post against absent stock, or a sync race double-counted an issue. It is a defect in the data, not just a low-stock condition. How does it corrupt costing? Average-cost and FIFO valuation methods need a valid on-hand quantity to apply a unit cost to. When the quantity is negative, cost-of-goods on that item becomes unreliable, and every subsequent posting that touches the item can inherit a distorted cost until the quantity is corrected. What is the most common cause? Two stand out. Single-unit negatives are usually posting-sequence errors, a sales shipment or transfer posting before its receipt. Larger negatives are usually oversells, where the storefront kept selling after physical stock hit zero because the inventory feed lagged. How do I clear a row? Post the missing receipt, transfer receipt, or inventory adjustment that brings on-hand back to zero or above. The row clears automatically on the next refresh once the underlying quantity is no longer negative. Can I prevent negatives entirely? Business Central’s “Prevent Negative Inventory” setting blocks postings that would drive on-hand below zero. It stops oversell-driven negatives at the cost of blocking the posting, which some operations prefer and others find too rigid. The card still catches negatives from adjustments and transfers even when the setting is on. Does it cover every warehouse and legal entity? Yes. The card scans on-hand across all warehouses and locations in every connected legal entity, which is why the title says “any Warehouse”. A breach anywhere raises a row. Why is engineering one of the roles? Because many negatives originate in the integration: a sync race or a lagging inventory feed is an engineering fix, not an operations one. Operations clears the rows; engineering stops them recurring. What is the freshness on this card? It is real time, recomputed as inventory transactions post, with a short cache typically under 15 minutes on the read side. Corrective postings clear rows quickly, which is what you want from an alarm.

Tracked live in Vortex IQ Nerve Centre

Inventory On-Hand Went Negative (any Warehouse) is one of hundreds of KPI pulses Vortex IQ tracks across Microsoft Dynamics 365 and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.