Setting Up The Integration
Configuring a Shopify Integration in Endless
This tutorial explains how the Shopify ↔ Endless connection works under the hood.
Self serve vs managed install
To connect to Shopify, you will need to install an app in your Shopify store. We recommend asking Endless Support to create and manage the Shopify app for you. If you are creating and managing your own Shopify app, you can follow this guide and complete setup without contacting Support.
What you’re actually building
At a high level, configuring a Shopify integration in Endless is a two-stage process:
- Stage 1 — Create the integration in Endless: you store enough information for Endless to identify your Shopify app and Shopify store (Client ID / Client Secret + store identifier, plus the Endless brand context).
- Stage 2 — Install the Shopify app in the store: installing the app completes OAuth and gives Endless an access token, which Endless stores and uses for all Shopify API calls.
It’s helpful to know that Endless does not “talk to Shopify” using the API key/secret directly. Instead, those credentials are used to complete OAuth and obtain an access token. After that, Endless uses the token for all Shopify API calls.
Stage 1: Create the “shell” integration in Endless
The first stage is creating an integration record in Endless that contains the identifying information needed to later complete OAuth.
Creating a Shopify app
Shopify apps are created through the Shopify Developer Dashboard. You can either ask Endless Support to create an app for you or create an app yourself.
If you are creating an app yourself, you will need the following pieces of information:
- Redirect URL:
https://api.endlesscommerce.com/shopify/callback - Scopes:
read_assigned_fulfillment_orders,write_assigned_fulfillment_orders,read_companies,write_companies,read_customers,write_customers,read_price_rules,write_price_rules,write_draft_orders,read_draft_orders,read_fulfillments,write_fulfillments,write_inventory,read_inventory,write_locations,read_locations,read_merchant_managed_fulfillment_orders,write_merchant_managed_fulfillment_orders,write_order_edits,read_order_edits,read_orders,write_orders,read_product_listings,read_products,write_products,read_purchase_options,write_purchase_options,read_returns,write_returns,read_shipping,write_shipping,read_third_party_fulfillment_orders,write_third_party_fulfillment_orders - Embedded: false
- App URL:
https://api.endlesscommerce.com/shopify/install
Creating the integration in Endless
When you create the integration, the essential pieces are:
- Brand: which Endless brand this integration belongs to.
- Store name / store identifier: the Shopify store’s identifier without
myshopify.com(e.g.acmerather thanacme.myshopify.com). - API key / Client ID: copied from the Shopify app you created.
- API secret / Client Secret: copied from the Shopify app you created.
It's important that you enter the store name, API Key and API Secret correctly into Endless. If you run into issues during setup, this is almost definitely what went wrong.
At the end of Stage 1 you should have:
- An Endless integration exists with brand context + store identifier + Shopify app credentials.
- It is not yet “connected” in the sense of having a Shopify OAuth token.
Stage 2: Install the Shopify app to complete OAuth (token acquisition)
Once Stage 1 is complete (brand + store name + app credentials saved in Endless), you need to install the Shopify app in the target store to complete setup.
Behind the scenes, that installation runs an OAuth flow: Shopify redirects back to Endless, Endless exchanges the OAuth code for an access token, and then stores the token on the integration so it can start communicating with Shopify.
Storing the install link in Endless (optional but useful)
Endless supports storing the app’s install link in the integration settings. This does not change how OAuth works—it’s just a convenience:
- It gives you a stable bookmark for where to install from in the future.
- It makes it easy to hand off installation to someone else (e.g. a Shopify admin) without explaining the Shopify Developer Dashboard.
After you add the install link to the integration settings in Shopify, the API connection tab will show an install button if the app hasn't been installed.