New260+ blocks and 240+ tools are now fully documented
DocumentationReferenceCore BlocksFinance & Payments
Block

Shopify Block

Manage products and orders in Shopify

List and create products, and list and retrieve orders from your Shopify store through the Shopify Admin API. Authenticate with an Admin API access token and your store domain. Reach for this block whenever a workflow needs to read your product catalog, place or inspect orders, or push new listings into Shopify without leaving the Zelaxy canvas.

Overview

PropertyValue
Typeshopify
Categorytools
Color#95BF47

When to Use

  • Fetch a paginated list of products to feed downstream enrichment or reporting blocks.
  • Create new products programmatically from data generated by an AI or upstream workflow step.
  • Pull a filtered list of orders (e.g. only open orders) to trigger fulfillment workflows.
  • Retrieve a single order by ID for status checks, customer service lookups, or notification flows.
  • Combine with a Router or Condition block to branch on order status values returned from Shopify.
  • Automate product catalog synchronisation between Shopify and another data source.

Configuration

Operation

Selects which Shopify Admin API action the block performs. This dropdown is always visible and determines which additional fields appear.

LabelID
List productsshopify_list_products
Create productshopify_create_product
List ordersshopify_list_orders
Get ordershopify_get_order

Title (shown when Operation = Create product)

  • Sub-block id: title
  • Type: short-input
  • Placeholder: My Product
  • The product title sent to the Shopify POST /products.json endpoint. Required by the Create product operation.

Description (HTML) (shown when Operation = Create product)

  • Sub-block id: body_html
  • Type: long-input
  • Placeholder: <p>Product description</p>
  • HTML body for the product description. Optional for the Create product operation.

Order ID (shown when Operation = Get order)

  • Sub-block id: orderId
  • Type: short-input
  • Placeholder: 450789469
  • The numeric Shopify order ID to fetch. Required by the Get order operation.

Status (shown when Operation = List orders)

  • Sub-block id: status
  • Type: short-input
  • Placeholder: any
  • Filters orders by status. Accepted values: open, closed, cancelled, any. Defaults to any when omitted.

Limit (shown when Operation = List products or List orders)

  • Sub-block id: limit
  • Type: short-input
  • Placeholder: 50
  • Maximum number of records to return. Shopify allows up to 250 per request; defaults to 50.

Store Domain (always visible, required)

  • Sub-block id: storeDomain
  • Type: short-input
  • Placeholder: mystore.myshopify.com
  • Your Shopify store domain, e.g. mystore.myshopify.com. Used to build the API base URL for every request.

Admin API Access Token (always visible, required)

  • Sub-block id: apiKey
  • Type: short-input (password)
  • Placeholder: shpat_...
  • A Shopify Admin API access token (shpat_...). Store this value as a secret and reference it with {{SHOPIFY_API_KEY}} rather than entering the raw token in the canvas.

Inputs & Outputs

Inputs

InputTypeDescription
operationstringOperation to perform — one of the four tool IDs (shopify_list_products, shopify_create_product, shopify_list_orders, shopify_get_order)
apiKeystringShopify Admin API access token
storeDomainstringShopify store domain (e.g. mystore.myshopify.com)
titlestringProduct title (Create product only)
body_htmlstringProduct description in HTML (Create product only, optional)
orderIdstringOrder ID to fetch (Get order only)
statusstringOrder status filter (List orders only, optional)
limitnumberMaximum records to return (List products and List orders, optional)

Outputs

OutputTypeDescription
datajsonResult object or array from Shopify. For list operations this is an array of product or order objects; for single-record operations it is the product or order object.
metadatajsonResponse metadata. For list operations: { count: number }. For single-record operations: { id: string }.

Tools

Shopify List Products (shopify_list_products) — Sends a GET request to /admin/api/2024-01/products.json and returns up to limit product objects from the store. Requires apiKey and storeDomain; limit is optional (default 50, max 250).

Shopify Create Product (shopify_create_product) — Sends a POST request to /admin/api/2024-01/products.json to create a new product. Requires apiKey, storeDomain, and title; body_html is optional. Returns the created product object and its id in metadata.

Shopify List Orders (shopify_list_orders) — Sends a GET request to /admin/api/2024-01/orders.json filtered by status (defaults to any) and returns up to limit order objects. Requires apiKey and storeDomain; status and limit are optional.

Shopify Get Order (shopify_get_order) — Sends a GET request to /admin/api/2024-01/orders/{orderId}.json and returns a single order object. Requires apiKey, storeDomain, and orderId.

YAML Example

shopify_1:
  type: shopify
  name: "List Open Orders"
  inputs:
    operation: "shopify_list_orders"
    storeDomain: "{{SHOPIFY_STORE_DOMAIN}}"
    apiKey: "{{SHOPIFY_API_KEY}}"
    status: "open"
    limit: 100
  connections:
    outgoing:
      - target: process_orders_block