Socialone Logo

Inventory Management

Socialone tracks inventory per location. Each product at each location has its own inventory record with on-hand quantity, reservations, safety stock, and an append-only ledger of every movement. The routing engine uses available-to-sell (ATS) to pick the right location for each order.

Key Quantities

FieldMeaning
On-handPhysical units at the location right now
ReservedUnits held by active orders that have not yet been fulfilled. These cannot be sold to other customers.
Safety stockBuffer units not counted toward sellable. Use to avoid selling your last unit before a restock arrives.
Available to sell (ATS)On-hand minus Reserved minus Safety Stock. This is what the routing engine and checkout check.

ATS formula

ATS = On-hand − Reserved − Safety Stock

ATS is always floored at zero — it cannot go negative in the routing check even if reservations exceed on-hand.

Infinite Stock

Mark an inventory record as Infinite to remove all stock checks for that product at that location. Infinite items skip the ATS filter in routing and always pass the stock check at checkout. Use this for digital products, services, or made-to-order items with no physical stock constraint.

A product with stock_quantity = null set at the product level (not per-location) is also treated as unlimited and skips ATS checks entirely.

Reorder Point

Set a reorder point (minimum on-hand level) on any inventory record. When on-hand falls below this threshold after an order is dispatched, Socialone triggers a low-stock alert to staff. Leave blank for no alert.

Reorder points are per-location. The same product can have different reorder thresholds at different locations.

Inventory Ledger

Every inventory movement is recorded as an append-only ledger entry. Entries are never deleted or edited — corrections are made by creating a new entry. Each entry records the type of movement, the quantity change (positive for in, negative for out), the balance after the entry, the acting user, and an optional note.

Ledger entry types:

  • Sale / Dispatch — deducted when an order is fulfilled
  • Return Restock — restocked when a return is processed
  • Purchase Receipt — added when stock arrives
  • Manual Adjustment — staff correction
  • Transfer In / Transfer Out — stock moved between locations
  • Recount — set to physical count result
  • Correction — post-audit correction entry

Attachments (invoices, delivery notes, photos) can be added to any ledger entry for audit purposes.

Stock Transfers

A stock transfer moves inventory from one location to another. Creating a transfer generates a Transfer Out entry at the source location and a Transfer In entry at the destination location simultaneously.

  1. Go to Inventory → Stock Transfers.
  2. Select the source location, destination location, and the products and quantities to transfer.
  3. Add a reference note (e.g. delivery note number).
  4. Confirm. Both locations update immediately.

Stocktake Sessions

A stocktake is a physical count of inventory at one location. Create a stocktake session to record the actual quantities on the shelf, compare them to what Socialone expects, and resolve any variances.

  1. Go to Inventory → Stocktake and start a new session for the location.
  2. Count each product and enter the physical quantity. Items you do not count are excluded from the session — you do not need to count your entire catalog at once.
  3. Review the variance report — lines where the counted quantity differs from the expected on-hand.
  4. Approve variances to apply them. Each approved variance writes a Recount ledger entry and updates on-hand to the counted quantity.

Sessions stay open until all variances are resolved. You can pause and resume a session across multiple shifts.

Advanced Inventory (UoM & Shared Pool)

For bulk or commodity products sold in variable quantities (by weight, volume, or case count), see Advanced Inventory for unit-of-measure (UoM) factors, slab pricing, shared pool inventory, and minimum order quantities.

Common Blockers

  • Product shows out of stock but on-hand is positive: check ATS — safety stock or reservations from other orders may be consuming the available quantity. Also check the product's availability flag; if set to out_of_stock the product is blocked regardless of inventory count.
  • Reorder alert not triggering: alerts fire after a dispatch reduces on-hand below the reorder point. Check that the reorder point is set at the correct location (alerts are per-location).
  • Stocktake variance not applying: ensure all variances in the session are approved, not just reviewed. Unapproved variances do not change on-hand.
  • Transfer not reflecting immediately: stock transfers apply instantly. If numbers look wrong, check the ledger to confirm the transfer entries were created and look for any subsequent adjustments.

Related Docs

Related product

Commerce & Orders for WhatsApp selling

Manage WhatsApp catalogs, products, variants, bulk imports, product messages, carts, payments, and order follow-up from one Socialone workspace.

View product →