Launch special — let's split the check with SPLITCHECK for 50% off

Shopify fixture

orders/create

Fires when a new order is created in a Shopify store. Includes the full order with line items, customer info, and financial/fulfillment status.

When does it fire?

An order is created via storefront checkout, draft order, POS, or the Admin API. Note: this fires once on creation — for status changes, subscribe to orders/updated or orders/paid.

Request headers

Content-Type: application/json
X-Shopify-Topic: orders/create
X-Shopify-Shop-Domain: example-store.myshopify.com
X-Shopify-Hmac-Sha256: XWmrwMeyU2pVwsd8GxZbHJsdAJI3pNQYG/2WGw7uvbg=
X-Shopify-Order-Id: 5208334008572
X-Shopify-Webhook-Id: b39d2c2f-2871-4f2e-9f8c-8d2e3f4a5b6c

Payload

{
  "id": 5208334008572,
  "order_number": 1042,
  "email": "[email protected]",
  "created_at": "2026-05-13T12:00:00-04:00",
  "currency": "USD",
  "total_price": "59.95",
  "subtotal_price": "54.95",
  "total_tax": "5.00",
  "financial_status": "paid",
  "fulfillment_status": null,
  "line_items": [
    {
      "id": 12345678901234,
      "product_id": 98765432109876,
      "variant_id": 11111111111111,
      "name": "HookSense T-Shirt — Large",
      "quantity": 1,
      "price": "29.95",
      "sku": "HS-TSHIRT-L"
    }
  ],
  "customer": {
    "id": 7777777777,
    "email": "[email protected]",
    "first_name": "Jane",
    "last_name": "Doe"
  },
  "shipping_address": {
    "city": "Brooklyn",
    "country_code": "US",
    "zip": "11201"
  }
}

Key fields

  • id

    Shopify order ID. Use with X-Shopify-Order-Id for cross-verification.

  • financial_status

    pending | paid | refunded | voided. Only fulfill on paid.

  • X-Shopify-Webhook-Id

    Unique per delivery. Use as dedup key.

  • X-Shopify-Hmac-Sha256

    Signature — verify with HMAC-SHA256 over the raw body, base64-encoded.

Test it with cURL

Replace your-endpoint with your HookSense endpoint slug — or any URL you want to test against.

curl -X POST https://hooksense.com/w/your-endpoint \
  -H "Content-Type: application/json" \
  -H "X-Shopify-Topic: orders/create" \
  -H "X-Shopify-Shop-Domain: example-store.myshopify.com" \
  -H "X-Shopify-Hmac-Sha256: XWmrwMeyU2pVwsd8GxZbHJsdAJI3pNQYG/2WGw7uvbg=" \
  -H "X-Shopify-Order-Id: 5208334008572" \
  -H "X-Shopify-Webhook-Id: b39d2c2f-2871-4f2e-9f8c-8d2e3f4a5b6c" \
  -d '{
  "id": 5208334008572,
  "order_number": 1042,
  "email": "[email protected]",
  "created_at": "2026-05-13T12:00:00-04:00",
  "currency": "USD",
  "total_price": "59.95",
  "subtotal_price": "54.95",
  "total_tax": "5.00",
  "financial_status": "paid",
  "fulfillment_status": null,
  "line_items": [
    {
      "id": 12345678901234,
      "product_id": 98765432109876,
      "variant_id": 11111111111111,
      "name": "HookSense T-Shirt — Large",
      "quantity": 1,
      "price": "29.95",
      "sku": "HS-TSHIRT-L"
    }
  ],
  "customer": {
    "id": 7777777777,
    "email": "[email protected]",
    "first_name": "Jane",
    "last_name": "Doe"
  },
  "shipping_address": {
    "city": "Brooklyn",
    "country_code": "US",
    "zip": "11201"
  }
}'

Capture this in HookSense

Fire the cURL above at your HookSense endpoint and inspect the request in real time — with headers, body, signature verification, and replay.

Get a free endpoint

More Shopify fixtures