To connect Shopify to Windsor.ai, you create your own app for your store in the Shopify Dev Dashboard, install it on the store, and enter its Client ID and Client secret in Windsor.ai. Windsor.ai is not installed from the Shopify App Store.
Since 1 January 2026, Shopify no longer lets you create new custom apps from the store admin, so new connections use the Dev Dashboard. Custom apps created in the store admin before that date keep working.
We tested every step below on a Shopify development store on 15 October 2026.
Before you start
- Sign in at dev.shopify.com with the Shopify account you use for the store.
- Have your store’s myshopify.com address ready. If the store admin address is
https://admin.shopify.com/store/your-shop-name, the address you need isyour-shop-name.myshopify.com. - Decide whether you need orders older than 60 days. Without the
read_all_ordersscope, Shopify returns orders from the last 60 days only. Step 3 adds it, and it is easiest to do before you install the app.
📝 Shopify’s own documentation: Create apps using the Dev Dashboard and Select a distribution method.
Step 1. Create the app in the Dev Dashboard
1. In the Dev Dashboard, open Apps and click Create app. If you have no apps yet, the Create app link is in the Get API credentials bar at the bottom of the page.
2. Fill in the form:
- App name: Windsor.ai (any name works). Version name is optional.
-
App URL:
https://onboard.windsor.ai - Embed app in Shopify admin: untick it. If it stays ticked, Shopify opens Windsor.ai inside the store admin after the install and shows an error page. The app is still installed, but unticking avoids the error.
- Allowed redirection URL(s): leave empty. Use legacy install flow: leave unticked.
- Scopes: paste the nine scopes below.
read_customers,read_inventory,read_locations,read_marketing_events,read_orders,read_products,read_returns,read_shopify_payments_accounts,read_shopify_payments_payouts
Do not add
read_all_ordersyet. Until Shopify grants your app access to it, Shopify refuses to create the app and shows “Couldn’t create app. Contains invalid scopes: read_all_orders”. Step 3 adds it.

3. Click Create app. Shopify opens a Release version window; the description is optional. Click Release. The Versions page then lists the version as Active.
Step 2. Choose custom distribution
1. In the app’s menu, open Overview and click the Distribution card (Select distribution method). The Distribution page opens in Shopify Partners, under the same login.
2. Select Custom distribution, click Select, then confirm with Select custom distribution. Shopify warns that this can’t be undone.

3. In Store domain, enter your-shop-name.myshopify.com and click Generate link, then confirm. The Allow multi-store install for one Plus organization option only matters if your stores belong to one Shopify Plus organization; leave it as it is.

4. Shopify shows an Install link. Copy it. If you need orders older than 60 days, do Step 3 before you open it.

Step 3. Request access to all orders (for orders older than 60 days)
1. On the same Shopify Partners page, open API access requests in the left menu. The Read all orders scope card appears only after you choose a distribution method in Step 2. Click Request access.
2. In Why does your app need access to orders older than 60 days?, write a short reason (at least 10 characters), for example “Read historical orders data for reporting in Windsor.ai.” Click Request access.

In our test, Shopify approved the request immediately and showed “Your app can access the full order history for a store.” Shopify says it reviews these requests on a rolling basis and can remove the scope from apps that do not need it.

3. Go back to the Dev Dashboard, open the app’s Versions page and click Create version. The form is filled in from the current version. Add ,read_all_orders to the end of the Scopes field, click Release, then Release again in the window. The new version is listed as Active.
The full scope list is now:
read_customers,read_inventory,read_locations,read_marketing_events,read_orders,read_products,read_returns,read_shopify_payments_accounts,read_shopify_payments_payouts,read_all_orders
Step 4. Install the app on your store
1. Open the install link from Step 2 in your browser while signed in to Shopify, and pick your store.
2. Shopify shows Install app with the access the app needs: customer data, staff and contributor data, and store data (customers, products, orders, marketing, Shopify Payments). Click Install.

If you unticked Embed app in Shopify admin in Step 1, Shopify then opens Windsor.ai. If you left it ticked, Shopify shows an error page inside the store admin. The app is installed either way, so continue with Step 5.
Step 5. Copy the Client ID and Client secret
In the Dev Dashboard, open the app’s Overview. The Credentials card shows the Client ID and the Client secret, each with a copy button. The same card is also under App settings.

Treat the Client secret like a password. Enter it only in the Windsor.ai form, and do not paste it into emails, chats or support tickets.
Step 6. Connect the store in Windsor.ai
1. Open Shopify in Windsor.ai and click Connect Shopify Store.
2. Enter your Shop Name (your-shop-name.myshopify.com), the Client ID and the Client Secret, then click Connect Shopify Store.

3. Your store appears under Select Shopify Accounts. Tick it and open Preview and Destination to check the data. Our test store’s orders and products appeared in the preview.

From there you can send the data to any destination, or analyze it in an AI assistant: see how to connect Shopify to Claude and how to connect Shopify to ChatGPT.
Troubleshooting
I can’t find Windsor.ai in the Shopify App Store
That is expected. Searching the Shopify App Store for Windsor.ai returns no app, and you don’t need one: you create your own app in the Dev Dashboard (Step 1) and connect it with its Client ID and Client secret (Step 6).
“Couldn’t create app. Contains invalid scopes: read_all_orders”
Remove read_all_orders from the scopes and create the app with the other nine. Request the scope in Step 3, then add it in a new version.

I don’t see the Read all orders card under API access requests
Choose a distribution method first (Step 2). The card appears only after that.
Windsor.ai shows only the last 60 days of orders
The app does not have read_all_orders. Follow Step 3 to request it and release a version that includes it.
I see an error page in the Shopify admin after installing
This happens when Embed app in Shopify admin is ticked. The app is installed. Copy the credentials (Step 5) and connect in Windsor.ai (Step 6).
I have several stores
A custom distribution app installs on one store, or on the stores of one Shopify Plus organization. For stores that are not in the same Plus organization, create one app per store and connect each one in Windsor.ai with its own Client ID and Client secret.
Where is the Client ID and Client secret field in Windsor.ai?
Open Shopify in Windsor.ai and click Connect Shopify Store. The form with Shop Name, Client ID and Client Secret opens.
If something still does not work, contact us in the chat and include the exact error message.


