トリガーのチュートリアル注文のトリガーについて、順を追って説明します

注文のトリガーについて、順を追って説明します

ページをコピーする

注文タグ、メモ、属性、ラインアイテム、フルフィルメント、およびステータス変更トリガーに関する、Shopify Flowのステップバイステップチュートリアルです。

Shopify Flow 注文の重要な局面(作成、支払い、フルフィルメント、キャンセル)に対応した優れたトリガーが用意されています。しかし、その間のすべてのプロセスに対応する機能は不足しています。以下の10個のトリガーは、注文が作成された後に発生する変更に対して発動し、それぞれ変更内容の詳細を記録します。

このページの内容:注文の更新, 注文タグが追加されました, 注文タグが削除されました, 注文メモが変更されました, 注文属性が変更されました, 注文明細が変更されました, 注文の履行状況が変更されました, 注文の表示ステータスが変更されました, 注文の財務ステータスが変更されました, 注文の配送先住所が変更されました

Shopify Flow
表示場所:「Shopify Flow」で「トリガーの選択」を選択し、「Workflow Trigger Extensions」を開き、「注文」と検索してください。

注文の進捗状況

注文が更新されるたびにトリガーされます。changes を含みます。これは、変更された追跡対象フィールド(財務状況、フルフィルメント状況、タグ、メモ、ラインアイテム、カスタム属性)と、変更前後の値です。

~による火災 Shopify Webhook と変更検出
許可 注文データのアクセス
電源が入りました これを使用するShopify Flowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • いくつかの種類の注文編集に対応するワークフローです。
  • カスタマーサービス向けの注文変更履歴です。

「Order Update」がワークフローに送信する内容

Shopify Flowにおける変数 種類 その中身
order 注文(Shopify) 更新された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびShopify Flow独自の注文アクションが利用可能です。
payload 本文 更新された注文のGIDを含むJSONオブジェクト(例:{"id":"gid://shopify/Order/123"})
changes 目的 どの追跡対象フィールド(財務状況、フルフィルメント状況、タグ、メモ、ラインアイテム、カスタム属性)が変更されたか、およびそれぞれの旧値と新値はどのようなものでしたか
changes.fields テキストの一覧 変更された追跡対象フィールドの名前
changes.items オブジェクトの一覧 変更されたフィールドごとの新旧の値
changes.items (each).field 本文 変更されたフィールド:financialStatus、fulfillmentStatus、タグ、note、lineItems、またはcustomAttributes。
changes.items (each).oldValue 本文 更新前の値です。長い値は短縮されます。
changes.items (each).newValue 本文 更新後の値です。長い値は短縮されます。
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:ヘルプデスクを通じて、追跡対象の注文の変更内容を注文のタイムラインに記録する

  1. トリガーとして「ピッキング注文の更新」を選択してください。
  2. 条件を追加します:changes.fieldsが空ではなく、かつ存在すること。
  3. 本文に「{{order.name}}」を含めて、ヘルプデスクにHTTPリクエストを送信するように追加してください。Shopify FlowのテキストフィールドはLiquidに対応しているため、for を使用して changes.items をループ処理することで、変更ごとに1行ずつ、field、oldValue、newValue を含めた行が追加されます。
  4. ワークフローを有効にしてください。

注文タグが追加されました

注文にタグが1つ以上追加されたときに発火します。

~による火災 Shopify Webhook と変更検出
許可 注文データのアクセス
電源が入りました これを使用するShopify Flowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • スタッフには、gift-wrap、hold、priority のタグを付けてプロセスを開始してもらいます。
  • 不正、サブスクリプション、またはフルフィルメント関連のアプリからのタグに対応します。

「注文タグの追加」がワークフローに送信する内容

Shopify Flowにおける変数 種類 その中身は
order 注文(Shopify) タグが変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびShopify Flow独自の注文アクションが利用可能です。
addedTags 本文 注文に追加されたタグのカンマ区切りのリスト
removedTags 本文 同じ更新処理で注文から削除されたタグの、カンマ区切りのリスト(空の場合もあります)
currentTags 本文 注文に含まれる現在のタグをすべて、コンマ区切りでリスト化したものです
previousTags 本文 この更新前の注文に含まれていたすべてのタグを、カンマ区切りで列挙したリストです
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:注文に「保留」のタグが付けられた場合、フルフィルメントを保留する

  1. トリガーとして「ピッキング**順タグの追加」**が設定されています。
  2. 条件を追加:addedTagsにはholdが含まれます。
  3. 「order.fulfillmentOrders」に対して「For each」を追加し、アクションとして「**フルフィルメント注文を保留」**を設定してください。
  4. ワークフローを有効にしてください。「**注文タグの削除」**を設定し、フルフィルメント注文の保留を解除して、ミラーイメージを作成してください。

注文タグが削除されました

注文から少なくとも1つのタグが削除されたときに発火します。

~による火災 Shopify Webhook と変更検出
許可 注文データのアクセス
電源が入りました これを使用するShopify Flowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • タグによって抑えられていたものを解き放ちましょう。
  • needs-reviewタグが外されたら、タスクを閉じます。

「タグの削除」がワークフローに送信する内容

Shopify Flowにおける変数 種類 その中身
order 注文(Shopify) タグが変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびShopify Flow独自の注文アクションを利用できます。
removedTags 本文 注文から削除されたタグのカンマ区切りのリスト
addedTags 本文 同じ更新処理で注文に追加されたタグの、カンマ区切りのリスト(空の場合もあります)
currentTags 本文 注文に含まれる現在のタグをすべて、カンマ区切りでリスト化したものです
previousTags 本文 この更新前の注文に含まれていたすべてのタグを、カンマ区切りで列挙したリストです
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:タグが取り外されたら、ロックを解除してください

  1. トリガーとして「ピッキング順タグ」が削除されました。
  2. 条件を追加:removedTagsにはholdが含まれています。
  3. 「order.fulfillmentOrders」に対して、「**Releaseフルフィルメント注文保留」**を含む「For each」を追加してください。
  4. ワークフローを有効にしてください。

注文メモが変更されました

スタッフまたはお客様がチェックアウト時の編集画面で、注文の明細が追加、変更、または削除された際に発生します。

~による火災 Shopify Webhook と変更検出
許可 注文データのアクセス
電源が入りました これを利用するShopify Flowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • 注文完了後に追加された備考については、倉庫に通知してください。
  • 配送指示を解析します。

「注文メモの変更」がワークフローに送信する内容

Shopify Flowにおける変数 種類 その中身
order 注文(Shopify) ノートが変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびShopify Flow独自の注文アクションが利用可能です。
oldNote 本文 その注文に関する前回のメモ(以前にメモが設定されていなかった場合は空欄となります)
newNote 本文 注文に関する新しいメモ(メモが削除された場合は空欄となります)
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:遅延の連絡を倉庫に通知する

  1. トリガーとして「ピッキング**順の注記が変更された」**が設定されました。
  2. 条件を追加します:order.displayFulfillmentStatusはFULFILLEDとは等しくありません。
  3. 「**社内メールを送信」**を追加:{{order.name}} note changed from "{{oldNote}}" to "{{newNote}}"。
  4. ワークフローを有効にしてください。

注文の属性が変更されました

注文のカスタム属性(カート属性、メモ属性)が追加、削除、または変更された際に発火します。changes.items内の各項目には、changeType、key、および両方の値が設定されています。

~による火災 Shopify Webhook と変更検出
許可 注文データのアクセス
電源が入りました これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • 配送日選択ツール、ギフトオプション、またはB2Bフォームに入力された属性に対して処理を行います。
  • 注文後にスタッフが属性を修正したことを検知します。

「注文属性の変更」がワークフローに送信する内容

Shopify Flowにおける変数 種類 その中身
order 注文(Shopify) カスタム属性が変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびShopify Flow独自の注文アクションを利用できます。
changes 目的 属性の変更が検出されました。各項目には、変更の種類(追加、削除、または変更)、キー、および旧値と新値が含まれています。
changes.items オブジェクトの一覧 検出された属性の変更一覧
changes.items (each).changeType 本文 変更の種類:追加、削除、変更
changes.items (each).key 本文 属性キー(別名:note_attribute名)
changes.items (each).oldValue 本文 以前の値(changeType が 'added' の場合は空文字列)
changes.items (each).newValue 本文 新しい値(changeType が 'removed' の場合は空文字列)
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:配送日の変更への対応

  1. トリガーとして「ピッキング**順序の属性が変更された」**が設定されています。
  2. 条件を追加します:changes.itemsのいずれか1つについて、keyがdelivery_dateに等しいこと。
  3. 「内部メールを送信」を追加します。Shopify FlowのテキストフィールドはLiquidに対応しているため、forでchanges.itemsをループ処理すると、各エントリのkeyが、oldValueおよびnewValueと共に表示されます。
  4. ワークフローを有効にしてください。

注文明細の変更

注文が編集された際(商品の追加・削除、数量・価格・バリエーションの変更など)に通知が送信されます。「changes.items」内の各エントリには、通知の種類(added、removed、quantity_changed、price_changed、variant_changed)と、変更前後の値が記載されています。

~による火災 Shopify Webhook と変更検出
許可 注文データのアクセス
電源が入りました これを使用するFlowワークフローを有効にすると、それがオンになります。専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • ピッキング済みの注文内容に変更があったことを倉庫に伝えてください。
  • 編集後は、不正検知や証拠金チェックを再度実行してください。
  • 注文の編集内容をERPに同期させる作業ですが、Shopify独自の注文用Webhookを使用すると、この作業が煩わしくなってしまいます。

「ラインアイテムの変更」がワークフローに送信する内容

Shopify Flowにおける変数 種類 その中身
order 注文(Shopify) 更新された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドと、Shopify Flow独自の注文アクションが利用可能です。
changes 目的 旧値と新値を含むラインアイテムの変更が検出されました
changes.items オブジェクトの一覧 検出された変更の一覧
changes.items (each).changeType 本文 変更の種類:追加、削除、数量変更、価格変更、バリエーション変更
changes.items (each).lineItemId ID ラインアイテムID(ある場合)
changes.items (each).productTitle 本文 商品名
changes.items (each).variantTitle 本文 バリエーションタイトル
changes.items (each).oldVariantId ID 旧形式のGID(削除済みまたはバリエーション変更の場合)
changes.items (each).newVariantId ID 新しいバリエーション GID(追加またはバリエーション変更用)
changes.items (each).oldProductId ID 旧製品のGID(削除済みまたはvariant_changedの場合)
changes.items (each).newProductId ID 新製品 GID(追加またはvariant_changed用)
changes.items (each).oldQuantity 番号 以前の数量(quantity_changed 用)
changes.items (each).newQuantity 番号 新しい数量(quantity_changed用)
changes.items (each).oldPrice 本文 旧価格(price_changed用)
changes.items (each).newPrice 本文 新しい価格(price_changed用)
changes.items (each).lineItemData 本文 JSON形式の完全なラインアイテムデータ
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:商品が取り出された際に倉庫の作業を停止する

  1. トリガーとして、「変更されたピッキング**注文のラインアイテム」**を設定します。
  2. 条件を追加します:changes.itemsのいずれか1つについて、changeTypeがremovedに等しいこと。
  3. 注文タグ「edited-recheck」を追加し、changes.items 内の各エントリの「productTitle」と「variantTitle」を記載した社内メールを送信します(メール本文には Liquid の for ループを使用します)。
  4. ワークフローを有効にしてください。

フルフィルメントの処理方法が変更されました

注文のフルフィルメントステータスが変更された際(null、partial、fulfilled、restocked)、およびその間のフルフィルメントイベント(行のフルフィルメント、フルフィルメントのキャンセル、追跡情報の追加または変更)が発生した際に発火します。

~による火災 Shopify Webhook と変更検知
許可 注文データのアクセス
電源が入りました これを使用するShopify Flowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • 追跡機能付きの配送通知を、ご自身で送信してください。
  • キャンセルされたフルフィルメントを検出します。
  • ERPの更新は、注文ごとではなく出荷ごとに行ってください。

「フルフィルメントの変更」がワークフローに送信する内容

Shopify Flow内の変数 種類 その中身
order 注文(Shopify) フルフィルメントステータスが変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびShopify Flow独自の注文アクションを利用できます。
oldFulfillmentStatus 本文 前回のRESTフルフィルメントステータス(null、部分的、完了、再入荷済み)
newFulfillmentStatus 本文 新しいRESTフルフィルメントステータス(null、partial、fulfilled、restocked)
changes 目的 検知されたフルフィルメントの変更内容と詳細
changes.items オブジェクトの一覧 検出された変更の一覧
changes.items (each).changeType 本文 変更の種類:status_changed、line_item_fulfilled、line_item_unfulfilled、tracking_updated
changes.items (each).lineItemId ID ラインアイテムID(line_item_fulfilled/unfulfilled用)
changes.items (each).productTitle 本文 商品名
changes.items (each).variantTitle 本文 バリエーションタイトル
changes.items (each).oldFulfillmentStatus 本文 以前のフルフィルメントステータス(例:null、一部完了、完了、再入荷済み)
changes.items (each).newFulfillmentStatus 本文 新しいフルフィルメントステータス(例:null、一部履行、履行済み、再入荷済み)
changes.items (each).fulfillmentId ID フルフィルメントID(tracking_updated用)
changes.items (each).trackingNumber 本文 追跡番号
changes.items (each).trackingUrl 本文 追跡用URL
changes.items (each).trackingCompany 本文 配送追跡会社
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:新しい追跡番号を転送する

  1. トリガーとして「ピッキング**・注文のフルフィルメント」が変更されました**。
  2. changes.items に対して「**For each」**ループを追加してください。
  3. ループ内に条件を追加してください。ループ項目の「trackingNumber」が空ではなく、かつ存在しているという****条件です。
  4. 「{{order.name}}」を使用した**「HTTPリクエストの送信」**を追加し、ループ項目の「trackingNumber」と「trackingUrl」を設定してください。「変数の追加」でこれらを選択すると、Shopify Flowではトリガーのデータの横にループ項目が一覧表示されます。
  5. ワークフローを有効にしてください。

注文の表示ステータスが変更されました

管理者が確認できるフルフィルメントステータスが変更された際に発火します:unfulfilled、in_progress、on_hold、scheduled、partially_fulfilled、fulfilled。Shopifyではこれらの変更に対してWebhookが送信されないため、アプリはスケジュールに従って確認を行います。

~による火災 Shopifyからはその件に関するWebhookが送信されないため、スケジュールに従って確認しました
許可 注文データのアクセス
電源が入りました これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • フルフィルメントサービスまたはPOSが注文を「処理中」としてマークした際に、対応を行います。
  • 保留中の注文をエスカレーションしてください。

「注文の表示ステータスが変更されました」という通知がワークフローに送信される内容

Shopify Flowにおける変数 種類 その中身
order 注文(Shopify) 表示上のフルフィルメントステータスが変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびShopify Flow独自の注文アクションが利用可能です。
oldDisplayFulfillmentStatus 本文 以前の表示フルフィルメントステータス(例:未履行、処理中、一部履行済み、履行済み、保留中、予定済み)
newDisplayFulfillmentStatus 本文 新しい表示用フルフィルメントステータス(例:未履行、処理中、一部履行済み、履行済み、保留中、予定済み)
fulfillmentStatus 本文 現在のフルフィルメント状況(未履行、一部履行、履行済み、再入荷済み)
changes 目的 検出された表示状態の変化と詳細情報
changes.items オブジェクトの一覧 検出された変更の一覧
changes.items (each).changeType 本文 変更の種類:order_status_changed、fulfillment_display_status_changed
changes.items (each).fulfillmentId ID フルフィルメントID(フルフィルメントごとの表示ステータスの変更用)
changes.items (each).oldDisplayStatus 本文 以前の表示状態
changes.items (each).newDisplayStatus 本文 新しい表示状態
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:保留状態になった注文を上位部署にエスカレーションする

  1. トリガーとして「ピッキング**注文の表示ステータスが変更された」**を設定します。
  2. 条件を追加します:newDisplayFulfillmentStatus が on_hold と等しいこと。
  3. 「{{order.name}}」を使用して、カスタマーサービスに社内メールを送信する機能を追加します。
  4. ワークフローを有効にしてください。

注文の財務状況が変更されました

注文の財務状況が変更された際に発火します。例えば、pending から paid へ、paid から partially_refunded または refunded へ、authorized から voided へ変更された場合などです。

~による火災 Shopify Webhook と変更検出
許可 注文データのアクセス
電源が入りました これを使用するFlowワークフローを有効にすると、この機能がオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • 注文から数日後に「支払済み」とマークされた銀行振込や請求書について、対応を行ってください。
  • 返金については経理部に伝えてください。
  • 注文は、支払いが完了してから初めて、フルフィルメントの手配を行ってください。

「財務状況の変更」がワークフローに送信する内容

Shopify Flowにおける変数 種類 その中身
order 注文(Shopify) 財務状況が変更された注文です。完全なShopify注文であるため、すべてのフィールドおよびShopify Flow独自の注文アクションが利用可能です。
oldFinancialStatus 本文 以前の財務状況(例:処理中、承認済み、支払済み)
newFinancialStatus 本文 新しい支払状況(例:支払済み、一部返金済み、全額返金済み、取り消し済み)
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:請求書の支払いが完了した時点で、B2B注文を確定する

  1. トリガーとして「ピッキング**注文の財務状況が変更された」**を設定しました。
  2. 条件を追加します:oldFinancialStatus が pending に等しく、newFinancialStatus が paid に等しいこと。
  3. 注文タグ「awaiting-payment」を追加・削除し、「order.fulfillmentOrders」に対して「Releaseフルフィルメント注文保留」を指定する「**For each」**ループを追加してください。
  4. ワークフローを有効にしてください。

注文の配送先住所が変更されました

注文が確定した後に配送先住所が変更された場合に発火します。shippingAddress は1行で、shippingAddressDetails は個別のフィールドです。

~による火災 Shopify Webhookと変更検出
許可 注文データへのアクセス + お客様データへのアクセス
電源が入りました これを使用するFlowワークフローを有効にすると、この機能がオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

次のような用途にご利用ください

  • ピッキング開始後に配送先住所が変更された場合、その荷物の配送を停止するか、配送先を変更してください。
  • 住所の有効性確認または不正利用チェックを再度行ってください。

「配送先住所の変更」がワークフローに送信する内容

Shopify Flowにおける変数 種類 その中身
order 注文(Shopify) 配送先住所が変更された注文です。Shopifyの完全な注文であるため、すべてのフィールドおよびShopify Flow独自の注文アクションを利用できます。
shippingAddress 本文 注文の現在の配送先住所を、1行にまとめて表記したもの(空欄の場合もあります)
shippingAddressDetails 目的 注文の現在の配送先住所を構造化フィールドとして(空の場合もあります)
shippingAddressDetails.firstName 本文 住所に記載されている名前
shippingAddressDetails.lastName 本文 住所に記載されている苗字
shippingAddressDetails.name 本文 フルネーム(firstName と lastName から生成されたもの)
shippingAddressDetails.company 本文 会社名または団体名
shippingAddressDetails.address1 本文 1行目 - 住所または私書箱番号
shippingAddressDetails.address2 本文 2行目 - アパート、スイート、またはユニット
shippingAddressDetails.city 本文 市、区、村、または町
shippingAddressDetails.province 本文 地域 - 県、州、または地区
shippingAddressDetails.provinceCode 本文 リージョンコード(例:ON)
shippingAddressDetails.zip 本文 郵便番号
shippingAddressDetails.country 本文 国名
shippingAddressDetails.countryCode 本文 2文字の国コード(例:US)
shippingAddressDetails.phone 本文 住所に記載されている電話番号
eventId 本文 このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:住所が変更された注文を保留にする

  1. 「Shopify Flow内でのピッキング注文の配送先変更」機能です。この機能を利用するには、注文****データと顧客データへのアクセス権が必要です。トリガーページからこの機能を有効にすると、アプリは1つのダイアログで両方の情報の入力を求めます。
  2. 条件を追加します:order.displayFulfillmentStatusはFULFILLEDとは等しくありません。
  3. 注文タグ「address-changed」を追加し、倉庫宛てに社内メールを送信してください。
  4. ワークフローを有効にしてください。

今後の手順

デフォルトでは、このアプリは過去60日間の注文を監視します。これは、「Shopify」で付与される権限の範囲です。それより古い注文の編集に対応するには、「権限」ページで注文履歴の期間を延長してください。詳細は 権限とデータへのアクセス をご覧ください。