Frequently asked questions
What Foreshelf reads, what it changes, what waits for your approval, and how to leave.
What does Foreshelf change in my store?
- Automatically: three product metafields in the
foreshelfnamespace (days_of_stock,next_expiry,abc_class), refreshed regularly so you can use them in your theme or Shopify Flow. - Only after you approve it: a Shopify discount code proposed by Marcus.
- Only if you build a Shopify Flow workflow with a Foreshelf action: a product tag, or a purchase order recorded in Foreshelf.
- Never: inventory levels, prices, product content, orders, customers or theme files.
What does Foreshelf only read?
Products and variants (title, SKU, barcode, price, cost), inventory quantities, locations (Shopify requires this scope to read inventory quantities), order line items from the last 60 days (quantity, price and variant only — no customer names, emails or addresses), and your store name, email and primary domain so alert emails reach you.
Does Marcus act automatically?
No. Marcus proposes; you approve. On the Growth plan the daily scan creates proposals, never executions. The only exception is one you build yourself: a Shopify Flow workflow using the “Foreshelf: Create purchase order” action schedules that order without a click, still subject to your per-order limit and the 60-second cancellation window.
What requires my approval?
Every purchase order, supplier email and discount Marcus proposes. Above your double-confirmation threshold you also type the supplier name. Marcus actions stop running if your paid subscription is not active.
Can I cancel or undo?
After you approve, you have 60 seconds to cancel before anything runs. After that, a discount code can be deactivated in Shopify admin › Discounts, and a sent supplier email cannot be recalled, so contact the supplier. See Cancellation.
How are safety limits used?
A per-order limit, a rolling 24-hour spending limit, a double-confirmation threshold and a maximum of 10 approvals per five minutes. Limits are checked when you approve and again at execution with current costs. See Safety.
How are forecasts calculated?
Foreshelf uses average daily units sold from recent Shopify orders, current stock and incoming purchase orders to estimate days of cover, compares that with the supplier lead time plus safety days, and uses batch expiry dates to estimate units that would expire before they sell. The result is Reorder, Wait or Monitor expiry, with the reason shown. See How forecasting works.
What happens with little sales history?
A SKU without enough sales history is marked as insufficient data and Marcus makes no proposal for it. At install Foreshelf reads the last 60 days of orders; new orders arrive in real time after that.
How do I enter expiry dates?
Import a CSV during onboarding or from the Batches page with the columns sku, lot_number, quantity, expiry_date, received_date, unit_cost. Stores without expiring products can skip this step. See Expiry data.
How does FEFO work?
First expired, first out: each new order is allocated to the lot that expires first, so the remaining quantity of every lot stays current.
How does the Stocky import work?
Upload the Stocky purchase-order report exported as CSV. Foreshelf previews what it found, then rebuilds suppliers, purchase orders and lines matched to your SKUs or barcodes, and computes supplier lead times from at least three received orders. Stocktakes, inventory adjustments, locations and supplier contact details are not part of that export and are not imported. See Stocky migration.
How do I uninstall?
In Shopify admin go to Settings › Apps and sales channels › Foreshelf › Uninstall. Shopify ends any paid plan, and Foreshelf deletes its Shopify access credentials immediately.
What data is kept after uninstall?
Access is revoked at uninstall. Store data is deleted within 48 hours of Shopify's store data deletion request, which Shopify sends after an uninstall; backups expire on their normal cycle. See Data & privacy.
How do I export or delete my data?
Email hello@foreshelf.app from the store owner's address. Deletion is handled on request; there is no self-serve export yet.