Selling When Out of Stock (Negative Stock)

5 min read

Published July 11, 2026

Updated August 4, 2026

What Negative Stock Does

Sometimes a customer wants an item that shows 0 in stock, and you can still get them the physical piece immediately. With Allow Negative Stock enabled, the sale goes through and the stock count goes below zero (-1, -2, -3…). Fixmo writes one pending record per oversold piece so nothing is forgotten, and covers those records automatically when stock arrives.

Note

This feature is available on all plans. It applies to POS sales, repair part usage, and invoices, online store orders always require real stock.

Enabling the Setting

Negative stock is a shop-wide setting, off by default.

  1. Open Settings → Inventory.
  2. Find the Negative Stock section and switch it on.
  3. From now on, out-of-stock items can be added to the POS cart, the product card shows the real number (e.g. -3) instead of blocking the sale.

How Covering Works, Fully Automatic

Example: Tempered Glass shows 0 and you sell 3, stock reads -3 and three pending records appear on the item's edit page (with the sale code, seller, and date). Later a purchase order brings 10 pieces: stock becomes 7, the three records are covered automatically (oldest first), and you get a notification. There is no confirmation step.

  • Stock arriving via purchase orders and manual restocks both cover pending records.
  • Partial deliveries cover partially: at -3, receiving 2 leaves 1 pending.
  • The inventory list shows a red negative count and an 'owed' badge while records are pending.

Serial-Tracked Items Are Sold by Their Serial

Serial-tracked items work differently from ordinary stock: you sell a specific physical unit by selecting its serial number, so the number of in-stock serials always matches the stock count and the quantity never goes negative. In the POS you pick the unit's serial from the list of in-stock serials for that item.

  • To sell a serial-tracked item, pick one in-stock serial per unit in the POS cart.
  • If a serial-tracked item is out of stock, the POS tells you clearly, "this item is serial-tracked and out of stock; receive units (with their serial numbers) before selling it", instead of a confusing 'max stock' message.
  • Receive the units first (Restock, entering each serial), then sell them by serial as usual.

Note

Selling a serial-tracked item past its current stock isn't available from the POS today, receive the unit (with its serial) first. Covering an already-sold serial when matching stock later arrives is handled automatically on the item's edit page.

Voids, Refunds & Corrections

Reversals keep the books straight automatically:

  • Voiding an oversold sale clears its pending records, the void's stock restore already fixes the numbers.
  • Refunds with Restock settle the returned pieces' records; Defective / No-Restock refunds keep them (the stock gap still exists).
  • Removing an oversold part from a repair clears its records without inventing stock.
  • Typing a stock quantity directly in the edit page warns you first, then resolves pending quantity records as manually covered.

Profit Reporting

Oversold pieces use the item's cost price at the moment of sale, every sale line now stores a cost snapshot, so past profit reports no longer shift when a later purchase order changes the item's average cost. Entering the real cost you paid for an oversold piece is planned for a future update.

Frequently asked questions

Admins, Managers, and Cashiers, anyone who can make sales. Technicians cannot make sales, but they can use parts below zero on repair jobs, so a repair is never blocked mid-job. Online store orders (Website Sync) never oversell, regardless of the setting.

No, covering is fully automatic. When stock arrives via a purchase order or a manual restock, the oversold records are covered instantly (oldest first) and you receive a notification. There is nothing to click.

A serial-tracked item's quantity never goes below zero. To oversell one, you must type the serial number of the piece at sale time. The product page then shows it as 'owed'. It is covered only when a stock entry arrives carrying that exact serial, Fixmo recognizes it as the already-sold piece, does not add it as new stock, and clears the owed record.

The record stays pending. An admin can cover it manually by restocking quantity 1 with that exact serial number from the item's restock action, the quantity is not changed (the piece was already sold), and the record clears.

Voiding the sale, or refunding with Restock, clears the pending records automatically, the stock restore handles the numbers. A refund marked Defective or No Restock keeps the records, because the gap in stock still exists and the next delivery covers it.

Combos: yes, the shortage is tracked on the component item, and it covers when component stock arrives. If a combo contains a serial-tracked component that is out of stock, the sale is blocked (combos cannot collect component serials). Invoices: plain items can oversell; serial-tracked items cannot be oversold on invoices.

Yes. Setting the quantity by hand in the item's edit page skips the normal covering step, so Fixmo warns you first. If you continue, pending quantity records are resolved as manually covered. Serialized owed records are not affected, only a matching serial or a reversal settles those.

Yes. Every sale line stores a snapshot of the item's cost at the moment of sale, so profit reports stay frozen in history even if the item's cost changes later (for example, after a purchase order updates the average cost).