Stock Nearing Expiry
See which lots are about to expire or already have, open a lot's history, and return expiring stock to its supplier with the supplier already filled in.
Stock nearing expiry is the owner list of lots (batches) that are past their date or will be soon. From each row you can open the lot's history or start a return to the supplier. It only has something to show for items you track by lot with an expiry date; see Set up lot tracking.
Read this first
- Owner only. A store admin who opens the address sees Access Restricted and the line Your role does not have permission to access this page. Please contact the Store Super Admin.
- A lot expires on its expiry date: on that day the row reads Expires today, the chip reads Expired. Not for sale. and the counter stops selling it.
- Lots with nothing left on hand, and lots with no expiry date, never appear here.
Open the list
Screen: classic sidebar Purchasing → Stock nearing expiry; new sidebar, the Purchasing
group, Stock nearing expiry; or Counter devices → Settings → Buying & stock → Stock nearing
expiry; or /settings/pos/lots/expiry. The title is Stock nearing expiry and the line under it
reads Lots that are past their date or will be soon. Lots with nothing left are not listed.
Filter and sort
| Control | What it does |
|---|---|
| Show lots | Already expired, Expiring within 7 days, 15, 30 or 60 days, or Another number of days. It starts at 30 days. A window includes lots that have already expired. |
| Number of days | Appears with Another number of days (starts at 90). Enter a whole number from 1 to 730, or the page says Enter a whole number from 1 to 730. |
| Place | Appears only when your lots sit in named places (shops or warehouses). All places or one place. |
| Find an item or lot number | Narrows the list to rows whose item name or lot number contains what you type. |
| Order | Expiring soonest first (the default), Expiring latest first or Item name. |
Under the filters the page shows Lots shown: N. If nothing matches it says No lots match. Change the days or the place to see more.
If the store has more than 2,000 lots the page loads only the first 2,000 and warns Only the first 2,000 lots were loaded, so some lots may be missing from this list. Narrow the filters or use a place filter.
Read a row
Each row shows the item name; Lot (number) or No lot number, with the place; Expires (date) followed by how long is left; and on the right a state chip and the quantity.
| You see | Meaning |
|---|---|
| Expires today | The expiry date is today. The lot is already off sale. |
| 1 day left / N days left | Whole calendar days until the expiry date. |
| Expired yesterday / Expired N days ago | Past the date. |
| Chip Expired. Not for sale. | Expiry date is today or earlier. |
| Chip Some stock held out of sale | Not yet expired, but part of the lot is held (for example an owner held it). |
| Chip Saleable | In date and not held. |
| N on hand | Quantity you can still sell from the lot. |
| N held out of sale | Quantity held back (shown only when there is some). |
Days are counted on the calendar of the lot's own time zone, not your device's.
Act on a lot
- Open lot opens the lot's history page (
/settings/pos/lots/and the lot ID), where the owner can hold, dispose of, or remove expired stock. See Lot history. Each history row shows the event name (Received, Opening count, Sold, Returned to supplier, Return undone, Counted, Used in recipe, Wasted and others), a date and time, and the quantity with a + or - sign where the direction is known; that page explains each event name. - Return to supplier opens Send goods back to a supplier with the item, the shop, the lot and the quantity filled in (the usable quantity, or the held quantity when none is usable), and the reason set to Expired. When the lot was created by a supplier delivery you recorded, that delivery's supplier is already chosen. Lots from an opening count have no known supplier, so choose one yourself. Enter the price and select Send back.
Why does the counter say the batch is out of stock?
An item you track by lot is refused at the counter when no lot that can be sold has enough left. The cashier sees one of two sentences, depending on whether any usable stock remains:
- Not enough usable stock in batches. Check batch stock. when there is none.
- Only N usable in stock batches. Check batch stock. when some is left; N is how many units are usable across the lots.
Where the cashier sees it. It shows as an alert on the counter as soon as the cashier adds the item or raises its quantity (tile tap, Search or scan, barcode scan or the bill on a phone), and again when the cashier selects Charge, on the UPI or split-payment collection sheet (with no retry button; use Back to bill), and on the restaurant counter when an item is added to a table, sent to the kitchen or settled. The bill is kept and nothing is recorded as paid. Unlike the ordinary out-of-stock refusal, it never mentions Keep selling when out of stock, and turning that switch on does not clear it: a lot you cannot sell cannot be sold past zero.
What the cashier does. Lower the quantity to N or less, or remove the item, then charge again. If the customer has already paid outside the POS, follow the recovery steps in Counter Billing & Tenders.
What the owner checks. Only stock in a lot that is in date and not held counts as usable.
Open Stock nearing expiry
Open Purchasing → Stock nearing expiry (see Open the list) and set Show lots to Already expired. A lot with the chip Expired. Not for sale. stopped being sellable on its expiry date.
Look for held stock
Clear the filter and find the item. A row with Some stock held out of sale has part of its lot held back, and the line N held out of sale shows how much. Select Open lot to read the lot's status and history (see Lot history).
Check for lots with no expiry or an unknown lot
Stock counted as Quantity with unknown lot stays held out of sale, and a lot with no expiry date is not offered for sale. This list never shows lots without an expiry date, so they will not appear in the steps above. If the item's stock was counted that way, see Set up lot tracking.
Receive fresh stock
If every lot is sold, expired or held, record the new delivery (see Receive stock and move it between shops). Check that the new lot shows the chip Saleable in this list, then ask the cashier to charge the bill again.
Troubleshooting
| Question | Answer |
|---|---|
| Why don't I see a lot I expect? | It has no expiry date, it is sold out, or it is outside the window or place you picked (the window defaults to 30 days). Lot tracking for the item or store may also be off. Widen Show lots, or set Place to All places. |
| Why is a lot that expires today under Already expired? | The expiry date counts as expired. The server stops selling it that day. |
| Why is Place missing? | Your lots are not tied to named places, so there is nothing to filter. |
| Why does Return to supplier open with no supplier chosen? | The lot did not come from a delivery you recorded (for example it was counted when you opened lots). Choose the supplier on the return page. |
| The counter says Not enough usable stock in batches but the shelf has the item | The shelf stock is in lots that are expired, held out of sale, have no expiry date, or were counted as an unknown lot. See Why does the counter say the batch is out of stock?. |
| Why can't my store admin see this page? | It is owner only. The classic and new sidebars hide the Purchasing menu from every other login. |
| I don't see Purchasing in the sidebar. | See Find the Purchasing menu. |