Every product stock level has a sweet spot that suits your practice β the quantity you want to keep on the shelf so morning consults never grind to a halt because somebody used the last of the metacam. Lupa lets you set that sweet spot once per product, then quietly watches your stock and tells you what to reorder. Suggested Orders turns Friday afternoon's "what do we need this week?" question into a two-minute review.
π‘ In short: Set a minimum and an optimal stock level on each product (in the Stock Control card on the product form). Then click Suggested Orders in the Inventory toolbar β Lupa lists every product that has dipped to or below its minimum, with a quantity calculated to bring it back up to the optimal. One click adds the lot to your wholesale basket.
Why It Matters
β οΈ Let the levels and Suggested Orders find what's low β don't walk the shelves with a clipboard. Practices that try to spot low stock by eye end up with surprise stockouts on the days they're busiest. Once minimum and optimal are set on a product, Lupa watches every dispense, transfer, and stock take in real time and surfaces it the moment it crosses the line.
Benefit | Why it matters in the practice |
Consistent ordering across staff | The minimum and optimal are set once at the product level, so it doesn't matter who runs ordering this week β everyone sees the same suggested list. |
Right-sized orders, not panic orders | Suggested quantities aim for your optimal, not for "as much as fits in the cupboard". Capital stays on the balance sheet, not in the dispensary. |
Visible stock health | The colour-coded bar in the Stock column tells you at a glance what's healthy, what's tight, and what's critical β driven by the same minimum and optimal you set here. |
How Reorder Levels Work
Each product gets two numbers, both entered in the ordering unit for that product (the unit you stock and buy in β vials, boxes, bottles, packs).
Level | What it means | Example |
Minimum Stock Level | The line that, once crossed, makes the product eligible for Suggested Orders. Stock at or below the minimum turns the Stock bar red. | 10 vials β flag for reorder when 10 or fewer are left. |
Optimal Stock Level | The target you want to bring stock back up to. Suggested Orders aims to refill to this number β the suggested quantity is optimal minus current. | 50 vials β order enough to land back at 50. |
π‘ Levels are set per product, across all locations β not per location. If a product sits in three places (Main Store, Dispensary, Fridge) the minimum and optimal apply to the total across all three. For a per-location view of where the stock actually lives, see .
The Stock column in the Inventory list uses these two numbers to render a coloured bar. For a full read of the bar (red, orange, green, what each colour means at a glance), see β this article focuses on setting the levels and acting on them via Suggested Orders.
Step 1: Set Minimum and Optimal on Each Product
Levels live on the product form. You don't need to think about them every time you order β set once, review quarterly.
Go to Apps β Inventory
Click the product name to open it for editing
Make sure the Stock Control Enabled toggle is on (top of the Stock Control card)
Enter a value for Minimum Stock Level and Optimal Stock Level
Click Save
π Both levels are required for the feature to do anything. If a product has only a minimum set (or only an optimal), it won't show a stock bar and it won't appear in Suggested Orders. Set both, even if you're not sure of the exact numbers β guidance for picking them is below.
π‘ The values you type are in the ordering unit Lupa shows next to the Optimal field β that's the unit you buy in, not necessarily the unit you dispense in. For a vial of injectable that you dispense by the millilitre, levels are still set in vials.
For a full walk-through of the product form (variations, pricing, supplier links, batch tracking), see .
Step 2: Open Suggested Orders
Once levels are set, you don't need to remember to check anything β Lupa keeps a running list.
Go to Apps β Inventory (the Stock tab)
Click Suggested Orders in the toolbar
The Suggested Orders button is always visible in the toolbar. If no products are currently below their minimum, the button is greyed out β hover it to see the message confirming nothing needs ordering right now.
When the button is active, click it to open the dialog. It lists every product currently sitting at or below its minimum, ready to review.
Step 3: Review and Adjust
Each row shows what Lupa thinks you should order. The numbers come from one simple calculation β suggested quantity = optimal β current β converted to whole ordering units (always rounded up so you don't fall short).
You can change anything before sending it to the basket.
Action | How |
Adjust the quantity for a row | Click into the Quantity input and type a new number, or use the β / + buttons. Hover the info icon to see the current quantity and the optimal Lupa is targeting. |
Remove a product from the suggestion | Click the trash icon at the end of the row. The product stays in your catalogue β you've just decided not to order it this time. |
See the running cost | The Total Purchase Price column at the right of each row updates as you change quantities, so you can keep an eye on the total spend. |
Open the product itself | Click the product description to jump to its edit page in a new tab β useful if you want to tweak the optimal level instead of the suggested order. |
See products you cannot order here | Controlled drugs and out-of-stock supplier items appear as greyed-out rows at the bottom of the list β they will never be added to the basket. Click Show N unavailable products to expand them and see the reason against each one. Click Hide N unavailable products to collapse them again. |
Step 4: Add to Basket
When you're happy with the list, click Add N to Basket in the bottom right β the number reflects how many orderable products will be sent. Everything you didn't remove goes straight into your wholesale ordering basket, grouped by supplier. Greyed-out unavailable rows are never included, regardless of whether you have expanded them.
From there, ordering follows the normal flow β open the Basket tab, review per-supplier sub-baskets, and submit. For the rest of the wholesale ordering workflow (basket review, supplier sub-tabs, submitting orders), see .
π‘ Adding to the basket is a queue, not a submit. Nothing leaves the practice until you actively submit the basket from the Basket tab. You can run Suggested Orders, send everything to the basket, then add a few more items by hand before submitting β it all merges in.
What Gets Included β and What Doesn't
Suggested Orders is deliberately strict about which products it suggests. If something you expected isn't on the list, one of these rules is the reason.
A product appears in Suggested Orders when⦠| Why |
Stock Control is enabled on the product | If stock isn't tracked, Lupa has no live quantity to compare against the minimum. |
Both Minimum and Optimal Stock Level are set | Without both, Lupa can't decide whether the product is low or how much to suggest. |
The product is linked to an integrated supplier | Suggested Orders builds a basket for electronic ordering β items from custom (non-integrated) suppliers can't go through that flow. |
The product is not archived | Archived products are out of active use and shouldn't be reordered. |
Current stock has dropped to or below the minimum | Anything above the minimum is, by your own definition, in the safe zone β Lupa leaves it alone. |
The supplier item is in stock with the wholesaler and not a controlled drug that needs special handling | Controlled drugs and out-of-stock supplier items appear in the dialog as greyed-out rows so you can see what is low but cannot be ordered here β they are never added to the basket. Expand them with the Show N unavailable products toggle to see the reason against each one. |
The product isn't already on the way | If the item is already in your basket, or already on a Requested or Pending purchase order in the last 30 days, it won't appear again β Lupa assumes that order will land soon and refill the shelf. |
β The 30-day "already on the way" rule is what stops Suggested Orders from double-ordering. If a product looks low but is missing from the list, check the Orders tab first β there's a good chance it's on a recent Requested or Pending order that hasn't arrived yet. Once that order is processed (received), the product's quantity will jump back up and the cycle resumes naturally.
Tips for Choosing Good Levels
The single biggest thing that makes Suggested Orders accurate is** current minimum and optimal levels**. Some scaffolding for picking sensible numbers:
Factor | How it should shape your levels |
Daily usage | High-throughput products (everyday antibiotics, common analgesics, NSAIDs) need a higher minimum so the buffer covers a busy day plus delivery time. |
Delivery lead time | If a wholesaler usually delivers in 1β2 days, your minimum needs to cover at least that many days of typical usage, plus a margin. |
Shelf life | Short-expiry products (some vaccines, biologics) shouldn't be overstocked β keep the optimal lower so you're not throwing stock away. |
Cost | For expensive specialist medications, a lower optimal keeps costs down; for cheap consumables (gloves, syringes), bulk ordering and a higher optimal is more efficient. |
Seasonal swings | Flea treatments climb in summer, kennel-cough vaccines in autumn, respiratory medications in winter. Schedule a quarterly level review rather than re-tuning ad hoc. |
Clinical criticality | Emergency drugs, anaesthetics, rescue medications β set a deliberately generous minimum. Running out of these is clinically unacceptable, not just inconvenient. |
β Habits from practices that run Lupa well:
Set both levels on every stock-controlled product β half-set products silently drop out of Suggested Orders
Run Suggested Orders weekly, not when you "remember" β make it part of one person's diary
Review your levels once a quarter, with the seasonal calendar open
Set the minimum to "enough for the busiest realistic day plus your typical lead time", not the average day
Set the optimal to "comfortable for two cycles of ordering", so a single missed week isn't catastrophic
Lift the minimum on emergency medications β you'd rather over-order an EpiPen than under-order one
Trim the optimal on short-expiry stock β the goal is to never throw any away
Troubleshooting
Problem | Solution |
The Suggested Orders button is greyed out | Either every stock-controlled product is above its minimum (good news), or no products have both minimum and optimal set. Open the Inventory list and look for products with no stock bar β those are the ones missing levels. Set them, and they will start showing up when stock dips. |
I expected a product to appear and it didn't | Run through the eligibility rules in the table above. The most common reasons in order: only the minimum is set (not the optimal), the supplier is a custom (non-integrated) one, the product is already in the basket, or there's a Requested/Pending purchase order from the last 30 days for the same item. |
The suggested quantity looks too high | The formula is optimal β current. Either the optimal is set higher than it should be for your usage, or the current quantity is wrong (a delivery may have arrived but not been processed yet β see ). Adjust the quantity inline before adding to the basket, then revisit the optimal level afterwards. |
The suggested quantity looks too low | The optimal probably needs raising β open the product, increase the optimal level, save, and reopen Suggested Orders. The formula recalculates immediately. |
The bar is permanently red even though we order regularly | Either your minimum is set higher than your typical "after delivery" stock level, or you're not ordering enough to clear the minimum each cycle. Lower the minimum to a more realistic threshold, or raise the optimal so each suggested order brings stock comfortably above the minimum. |
A custom-supplier product isn't showing | Suggested Orders only builds baskets for integrated wholesalers (NVS, MWI, Covetrus). For products from custom suppliers, raise the order through Lupa and then in the desired supplier portal. Once received into the practice, receive as normal through the orders tab. |
Frequently Asked Questions
Can I set different reorder levels per location (e.g. higher minimum at the main store)?
Can I set different reorder levels per location (e.g. higher minimum at the main store)?
No β minimum and optimal are set per product, applied to the total across every stock location. If a product is split across the dispensary, the main store, and a fridge, the levels are compared against the sum of all three. For most practices this is the right shape because the practical question is "do we have enough overall to keep dispensing this week?" β not "do we have enough on the dispensary shelf specifically?" If you genuinely manage stock per location with separate ordering, the workaround today is to choose one location to drive your levels and use stock transfers to redistribute (see ).
What unit do I enter the levels in?
What unit do I enter the levels in?
The ordering unit β the unit you buy and stock in, shown next to the Optimal Stock Level field on the product form. For a 50ml vial that you dispense in millilitres, levels are entered in vials, not millilitres. For a box of 30 tablets, levels are entered in boxes. Lupa converts internally β when you dispense 5ml, 5ml is deducted from the running quantity, but the comparison against the minimum and optimal is done on the ordering unit.
Does Suggested Orders auto-submit my orders?
Does Suggested Orders auto-submit my orders?
No, and deliberately so. Suggested Orders builds a basket β items grouped by supplier, ready to review. You always have a final step where you adjust quantities, remove anything you don't want, and submit. This stops a single bad data point (an unprocessed delivery, a wrong stock take) from triggering an automated overspend.
How often does the suggested list update?
How often does the suggested list update?
In real time. Every dispense on a finalised invoice, every processed delivery, every stock take adjustment, and every transfer either pushes a product onto the list or off it the moment it crosses the minimum. There's no overnight job or batch refresh.
Can I bulk-set minimum and optimal for many products at once?
Can I bulk-set minimum and optimal for many products at once?
Not directly β minimum and optimal are set per product on the product form. For a fresh catalogue, the practical approach is to work down the inventory list product by product, focusing on the products that matter most first: daily-use medications, vaccines, emergency drugs, then high-volume consumables. Once those are set, the long tail can be handled gradually. Bulk editing of other product properties (price, category, tags) is supported β see .
Why does Suggested Orders skip a product that I just dispensed below minimum?
Why does Suggested Orders skip a product that I just dispensed below minimum?
The most common cause is that the product is already on a Requested or Pending purchase order from the last 30 days, or already in your current basket. Lupa assumes that order will land and refill the shelf, so it doesn't double-suggest. If the order has stalled (e.g. a delivery is overdue), check the Orders tab β once the existing order is completed, the product becomes eligible again automatically.
What about subunit-based products β does the formula still work?
What about subunit-based products β does the formula still work?
Yes. For products where the dispensing unit is a subunit (e.g. ml within a vial, tablets within a box), Lupa calculates the gap between current and optimal in the smaller unit, then rounds up to the next whole ordering unit so you can actually buy it. You'll never see a suggested quantity of "2.4 boxes" β it'll be 3.



