Connecting Shopify in 60 seconds
Two ways to connect Shopify. We support both. Most shops use the paste-key flow because it's faster and doesn't require a Partner-app review.
Option A — Paste an Admin API key (the fast path)
This is what 90% of shops choose. Estimated time: about a minute.
- In Shopify Admin, go to Settings → Apps and sales channels → Develop apps → Create an app
- Name it "Restock Notify"
- Under Admin API access, grant these scopes:
read_customers,read_orders,read_products,read_inventory. That's all four — no write scopes, no payment scopes. - Click Install app, copy the Admin API access token, and paste it into Restock Notify under Integrations → Shopify.
The first sync runs in the background and usually finishes in under a minute for shops with up to ~10,000 customers. Anything bigger, expect 2–5 minutes.
Option B — Partner OAuth (white-label / enterprise)
If you're on Restock Notify Enterprise or running multi-location, you'll use Partner OAuth. The flow is the same but you grant access through Shopify's standard install screen instead of pasting a key. We unlock this path automatically when your Enterprise contract is signed.
What we read from Shopify
- Customers — name, email, phone (if opted in), tags, total spend, last order date
- Orders — line items, totals, fulfillment status, channel
- Products — title, variants, stock level, restock dates
- Inventory — current quantity per variant, low-stock threshold
What we don't read
We never read: payment data, customer card information, address details beyond city/state, password or session data. We never write back to your Shopify store under any circumstances. If a customer needs to be unsubscribed, that happens in Restock Notify — we do not modify Shopify customer records.
Want to verify? Admin owners can review the audit log at /admin/audit, which lists every Shopify API call we've made on your behalf, with timestamp and scope.
If the sync fails
Almost every failed first sync is one of three things: missing read_customers scope (most common), an Admin API key that was generated before all four scopes were added, or a typo when pasting. Re-create the key with all four scopes in one shot and the sync goes through.