Inventory that knows what’s expiring.
ShelfBot captures expiry dates by batch from a WhatsApp photo, so grocery teams can keep shelves fresh, reduce shrink and improve margins, without added manual work.
| Product | Remaining | Expiry | Days left | Status |
|---|---|---|---|---|
| Tuzo Milk 500ml | 24 of 24 | 12 Nov 2026 | -1 | Expired |
| Brookside Yogurt 250ml | 30 of 30 | 13 Nov 2026 | 0 | Critical |
| Tuzo Milk 500ml | 60 of 60 | 14 Nov 2026 | 1 | Critical |
| Supa Loaf White 400g | 40 of 40 | 15 Nov 2026 | 2 | At Risk |
| Brookside Yogurt 250ml | 48 of 48 | 16 Nov 2026 | 3 | At Risk |
| Blue Band 250g | 200 of 200 | 13 Dec 2026 | 30 | Healthy |
Your POS knows the SKU. It doesn’t know the expiry date.
A barcode identifies the product, but not the batch or its date. So expiry checks stay manual: shelf walks, clipboards, and write-offs that surface after the margin is already gone.
ShelfBot closes that gap.
Expiration data capture in three steps. No new hardware.
- 01Scan the barcode by photo.ShelfBot identifies the SKU.6 161101 600014Photo: barcodeTuzo Milk 500ml. Now the expiry date.
- 02Photograph the expiry date.ShelfBot reads it and the stock clerk confirms.BEST BEFORE14 NOV 2026Photo: expiry dateRead 14 Nov 2026. Reply YES to confirm.YES
- 03Enter the quantity.The batch is logged and tracked from receiving to sale.How many units?60Logged: 60 × Tuzo Milk 500ml, expires 14 Nov 2026.
Staff use the WhatsApp they already have. No app rollout and no handheld scanners.
What you get
Expiration Data Capture
Turn the printed date on the pack into live data your team can act on, captured at receiving or shelf-loading.
Batch-Level Inventory
See stock by expiry date, not just by SKU. Know what is expiring when, and which batch sells first.
Targeted Markdowns
Apply markdowns to specific expiration-date batches instead of the entire SKU. Only discount what is at risk, not the fresh stock behind it.
Early Alerts
At-risk batches are flagged on WhatsApp before they become shrink, so the store acts while there is still margin to protect.
See the shrink before it happens.
Projected unsold at expiry
Which batches won’t sell through in time, with the action: mark down or transfer.
Expiry loss
What expiry cost, by category, at selling price.
Supplier freshness scorecard
Which suppliers deliver stock already short-dated, with the evidence for returns and credit claims.
Inter-branch transfers
Move stock to the branch with faster sell-through.
Why ShelfBot
- Reduce shrink.Catch dates early and sell more of what you receive.
- Protect margins.Discount only the batches at risk, not the whole SKU.
- Cut manual checks.Capture expiry from a photo instead of a shelf-walk and a clipboard.
- Decide with data.Know what will go unsold, where it is, and what to do about it.
- Hold suppliers to account.Short-dated deliveries are recorded batch by batch.
Priced per store. The more stores, the lower the rate.
Full product in every store. One-time setup per store. Pilot pricing on request.
Ready to cut expiry shrink?
See ShelfBot run on your shelves in a short demo.

