<!-- BusyBot node reference — https://busybot.net/tools/shopify-trigger/ -->

> Node: Shopify Trigger (`shopify_trigger`) · Webhook trigger · v1
> Category: Sales · Credentials: Shopify API (`shopifyApi`)
> Updated: 2026-08-16

# Shopify Trigger

> Trigger workflows from Shopify store events

## Overview

The Shopify Trigger node listens for webhook events from a Shopify store. It supports 55+ event topics covering orders, products, customers, fulfillments, inventory, collections, themes, and more. Incoming webhooks are verified using HMAC-SHA256 signature validation. When an event matching the configured topic is received, the trigger fires and passes the full webhook payload into the workflow.

**Category:** Sales  
**Tool Name:** `shopify_trigger`  
**Version:** 1

**Appearance:** Icon: `si-shopify` | Color: `#96bf48`

## Node Type

**Trigger** — webhook (receives incoming HTTP callbacks)

## Input / Output

| Direction | Port(s) |
|-----------|--------|
| Input | None (trigger node) |
| Output | `Output` |

## Credentials

This tool requires **Shopify API** credentials.
See the [Credentials Guide](https://busybot.net/credentials/shopify-api/) for setup instructions.

### Parameters

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Topic | `options` | No | — | The Shopify event topic to listen for. |
| | | | | Options: `app/uninstalled`, `carts/create`, `carts/update`, `checkouts/create`, `checkouts/delete`, `checkouts/update`, `collections/create`, `collections/delete`, `collection_listings/add`, `collection_listings/remove`, `collection_listings/update`, `collections/update`, `customers/create`, `customers/delete`, `customers/disable`, `customers/enable`, `customer_groups/create`, `customer_groups/delete`, `customer_groups/update`, `customers/update`, `draft_orders/create`, `draft_orders/delete`, `draft_orders/update`, `fulfillments/create`, `fulfillment_events/create`, `fulfillment_events/delete`, `fulfillments/update`, `inventory_items/create`, `inventory_items/delete`, `inventory_items/update`, `inventory_levels/connect`, `inventory_levels/disconnect`, `inventory_levels/update`, `locales/create`, `locales/update`, `locations/create`, `locations/delete`, `locations/update`, `orders/cancelled`, `orders/create`, `orders/fulfilled`, `orders/paid`, `orders/partially_fulfilled`, `order_transactions/create`, `orders/updated`, `orders/delete`, `products/create`, `products/delete`, `product_listings/add`, `product_listings/remove`, `product_listings/update`, `products/update`, `refunds/create`, `shop/update`, `tender_transactions/create`, `themes/create`, `themes/delete`, `themes/publish`, `themes/update` |

## Output Data

Each verified Shopify webhook produces one output item. The Shopify resource payload — the order, product, customer or other record the event is about — is merged in at the top level, alongside this metadata:

- `_trigger` — always `shopify_webhook`
- `_timestamp` — ISO 8601 timestamp of when the request arrived
- `_webhookEvent` — the Shopify topic that fired, taken from the request headers
- `_shopDomain` — the `myshopify.com` domain the event came from
- `_apiVersion` — the Shopify Admin API version that produced the payload

Reference the payload downstream by expression, e.g. `{{ $json.id }}` or `{{ $json.total_price }}`. Requests that fail signature verification are rejected, and deliveries whose topic does not match the configured **Topic** are acknowledged without starting the workflow.

## Usage Examples

- Start a workflow when a new Shopify order is created
- React to product updates in your Shopify store
- Trigger automation when a customer is created or updated
- Monitor fulfillment status changes in Shopify
- Listen for inventory level changes across locations

## Example Configuration

Fire on every new order:

```json
{
  "type": "shopify_trigger",
  "parameters": {
    "topic": "orders/create"
  }
}
```

React to product edits:

```json
{
  "type": "shopify_trigger",
  "parameters": {
    "topic": "products/update"
  }
}
```

Track new customers:

```json
{
  "type": "shopify_trigger",
  "parameters": {
    "topic": "customers/create"
  }
}
```

Watch inventory levels across locations:

```json
{
  "type": "shopify_trigger",
  "parameters": {
    "topic": "inventory_levels/update"
  }
}
```

Handle refunds:

```json
{
  "type": "shopify_trigger",
  "parameters": {
    "topic": "refunds/create"
  }
}
```

### Trigger Behavior

- **Activation:** When the workflow is activated, a webhook endpoint is registered with the service.
- **Deactivation:** The webhook is automatically unregistered when the workflow is deactivated.
- **Payload:** The incoming webhook payload is parsed and output as workflow items.
- **Verification:** Supports signature verification where applicable.

## Tips

Configure the Shopify Trigger by selecting which event topic to listen for (e.g. orders/create, products/update). Provide your Shopify API credentials including the app secret key for webhook signature verification. When activated, the trigger registers a webhook with Shopify and listens for matching events. Each incoming event is verified via HMAC-SHA256 before being passed into the workflow.