Shopify

E-commerce Dev Dashboard app client credentials, or a legacy custom-app token

Search and update orders, products, customers and inventory on a Shopify store from any Windmill script, flow or app.

Set up in 4 steps

1

Create an app in the Dev Dashboard

A store owner creates an app in the Dev Dashboard (dev.shopify.com), adds the Admin API scopes the scripts need, releases a version and installs it on the store.

2

Connect it in Windmill

Open Resources, click Add a resource/API and pick shopify under Others. Enter the store subdomain (yourshop for yourshop.myshopify.com, not a custom domain) and the app's client ID and secret; Windmill gets and renews the token, with no Windmill admin step.

3

Or paste an existing token

A custom app created in the store admin before 2026 still works: fill store_name with the subdomain and token with its non-expiring shpat_ token.

4

Run your first script

Run Get Shop or Search Orders to check the connection before writing anything.

Scripts

Building blocks, if none of the projects above fit. Fork one, run it, or call it as a step inside your own flow.

Submit a script →

Trigger flows from Shopify

Shopify is not only a destination. These inbound paths are supported today.

Shopify webhooks on an HTTP route

Create a Windmill HTTP route with Signature authentication, Custom scheme: header X-Shopify-Hmac-Sha256, sha256, base64, no prefix, secret the admin's webhook signing key (or the app's client secret for app-created webhooks). Subscribe it to topics such as orders/create under Settings → Notifications → Webhooks, or with webhookSubscriptionCreate through the GraphQL Query script.

Resource type

The shape of the credential every script on this page expects.

FieldTypeRequiredWhat it is
store_namestringYesThe store's subdomain only: yourshop for yourshop.myshopify.com.
tokenstringYesAdmin API access token. Connect with OAuth (client credentials of a Dev Dashboard app installed on the store) to have Windmill refresh it, or paste a non-expiring shpat_ token from a custom app created in the Shopify admin.

Questions

A call fails with ACCESS_DENIED or a missing scope

Scopes come from the installed app version, not the token: add the scope in the Dev Dashboard, release a new version and approve the update on the store. Customer and order data also need protected customer data access on the app.

There is no Connect button on my instance

Shopify connects under Others with your own app's client ID and secret, so no Windmill admin setup is needed. If shopify is not offered there, your Windmill version predates it: paste a token instead.

Is my token stored on the hub?

Never. It lives only in your own Windmill workspace, encrypted at rest.