POS User Guide Docs

Batches & expiry

Some products — medicines, food, cosmetics — come in batches that expire. POS can track stock by batch, with a manufacture date and an expiry date for each one, so you always sell the oldest stock first and never accidentally sell something that's out of date.

Best forPharmacies, supermarkets, food shops.
Turn on per productVia the product's Inventory tab.
Where to find itOpen Inventory → Batches & expiry.

Overview

A batch (sometimes called a lot) is a quantity of the same product that was made together and shares an expiry date. When a product has batch tracking turned on, POS doesn't just count "20 boxes" — it knows you have, say, 12 from one batch that expires in March and 8 from another that expires in August.

You switch batch tracking on per product (it's a toggle on the product's Inventory tab, and it's on automatically for pharmacy products). After that, every delivery you receive asks for the batch number and dates, and the system takes care of the rest.

The Batches and expiry screen with Live, Soon and Expired tabs
The Batches & expiry list, with tabs that group stock by how close it is to its expiry date.

The Live, Soon and Expired tabs

The Batches & expiry screen sorts your batches into tabs so you can act on the urgent ones first:

TabWhat's in it
LiveBatches with plenty of time left before they expire.
SoonBatches expiring within your warning window — sell or move these first.
ExpiredBatches that are past their expiry date and should be pulled from sale.

You can export the list to CSV or Excel from this screen for stocktakes or supplier returns.

Why it's useful

  • Nothing goes to waste unnoticed. The Soon tab flags stock before it expires, giving you time to sell, discount or move it.
  • The right stock sells first. Checkout always suggests the soonest-to-expire batch, so older stock clears before newer stock.
  • You stay compliant. For pharmacies and food shops, selling expired stock can be illegal — POS can block it for you.
  • Every batch keeps its own price and cost. If the same product arrives at a different price next month, that's recorded against the new batch.

Selling oldest-first (FEFO)

POS follows FEFO — "first expiry, first out." That simply means the batch with the soonest expiry date is the one offered for sale first, even if it arrived later than another. This keeps your shelves fresh and cuts waste, without the cashier having to remember which box came in when.

Selling a batched product at the counter

  1. Add the product as usual

    Scan or tap the product on the POS screen. Because it's batch-tracked, a small batch picker opens instead of dropping straight into the cart.

  2. Take the suggested batch

    The picker lists the available batches, with the soonest-to-expire one already highlighted at the top. In most cases you just confirm it.

  3. Or choose a different batch

    If the customer needs a specific batch (or you're clearing a particular one), pick it from the list instead. The chosen batch is recorded against that line on the receipt.

  4. Finish the sale

    Take payment as normal. POS reduces the count of the exact batch you sold, so the next sale sees the right remaining quantities.

Blocking the sale of expired stock

In Settings you can turn on an option that stops expired batches being sold. With it on, the checkout batch picker dims and disables any expired batch, so a cashier can't pick it by accident. If a genuine exception is needed, a manager with the special "sell expired" permission can override on a case-by-case basis — and that override is recorded. See Settings to switch this on.

It all happens at receiving

Once batch tracking is on, the only thing you do differently is enter a batch number and expiry date when a delivery arrives. Everything after that — picking, warnings, blocking — is automatic.

Tips & best practices

  • Enter expiry dates carefully when receiving. The dates you type are what drives the Soon/Expired tabs and the block — a wrong date undermines all of it.
  • Check the Soon tab weekly. Catching items a few weeks early gives you room to discount and sell through.
  • Trust the suggested batch. Unless a customer asks otherwise, taking the highlighted batch keeps your stock rotating correctly.
  • Turn on the expired-sale block if you handle medicines or food — it removes the risk of human error entirely.

Notes & warnings

Turn batch tracking on before you receive stock. Stock received while tracking was off won't be split into batches — only deliveries taken in with tracking on get batch and expiry information.

An expired batch still counts as stock until you remove it. Pull it physically and adjust it out so your counts match the shelf.


Related: Products · Settings · Stock overview · Stock adjustments