How It Works
Three steps. No CSV uploads, no API keys to copy.
- Click “Connect Shopify”and we redirect you to Shopify's OAuth screen. You log in and approve the permissions we request. That's the only thing you do in Shopify.
- Your data syncs automatically. Products, variants, inventory levels, order history, and locations start pulling immediately. Most stores finish their first sync in under an hour.
- Forecasts generate within the first hour Once we have your order history, the forecasting engine runs. You get demand projections, days-of-supply estimates, and reorder alerts right away.
What You Do Not Have to Worry About
Some Shopify-connected inventory platforms have well-known public reliability issues. Here are the four that come up most often in customer reviews of competitor apps, and what ReplenishRadar does instead. Three of the four are enforced by a pre-push lint that fails any pull request that would reintroduce them.
- Real Inventory Locations, not Sales Channels. Some platforms can only map inventory to a Shopify Sales Channel, which collapses multi-warehouse stores into a single bucket. ReplenishRadar resolves every adjustment to a real Shopify Location GID. Multi-warehouse stores get per-warehouse stock tracking out of the box.
- Read-only on your catalog. ReplenishRadar never calls
productVariantUpdate,productUpdate, orproductCreate. We sync inventory levels to Shopify Locations and we sync nothing else. Your variants, prices, custom metafields, and product data stay exactly as you set them, period. A pre-push lint blocks any future PR that would change this. - No phantom orders. Order line items without SKUs are tracked and surfaced as a sync-run counter. They never become blank rows in your sales history, and they never become phantom rows in forecasts.
- Idempotent, retry-safe sync. Webhooks are deduplicated on
X-Shopify-Webhook-Id. If our backend can't verify an event, we return HTTP 503 so Shopify retries automatically. Drained events flow through a single idempotent reconciliation path, so a transient failure picks up on the next inventory update cycle without manual intervention.
What We Sync
Here is exactly what we pull from your Shopify store and what we do with it:
| Shopify Data | What We Pull | What We Do With It |
|---|---|---|
| Products & Variants | SKU, title, price, cost, images, variant attributes | Build your catalog, match SKUs across channels |
| Inventory Levels | Stock quantities at every Shopify location | Track stock position, calculate days of supply by location |
| Orders | Line items, dates, quantities, fulfillment status | Power demand forecasting, measure sales velocity, detect trends |
| Inventory Locations | Location identifiers from inventory and fulfillment records | Multi-location inventory views, location-level reorder alerts |
What ReplenishRadar Does With Your Shopify Data
Raw data from Shopify is just numbers in a database. We turn it into decisions:
- Demand forecasting: we analyze your order history to project future demand by SKU, accounting for seasonality and trends
- Reorder point alerts: based on your lead times and sales velocity, we tell you when to reorder before you run out
- Purchase order recommendations: suggested quantities per supplier, factoring in MOQs, pack sizes, and lead times
- Multi-location inventory view: see stock across every Shopify location (and Amazon, if connected) in one dashboard
- Stockout risk scoring: every SKU gets a risk score so you know which products need attention first
Built into Shopify Flow
ReplenishRadar shows up alongside Shopify's own triggers in the Flow editor as soon as the app is installed. Five triggers fire from ReplenishRadar: stockout risk detected, stockout forecasted, days of cover below the threshold you set, a draft PO ready for review, and an FBA discrepancy. Two actions go the other direction so Flow can approve a drafted PO or send an alert back to ReplenishRadar. Five ready-to-import recipes live in the recipe library.
The inventory triggers are included on Standard and up. PO approval and the FBA discrepancy recipe are on Growth and up because they rely on the purchase order automation and FBA discrepancy detection that ship with those plans. See the Shopify Flow feature page for the full trigger details and plan coverage.
Sync Frequency by Plan
Not every store needs the same refresh rate. A shop doing 20 orders a day is fine with real-time webhooks plus a weekly accuracy check. A store doing 2,000 needs tighter intervals.
| Plan | Sync Interval | Best For |
|---|---|---|
| Standard ( | Accuracy check weekly | Stores under 1,000 sales line items/month |
| Growth ( | Accuracy check daily | Growing stores with faster-moving inventory |
| Scale ($499/mo) | Accuracy check every 6 hours | High-volume operations that need tighter reconciliation |
| Enterprise (Custom) | Accuracy check hourly | Large catalogs with high order volume |
That interval is the full recheck, not how fresh your numbers are. Stock and product changes reach us as they happen on every paid plan, so the accuracy check is the backstop, not the way you find out.
Every sync is incremental. We track a cursor from the last successful run and only pull records that changed. A store with 10,000 SKUs does not re-download 10,000 SKUs every cycle. It pulls the ones that changed since last time.
All plans also include Instant Refresh. If you need the latest data right now, hit the sync button and we pull immediately.
Permissions & Security
I want to be specific about what we can and cannot do.
- Limited store access: we request
read_products,read_inventory,read_orders,read_all_orders, andwrite_inventory. We cannot edit your products, change prices, access customer contact fields, or touch your orders. Inventory writes only happen when you explicitly trigger an inventory update. - OAuth 2.0:we never see your Shopify password. Shopify's own authorization server handles the credential exchange and issues us a token.
- Revoke anytime:go to Shopify Admin → Settings → Apps and sales channels. One click and we lose access. Nothing in your store changes because we never touched it.
- Encrypted: your access token is encrypted at rest. All data transfers happen over TLS.
Multi-Store Support
You can connect more than one Shopify store. Run a DTC brand on one and a wholesale channel on another? Connect both. Each store syncs independently with its own cursor and schedule.
| Plan | Connected Stores |
|---|---|
| Standard | Up to 2 |
| Growth | Up to 5 |
| Scale | Up to 10 |
| Enterprise | Unlimited |
Your dashboard shows unified inventory across all connected stores. Forecasts account for demand from every channel, and your reorder calculations use the combined picture.
Frequently Asked Questions
Does ReplenishRadar modify my Shopify data?
We never modify products, prices, customers, or orders. We pull products, inventory levels, order history, and location identifiers. The only Shopify write permission is inventory updates, and those only happen when you explicitly trigger them.
How long does the first sync take?
A few hundred SKUs usually takes a few hours. A few thousand, or both channels, can take a day or more. It depends on your catalog size and order history depth, and you can start exploring your data while the sync completes.
Does it work with Shopify Plus?
Yes. ReplenishRadar works with all Shopify plans: Basic, Shopify, Advanced, and Plus. The integration uses the same Shopify Admin API across all plans.
Can I connect Shopify and Amazon together?
Yes, and that is what we are built for. Connect your Shopify store and your Amazon seller account, and ReplenishRadar gives you a unified view of inventory, demand, and reorder needs across both channels. See the Amazon integration page for details on how that side works.