Most JsWorkflows automations run against the Shopify store where the app is installed. For many workflows, that is exactly what you want.
There are cases where the workflow needs a different Shopify connection:
- A second Shopify store.
- A development store used for testing.
- A client store managed by an agency or partner.
- A dedicated Shopify custom app with specific Admin API scopes.
- A migration or backfill job that reads from one store and writes to another.
That is where connecting a Shopify custom app to JsWorkflows becomes useful.
What this unlocks
A Shopify custom app connection lets a workflow retrieve an OAuth token for another Shopify app/store connection and call that store's Admin API from the workflow.
This can support patterns such as:
- Sync products, inventory, or metafields between related stores.
- Test a workflow against a development store before using it on a live store.
- Pull data from an old store during a migration.
- Keep a separate Shopify token for a specific automation.
- Build agency workflows that operate against a client's secondary store.
- Use scopes that are not part of the main JsWorkflows app installation.
This makes JsWorkflows more than a single-store automation tool. It can become a controlled workflow layer for connected Shopify stores and custom app access.
Why not just use the built-in Shopify connection?
For the store where JsWorkflows is installed, use the built-in Shopify Admin API access. The platform already injects the installed store's Shopify access token when workflow code calls that store's Admin API URL.
A custom Shopify app connection is for a different requirement: the workflow needs to call another Shopify store or use a separate custom app token.
That separation is useful because the workflow can decide exactly when to use the installed store connection and when to use the custom app connection.
Why this is different from Shopify Flow
Shopify Flow is useful for Shopify-native event automation and app actions. Multi-store automation is a different requirement because the workflow needs a separate connection to the other store's Admin API.
With JsWorkflows and a custom Shopify app connection, a workflow can:
- Read from one Shopify store and update another.
- Combine Shopify data with external API data.
- Run scheduled backfill or cleanup jobs.
- Use custom retry and logging logic.
- Keep setup values and OAuth handles visible in the workflow setup.
That matters when the automation crosses store boundaries or needs a dedicated app token.
Development store testing
For development stores, the setup is straightforward. Create a Shopify app in the Shopify Dev Dashboard, configure the Admin API scopes and redirect URL, then connect it in JsWorkflows with the standard custom OAuth connector.
This is useful when you want to test workflow behavior against a separate store before using the workflow on production data.
Live store custom apps
Live stores need the Shopify custom app distribution flow.
In the Shopify Dev Dashboard, create the app, configure its version, select the scopes, set the JsWorkflows OAuth callback URL, and release the version. Then set the app's distribution method to custom and enter the live store domain.
Shopify generates an installation link for that store. Install the app on the target store, then add the connection in JsWorkflows using the Shopify Custom App connector. JsWorkflows can use the installation link and client secret to derive the authorization details and store the resulting token.
The detailed setup steps are documented in the Shopify Custom App OAuth guide.
Example workflow pattern
A common multi-store workflow looks like this:
- Start from a schedule, Shopify event, HTTP request, or manual test run.
- Load the custom app token using the OAuth handle configured in JsWorkflows.
- Call the secondary store's Shopify Admin API.
- Compare or transform the data.
- Update the installed store, the secondary store, or an external system.
- Log what changed and send a summary.
This pattern can be used for inventory sync, product enrichment, store migration, customer tagging, or partner-managed operations.
Keep the connection explicit
Custom app connections are powerful, so the workflow should make the connection clear.
Good workflow setup should include:
- The OAuth handle used for the custom Shopify app.
- The target store domain.
- The Shopify scopes required by the custom app.
- Whether the workflow reads data, writes data, or both.
- A summary notification for important updates or failures.
This makes the workflow easier to review before it is turned on.
When this is a good fit
Use a custom Shopify app connection when the workflow needs access beyond the installed store's built-in JsWorkflows connection.
Do not use it just because the workflow calls Shopify. For ordinary workflows on the installed store, the built-in Shopify access is simpler.
The custom app connector is most valuable when the automation needs another store, another token, another scope set, or a controlled integration path for partner and agency workflows.