Skip to main content

Shopify integration

Manage products, orders, customers, and react to store events for your clients' Shopify stores.

What it does

The Shopify integration lets your agency run product, order, customer, inventory, fulfillment, and discount operations on behalf of your clients without leaving TaskJuice. Connect a client's Shopify store once and you can list and mutate catalog entities through the GraphQL Admin API, react to orders, customers, and product changes the moment they happen in the storefront, and chain those events into the rest of your workflow.

Connect a Shopify account

  1. Open your workspace in TaskJuice and navigate to Connections.
  2. Choose Shopify and click Connect.
  3. Enter the store subdomain (the part before .myshopify.com).
  4. Sign in to the Shopify account that owns the store and approve the requested scopes (products, orders, customers, inventory, fulfillments, draft orders, discounts, content).
  5. TaskJuice returns you to the workspace with the connection ready to use in any workflow.

To revoke access, open the store's Shopify Admin, navigate to Settings, Apps and sales channels, and remove the TaskJuice app. See the Shopify access tokens guide for the full grant flow.

Triggers

  • shopify/order-created fires when a new order is created in the store (Shopify orders/create webhook topic). The activation payload carries the full order body, including line items and customer.
  • shopify/customer-created fires when a new customer record is created in the store (customers/create topic).
  • shopify/product-updated fires when a product is updated (products/update topic). Use it to react to inventory, price, status, or metadata changes.

Every inbound POST is authenticated by recomputing HMAC-SHA256 over the raw request body using your app's client secret and comparing the base64 digest with the value Shopify sends in the X-Shopify-Hmac-Sha256 header. Activations that fail the check are rejected before they reach your workflow.

Actions

  • shopify/list-products, shopify/get-product, shopify/search-products, shopify/create-product, shopify/update-product, shopify/delete-product cover the product catalog.
  • shopify/list-product-variants, shopify/create-product-variant, shopify/update-product-variant cover variant management.
  • shopify/list-orders, shopify/get-order, shopify/update-order, shopify/cancel-order, shopify/close-order, shopify/mark-order-as-paid cover order lifecycle.
  • shopify/list-draft-orders, shopify/create-draft-order, shopify/update-draft-order, shopify/complete-draft-order cover the draft-order workflow.
  • shopify/list-customers, shopify/get-customer, shopify/create-customer, shopify/update-customer, shopify/search-customers cover the customer record.
  • shopify/adjust-inventory, shopify/set-inventory, shopify/list-inventory-levels cover stock management across locations.
  • shopify/create-fulfillment, shopify/list-fulfillment-orders cover order fulfillment.
  • shopify/list-collections, shopify/create-collection, shopify/update-collection, shopify/add-products-to-collection cover collection management.
  • shopify/create-discount-code, shopify/create-automatic-discount cover promotional discounts.
  • shopify/add-tags, shopify/set-metafields apply tags and metafields to any resource type.

Known limitations

  • The GraphQL Admin API enforces a cost-based rate limit per shop. When a 429 status is returned, TaskJuice surfaces it as a retryable error and respects the Retry-After header. The action response includes the throttle status under extensions.cost.throttleStatus so workflows can adapt their pacing.
  • Webhook activations use the Shopify Admin GraphQL data shape (camelCase fields, GID-formatted IDs) for action responses and the legacy REST shape (snake_case fields, integer IDs) for webhook bodies. Field names differ between the two surfaces by design.
  • Connections are scoped to a single store subdomain. To work across multiple client stores, create one connection per store.
  • The TaskJuice integration targets Shopify Admin API version 2024-10. Schema fields outside that version's contract are not exposed.
Was this helpful?
Shopify integration | TaskJuice Docs