Connect Shopify to Rig with your own app
Create a private Shopify app owned by your organisation, install it on your store, then give Rig its Client ID and Client Secret. This connects Shopify without waiting for Rig's shared public app to pass App Store review. Rig uses read-only access and requests a fresh short-lived token for every sync.
Seeing “This app is under review”?
Cancel that installation. It is the shared Rig app, which Shopify will not let a new merchant install until its review is complete. Follow this guide to create an app inside your own Shopify organisation instead.
Why use your own app
Shopify's client credentials flow is designed for trusted server-to-server integrations that are owned by the same organisation as the store. Because you own both the app and the store, the app does not need an App Store listing or public-app review. It can only be installed on stores in your Shopify organisation.
Shopify access is still controlled by the read scopes you grant. Your Shopify plan and protected-customer-data settings can also affect whether customer names, emails, phone numbers and addresses are returned.
Before you start
- Sign in with the Shopify organisation that owns the store you want to connect. The app and store must belong to the same organisation.
- You need permission to build and manage apps. The organisation owner has this automatically; another user needs the relevant app development role or permission.
- Know the permanent
.myshopify.comaddress of the store. Your customer-facing domain is not the value Rig needs. - By the end, you will paste three values into Rig: the shop subdomain, Client ID and Client Secret.
Step 1: Create the Shopify app
- Open Shopify's Dev Dashboard and make sure the correct organisation is selected.
- Open
Apps, then clickCreate app. - Choose
Start from Dev Dashboard. - Name the app
Rig data syncand clickCreate.
Step 2: Configure read access
- Open the app's
Versionstab and create a version. - For the app URL, use Shopify's default non-embedded app URL,
https://shopify.dev/apps/default-app-home. Rig does not need an app screen inside Shopify. - Choose the newest available Webhooks API version.
- Add these Admin API access scopes:
read_orders,read_customers,read_products,read_locations,read_inventoryandread_discounts. - Release the version.
Read-only by design
Do not add write scopes. Rig only needs to read Shopify data for the warehouse sync.
Need orders older than 60 days?
Shopify documents read_orders as covering the latest 60 days by default. For a full historical backfill, request access to read_all_orders in the app's API access area, then add it alongside read_orders in a new released version. Shopify may review this restricted scope.
Step 3: Install the app on your store
- Open the app's
Hometab in the Dev Dashboard. - Scroll to the installation section and click
Install app. - Select the store you want Rig to sync.
- Review the read permissions and click
Install.
If your store is not listed, it is usually in a different Shopify organisation. Switch to the organisation that owns the store and create the app there.
Step 4: Copy the credentials
- In the app, open
Settings. - Under Credentials, copy the Client ID.
- Reveal and copy the Client Secret. Treat it like a password.
- Find your store's permanent address, for example
acme.myshopify.com. Rig needs only the part before the suffix, in this exampleacme.
There is no token to copy
That is expected for a Dev Dashboard app using client credentials. Rig exchanges the Client ID and Client Secret for a Shopify access token when each sync starts. The token expires after about 24 hours, so there is nothing for you to refresh manually.
Step 5: Connect it in Rig
- In Rig, open
Connectionsin the left sidebar and go toSources. - Search for Shopify and open its card.
- In Shop subdomain, enter only the part before
.myshopify.com. - Leave Option A: Admin API token blank. That field is only for older Shopify custom apps that already have a permanent token.
- Paste the Shopify Client ID into Option B: App API key / client ID.
- Paste the Shopify Client Secret into Option B: App API secret / client secret.
- Leave Days of history on first sync at
0for all history Shopify permits, or enter a smaller number for a faster first sync. - Click
Continue, thenTest. When the test passes, clickSync.
What Rig pulls in
Shopify lands in its own shopify schema in your warehouse. Rig uses Shopify's GraphQL Bulk Operations API for the large tables, then keeps them current with incremental syncs.
- Orders, line items, transactions, refunds, fulfilments, shipping lines, tax lines and discount applications
- Customers and their order history, subject to Shopify's protected-customer-data rules
- Products, variants, options and collections
- Locations and inventory levels
- Discounts and refund detail
Troubleshooting
- “This app is under review”: you opened the shared public Rig app. Cancel and use the merchant-owned app flow in this guide.
- The store is missing at install: the app and store are not in the same Shopify organisation, or your user lacks access to the store.
- The test says invalid client credentials: copy the Client ID and Secret again from the app's Settings page, and check that the app is installed on the exact store subdomain entered in Rig.
- The test reports access denied: check that all six read scopes are in the released app version. If you added scopes after installing, approve the updated permissions in Shopify before testing again.
- Only recent orders appear: request and release
read_all_orders, or confirm with Shopify what historical access the app has. - You rotated the Client Secret: update the secret in Rig before the next sync. The old secret stops working after you revoke it.