Reorder Points
Per-Product or per-category min/max stock thresholds — optionally scoped to a single location — that flag low stock and drive reorder suggestions.
A reorder point is the floor (and optional ceiling) you set for a Product's on-hand stock. When measured stock drops below the min amount, the Product is marked low and becomes a candidate for a reorder suggestion. The max amount tells the suggestion engine how much to order up to, so purchase quantities land in a sensible range rather than swinging to an arbitrary number.
Reorder points are the configuration layer; the reorder suggestions engine is what reads them to produce actionable purchase recommendations. Setting thresholds here is what makes the suggestion engine useful.
Where to set reorder points #
Reorder points live on the things being tracked, not in a separate admin screen. The Reorder Points tab appears on every Product, Category, and Kit detail page, and it behaves the same in each place:
- Product → Reorder Points tab — thresholds that apply to that specific Product only.
- Category → Reorder Points tab — thresholds that apply to every Product in the category. Category-level points are especially useful for large families of similar units where you want a shared floor without configuring each Product individually.
- Kit → Reorder Points tab — thresholds stored against the kit record. Note that current-stock measurement for kit-based points is not yet calculated (the system cannot currently sum assembled-kit stock the way it sums Product quantities), so kit reorder points will not trigger low-stock flags or appear in the reorder suggestions engine at this time.
You can mix and match: set a category default and then override it on any individual Product that needs a tighter or looser threshold.
Creating a reorder point #
From the Reorder Points tab on a Product or category, click + New to open the form:
- Location — which inventory location the threshold applies to. Leave it blank to create a single default that covers every location. You can add one point per location if your business runs different safety stocks by site.
- Min Amount — the quantity below which the Product is considered low. The
isBelowMinflag is checked against real-time on-hand stock calculated in the Product's own unit of measure. Leave blank to signal "no minimum enforced." - Max Amount — the desired stock ceiling. Reorder suggestions use this to compute an order-up-to quantity (max − current stock). Optional.
- Unit of Measure — the unit label to display alongside the amounts (e.g.,
each,lb,ml). Defaults to the Product's unit of measure if you leave it empty.
A point with no location is a fallback: it applies to the Product at every location that doesn't have its own dedicated point. This makes it easy to set global defaults with per-location overrides.
How current stock is measured #
The system calculates current stock in the same units as the reorder point when deciding whether a threshold is breached:
- For a Product-based point, it sums each matching unit's remaining quantity
(factoring in the Product's unit size). For example, a Product with
amount = 500 mland a unit at 50% remaining contributes 250 ml to the total. - For a Category-based point, it totals the same calculation across every Product in that category.
If a reorder point has a location_id, only units at that location are counted.
The isBelowMin check compares this live total against reorder_min_amount, so
the flag updates in real time as units are consumed, transferred, or received.
Low-stock indicators #
Products breaching their minimum appear with a low-stock indicator in the Product list. The list can be filtered by stock status to show only Products that are currently below their minimum — useful for a quick daily review before generating purchase orders.
The reorder suggestions page reads from the same data: every below-minimum Product is a candidate there, pre-populated with a suggested quantity computed from usage trends and vendor lead times.
Editing and deleting #
From the Reorder Points tab, click the edit icon on any row to update its location, min, max, or units. Click the delete icon to remove the threshold entirely — the Product is then unmonitored unless a category-level point still applies. Deletes are soft; historical records are retained for auditing.
Reorder points vs. reorder suggestions #
These two features work together but serve different purposes:
| Reorder Points | Reorder Suggestions | |
|---|---|---|
| What it is | Your stated threshold | The system's purchase recommendation |
| Set by | You, per Product / category | Calculated automatically |
| Location scope | Optional | Per location (required) |
| Action it drives | Low-stock flag | Draft purchase order quantity |
Reorder points are the input; suggestions are the output. If a suggestion looks wrong, adjust the reorder point or the vendor's lead time on the Vendor SKU record.
Doing it from the API #
# List all reorder points (paginated, 50 per page)
curl "https://your-domain.com/api/v1/inventory/reorder-points" \
-H "Authorization: Bearer $TOKEN"
# Filter to a specific Product
curl "https://your-domain.com/api/v1/inventory/reorder-points?product_id=<product-id>" \
-H "Authorization: Bearer $TOKEN"
# Create a location-scoped reorder point on a Product
curl -X POST "https://your-domain.com/api/v1/inventory/reorder-points" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"target_type": "sku",
"target_id": "<product-id>",
"location_id": "<location-id>",
"reorder_min_amount": 10,
"reorder_max_amount": 50,
"units": "each"
}'
reorder_min_amountandreorder_max_amountare decimal quantities in the Product's own unit of measure — not cents. A Product measured in litres uses litres here; a Product counted by the piece uses whole numbers.