TR Start free
HomeBlog › Guide

Inventory tracking for online stores: why the number drifts and how to fix it

O Ohana360 Team • September 21, 2026 • 11 min read
Illustration of an order deducting stock quantity beside five products charted against their low-stock levels

Inventory tracking software keeps a running count of how many units of each product you hold, updated by the orders themselves. You enter a quantity on the product card, orders take units off it, returns put them back, and an alert fires once the count reaches a threshold you chose. It all answers one question at any hour: can I sell this today?

A home textiles shop in Leeds answered it out loud for a year: the person who packed the orders tidied the shelves, and the count lived in their head. Then three marketplaces went live, daily orders climbed from five to forty, and the same grey throw sold twice in one afternoon on two channels. One order was cancelled and the missing unit sat on the wrong shelf for a fortnight. (Demo data.)

The count was not wrong. The count was nowhere. What follows is where that number lives in Commerce360, how it stays right on its own, where the low-stock alert lands, and why it drifts.

When does a store actually need stock tracking?

The threshold is not how many products you sell but how many channels sell them and how many people pack them. One channel and one packer run on a number in somebody's head for a long time, until one of these three appears.

How are stock quantity and the low-stock level set up?

Tracking is not a module but two fields on the product card, and typing a number into the first switches it on.

FieldWhat it doesIf left empty
Stock QuantityThe units you hold. Orders take from it, returns add back, never under zero.The product is untracked and no order moves it
Low-stock LevelThe alert threshold. On reaching it the figure turns red and an alert is raised.The threshold counts as zero: the alert arrives only once you are out
Stock labelIn stock or sold out. With tracking on it is derived from the quantity, not picked.You flip it with the button on the record page
SlugThe matching key between store and record: order lines bind to a product through it.The line finds no product and nothing deducts

The chart below lines five products up against their thresholds: the bar is the shelf, the dashed line is where the alert waits, and the gap is what is left before restocking turns urgent.

Ohana360 Products tab showing stock quantity as a bar and the low-stock level as a dashed line for five products

Setting the threshold needs one question rather than a formula: how many days does a restock take, and how many do you sell in those days? Five days at two a day puts the level near ten; a threshold near zero alerts too late.

How does an order take units off the shelf?

Deduction is read from the order lines rather than triggered by hand. Lines are written one per row as slug x quantity, for example linen-sheet x 2. On save each row is parsed, the catalog entry with that exact slug is found, and its quantity comes down.

What happens to the quantity when an order lands The same rule runs on an order you type in and on one that arrives by webhook Order lines 1 Lines are read Each line is parsed as a slug and a quantity, then matched to a product card. match 2 Quantity drops It never falls below zero. At zero the label switches to out of stock on its own. -2 3 Low level reached The quantity is written in red in the list and an alert is raised. alert 4 Returned or cancelled Once the order leaves the path, the same quantity is added straight back. +2 5 Active again The quantity comes off once more, and a second deduction is blocked. -2 The order record marks on itself that it has deducted. However often it moves between cancelled and preparing, the quantity comes off exactly once.

Three details in that rule account for most first-month surprises.

Orders you type in, orders on the store webhook and orders pulled from a marketplace all pass through the same rule; the order side of that pipeline is covered in the multichannel order guide.

Where does the low-stock alert land?

On two channels at once, both pointing at the record. Reaching the threshold writes an org-wide bell notification and sends a push notification to the phone, and tapping either opens that product's record rather than a list. At zero the alert reads out of stock instead.

A quieter trace stays in the Products list, where anything at or below the threshold is printed in bold red, so somebody scanning it sees the situation without the notification.

Careful: the alert is raised for orders created in the app and for orders arriving on the store webhook. The marketplace sync deducts stock but raises no alert on that route, so if most of your volume comes through Trendyol or n11, start the day by sorting the Products list by quantity rather than waiting for a notification.

Why does the number drift?

When the figure on screen disagrees with the shelf, the cause is almost always one of these five. Checking them in order takes minutes.

SymptomLikely causeWhere to look
Order arrived, quantity never movedThe slug on the line is not identical to the catalog oneThe items card on the order: is the product shown as a link
Some products deduct, one does notThat product has an empty Stock Quantity, so it is untrackedThe product record: a dot instead of a number means untracked
Quantity is too highA returned or cancelled order added units backStatus badges in the recent orders card on the product
Quantity is too lowThe same item exists twice under two different slugsSort the Products list by the slug column
Stuck on zeroStock cannot go negative, so the shortfall stayed off screenCount the shelf and correct by hand

The last is the quiet one. Sell five against a shelf holding three and the screen says zero while reality says minus two. That gap never closes on its own, which is why counting stays a habit.

How do you reconcile the shelf with the screen?

Corrections are made one product at a time.

One habit shortens a count: sort the Products list by quantity ascending and save that view, so low and sold-out items sit at the top every time it opens.

Careful: correcting a quantity by hand leaves no movement record. The screen holds the current figure and the recent orders for that product, but no ledger of who adjusted what. When a count turns up a large gap, writing the date and reason into the product note costs less than hunting it a month later.

Where do you report the numbers from?

Two questions, two places. What do I hold now is read off the Products list, sorted by quantity and filtered by the stock label. What did I sell comes from the orders.

The Excel button on the Orders list downloads three sheets: the order rows; the units of each product that went out with its product code, which is the sheet a supplier wants; and those totals again with a unit cost column you fill in and a line total by formula. For the money side of the period, the invoice and payment guide follows that chain.

Careful: the Products (Commerce360) schema in the report builder carries name, number, slug, status, stock label, price, old price and creation date. Stock Quantity and Low-stock Level are not reportable fields. No report or flow condition can be built on the figure itself, only on the stock label reading sold out. To work by number, use the list view rather than a report.

What is not included

Week one: a schedule for setting stock up

DayTaskTime
1List the catalog: which items are held, which arrive to order30 minutes
2Make slugs unique and identical to the store's, merging anything listed twice40 minutes
3Count the shelf and enter Stock Quantity on held items; leave the rest empty1 hour
4Set Low-stock Level: restock days times daily sales. Round upward where you are unsure25 minutes
5Create a test order and cancel it: does the quantity fall, then come back15 minutes
6Sort Products by quantity ascending and save the view so low items stay on top10 minutes
7Download the Excel export and compare its units sold against the shelf20 minutes

Day five is the cheapest insurance on the list: a one-unit order against a real product, created and cancelled, settles in two minutes whether slug matching works. The Leeds shop found three marketplace items with spaces instead of hyphens in their slugs and three more with no quantity at all. Half an hour of fixes, against months of a wrong number.

Frequently asked questions

How do I turn stock tracking on?
Type a number into the Stock Quantity field on the product card and tracking starts there and then. Leave it empty and nothing is counted for that product: you flip the in stock and sold out label by hand with the button on the record page. The Low-stock Level field next to it is the alert threshold, so when the quantity reaches that number the product turns red in the list and an alert is raised. Both fields belong to the Commerce360 Products object. The Products and Price List used by Sales360 and Finance360 is a price catalog with no stock field at all, so a business running both quotes and a shop defines the item in each catalog.
Does stock come back when an order is cancelled or returned?
Yes, on its own. The status path runs New, Preparing, Shipped, Delivered, and Returned and Cancelled sit off that path. As soon as an order moves to either of them, the quantities on its lines go straight back onto the matching products. Move it back to an active status and they come off again. Because the order record marks whether it has already deducted, an order can bounce between cancelled and preparing as often as it likes without double counting in either direction. An order created as returned never deducts in the first place.
An order arrived but the stock did not move. Why?
Check three things in order. The slug first: order lines match the slug on the product card, and the match is exact. A line reading blanket needs a catalog entry of exactly blanket, not throw-blanket. The Stock Quantity field second: if it is empty the product is outside tracking and no order will ever move it. The line format third: one item per line, written as slug x quantity, for example linen-sheet x 2. A line with no quantity counts as one. The items card on the order record links to the product it matched, so a line with no link is a line that matched nothing.
At what quantity does the low-stock alert fire, and where does it land?
You set the threshold yourself: the alert is raised when the quantity reaches the number in the Low-stock Level field or falls under it. It shows up in two places, as an org-wide bell notification and as a push notification on the phone, and tapping it opens that product's record. If the quantity reaches zero the alert reads out of stock instead. There is a visual trace in the Products list as well, where anything at or below the threshold is printed in bold red. Leaving the level empty makes the threshold zero, so the alert only ever arrives once the product is completely gone.
Can I track warehouses, bins, serial numbers or barcodes?
No. Commerce360 keeps a single total: one quantity per product plus one threshold. There is no concept of multiple warehouses, bins or locations, no serial or lot tracking, no barcode scanning for a count and no cost field on the product. Variants are not a field either, so if a colour or a size needs its own stock it becomes its own product card with its own slug. Those limits are deliberate: the app is built as the back office of a shop rather than as warehouse software.

One number, in one place, kept right by the orders

Put the quantity on the product card, pick the threshold, and let the orders do the arithmetic. Hear about a sold-out item before the customer does, and let the shelf and the screen agree on count day.

Read next