Skip to main content

Max Shelf Life

Max Shelf Life lets you tell Recurrency how many days an item can sit on the shelf and still be sellable. Recurrency then caps recommended min, recommended max, and purchase quantities so you are not asked to buy more than you can sell before the item expires.

This is especially useful for perishable, dated, or quality-sensitive product — for example when Economic Order Quantity (EOQ) would otherwise recommend 90 days of supply, but the item is only viable for 30 days.

⚠️ Note: Max Shelf Life is a Recurrency-owned setting. It is not imported from your ERP and it is not written back to your ERP. Lot expiration dates, warehouse QC holds, and ERP shelf-life fields are unchanged.

How Max Shelf Life works

For each item with a Max Shelf Life set, Recurrency calculates a maximum viable stock:

If the unconstrained recommended max (from lead time, safety stock, and EOQ) is higher than that cap, Recurrency reduces recommended max to the viable stock. Recommended min is then reduced if needed so that min never exceeds max.

The same cap is applied when Recurrency calculates how much to buy: purchase quantity is based on the capped max, not the uncapped EOQ or ERP inv max.

Example

  • Daily demand: 10 units

  • Max Shelf Life: 30 days

  • Uncapped recommended max (EOQ): ~90 days of supply (900 units)

  • Capped recommended max: 30 × 10 = 300 units

Recurrency will recommend stocking and buying up to about 30 days of supply — not 90.

If lead time and safety stock would have produced a recommended min above 300, Recurrency also lowers recommended min to 300 so min and max stay consistent.

When the cap is applied

The cap is used when all of the following are true:

  • Max Shelf Life is enabled for your workspace

  • The item has a Max Shelf Life (days) value

  • The item has daily demand greater than zero

If daily demand is zero, Recurrency does not apply a shelf-life cap.

Hub and Spoke

Max Shelf Life is set once per item, not per location.

  • Hubs and locations that are not spokes → The cap is applied.

  • Spokes in a Strict Hub and Spoke model → The cap is not applied at the spoke. The hub places the purchase, so Recurrency constrains the buy at the hub.

Flexible Hub and Spoke (and workspaces not using Hub and Spoke) apply the cap at the locations Recurrency is recommending you purchase into.

Setting Max Shelf Life on an item

  1. Open the item in Item Details.
    ​


    ​

  2. Find Max Shelf Life (days) in the item header properties.
    ​
    ​

  3. Enter a positive whole number of days (for example, 30).
    ​

  4. Save.

To remove the cap from an item, clear Max Shelf Life and save.

Changes take effect after Recurrency recalculates planning and purchasing recommendations. You can confirm the update in Export Jobs if you need to verify that item settings have synced.

Bulk upload Max Shelf Life

For a large item list, use the bulk upload on Purchasing → Items.

  1. Navigate to Settings.

  2. Open the bulk import / CSV upload menu.

  3. Choose Max Shelf Life.

  4. Download the template and fill it out.

    1. Note that max_shelf_life_days should be a positive whole number.

  5. Upload the file.

  6. Review validation results. Fix any failed rows and re-upload before publishing.

Recurrency validates the file before applying it. Rows that fail (missing identifier, non-numeric days, zero or negative days, unknown item) are returned with errors so incomplete data is not applied.

To clear Max Shelf Life in bulk, follow the template instructions for a blank / null days value on that row.

Seeing the cap in Planning

When recommended max was reduced because of shelf life, hover the Recommended Max value in Planning (and in related views such as Daily Workflow and Update Replenishment Settings).

The popover shows:

  1. The usual EOQ / recommended max math before the shelf-life cap

  2. The reduction from that uncapped max → the shelf-life cap → the final recommended max

  3. An explanation such as:

    1. Recommended max reduced — max shelf life of 30 days (30 × daily demand = 300 EA).

If recommended max was not reduced by shelf life, the popover behaves as it always has.

What Max Shelf Life does not do

Max Shelf Life is a planning and purchasing quantity cap. It does not:

  • Import or sync P21 / ERP lot shelf life

  • Write a shelf-life value back to the ERP

  • Track lot-level expiration dates

  • Alert you when product is about to expire

  • Send email notifications

  • Vary by location (it is item-level only)

If you need lot expiry, FEFO, or warehouse date control, continue to manage that in your ERP and warehouse process. Max Shelf Life is there so Recurrency does not recommend buying more than you can sell through.

Things to know

  • Enablement: Max Shelf Life is turned on by Recurrency for your workspace. If you do not see the field, contact your Customer Success Manager.

  • Item-level, Recurrency-only: One value per item, stored in Recurrency. It will not appear as an ERP inventory field.

  • Demand required: No daily demand means no cap. Set shelf life anyway so it applies as soon as demand exists.

  • Min will not exceed max: After the cap, Recurrency keeps recommended min ≤ recommended max, and purchase effective min ≤ effective max.

  • Strict Hub and Spoke: Cap at the hub (where the PO is placed), not at the spoke.

  • Accepting min/max: The capped recommended min/max are what you review and accept in Planning. Purchasing then buys to those levels.

FAQs

Does this change my ERP min/max automatically?
No. Like other Recurrency recommendations, you still review and accept (or override) min/max. Nothing is written to ERP shelf-life fields.

Should I set this on every item?
No. Use it for items that can expire, spoil, or become unsellable within a known number of days. Leave it blank for durable items so EOQ and safety stock can work as usual.

What value should I enter?
Enter the sell-through window you want Recurrency to respect, in days — typically the practical number of days the product can sit on your shelf and still be sold, not the theoretical manufacturer expiry if that is longer than you will actually hold it.

Can I set a different shelf life per location?
Not at this time. Max Shelf Life is item-level.

Did this answer your question?