注文トリガーの仕組み、ステップバイステップ
Shopify Flow 注文の重要な局面(作成、支払い、出荷、キャンセル)に対応する優れたトリガーが用意されています。しかし、その間のプロセスがすべて欠けています。以下の10個のトリガーは、注文が作成された後に発生する変更に対して発動し、それぞれ変更された内容の詳細を記録します。
このページの内容:注文の更新, 注文タグの追加, 注文タグの削除, 注文メモの変更, 注文属性の変更, 注文明細の変更, 注文の履行状況の変更, 注文の表示ステータスの変更, 注文の財務状況の変更, 注文の配送先住所の変更

注文状況の更新
注文が更新されるたびにトリガーされます。changes を引き渡し、変更された追跡対象フィールド(財務状況、履行状況、タグ、メモ、明細、カスタム属性)と、変更前後の値を返します。
| 火災の原因は | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- 複数の種類の注文編集に対応する1つのワークフロー。
- カスタマーサービス向けの注文変更履歴。
「Order Update」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(Shopify) | 更新された注文です。Shopifyの完全な注文データであるため、そのすべてのフィールドおよびFlow独自の注文アクションが利用可能です。 |
payload |
テキスト | 更新された注文のGIDを含むJSONオブジェクト(例:{"id":"gid://shopify/Order/123"}) |
changes |
目的 | どの追跡対象フィールド(財務状況、履行状況、タグ、メモ、明細、カスタム属性)が変更されたか、および各フィールドの旧値と新値 |
changes.fields |
テキスト一覧 | 変更された追跡対象フィールドの名前 |
changes.items |
オブジェクトの一覧 | 変更されたフィールドごとの新旧の値 |
changes.items (each).field |
テキスト | 変更されたフィールド:financialStatus、fulfillmentStatus、tags、note、lineItems、またはcustomAttributes。 |
changes.items (each).oldValue |
テキスト | 更新前の値。長い値は短縮されます。 |
changes.items (each).newValue |
テキスト | 更新後の値。長い値は短縮されます。 |
eventId |
テキスト | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:ヘルプデスクを通じて、追跡対象の注文の変更内容を注文のタイムラインに記録する
- トリガーとして「**注文の更新」**を選択します。
- 条件を追加:
changes.fieldsが空ではなく、かつ存在すること。 - 「本文に
{{order.name}}を含めてヘルプデスクに**HTTPリクエストを送信」**を追加します。FlowのテキストフィールドはLiquidに対応しているため、forというループをchanges.itemsで実行すると、変更ごとに1行ずつ、field、oldValue、newValueが追加されます。 - ワークフローを有効にしてください。
注文タグが追加されました
注文にタグが1つ以上追加されたときに発火します。
| 火災の原因は | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- スタッフには、
gift-wrap、hold、priorityのタグを付けてプロセスを開始してもらいます。 - 不正利用、サブスクリプション、またはフルフィルメント関連のアプリからのタグに対応します。
「タグの追加」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(Shopify) | タグが変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびFlow独自の注文アクションが利用可能です。 |
addedTags |
テキスト | 注文に追加されたタグのカンマ区切りのリスト |
removedTags |
テキスト | 同じ更新処理で注文から削除されたタグのカンマ区切りのリスト(空の場合もある) |
currentTags |
テキスト | 注文に含まれる現在のタグをすべて、コンマ区切りで列挙したもの |
previousTags |
テキスト | この更新前の注文に含まれていたすべてのタグをカンマ区切りで列挙したもの |
eventId |
テキスト | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:注文に「保留」のタグが付けられた場合、その注文の履行を保留する
- トリガーとして「ピッキング**順タグの追加」**が設定されました。
- 条件を追加:
addedTagsはholdを含む。 - 「
order.fulfillmentOrders」に対して「For each」を追加し、アクションとして「**注文の履行を保留」**を設定します。 - ワークフローを有効にします。「**注文タグの削除」**と「**フルフィルメント注文の保留解除」**を使用して、ミラーイメージを作成します。
注文タグが削除されました
注文から少なくとも1つのタグが削除されたときに発火します。
| 火災の原因は | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- タグが妨げていたものを解き放つ。
needs-reviewタグが削除されたら、タスクを終了する。
「タグの削除」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(Shopify) | タグが変更された注文。Shopifyの完全な注文であるため、そのすべてのフィールドと、Flow独自の注文アクションを利用できます。 |
removedTags |
テキスト | 注文から削除されたタグのカンマ区切りのリスト |
addedTags |
テキスト | 同じ更新処理で注文に追加されたタグのカンマ区切りのリスト(空の場合もある) |
currentTags |
テキスト | 注文に含まれる現在のタグをすべて、カンマ区切りで列挙したもの |
previousTags |
テキスト | この更新前の注文に含まれていたすべてのタグを、カンマ区切りで列挙したもの |
eventId |
テキスト | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:タグが取り外されたら、ロックを解除する
- トリガーとして「ピッキング順タグ」が削除されました。
- 条件を追加:
removedTagsにはholdが含まれます。 - 「
order.fulfillmentOrders」に対して、「**Release fulfillment order hold」**を設定した「For each」を追加します。 - ワークフローを有効にしてください。
注文メモが変更されました
スタッフまたは顧客がチェックアウト時の編集画面で注文の明細を追加、変更、または削除した際に発生します。
| 火災の原因は | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- 注文完了後に追加された備考事項については、倉庫に通知してください。
- 配送指示を解析する。
「オーダーノートの変更」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(Shopify) | メモが変更された注文。Shopifyの完全な注文であるため、そのすべてのフィールドおよびFlow独自の注文操作が利用可能です。 |
oldNote |
テキスト | 注文に関する前回のメモ(以前にメモが設定されていなかった場合は空) |
newNote |
テキスト | 注文に関する新しいメモ(メモが削除された場合は空) |
eventId |
テキスト | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:納期遅延の通知を倉庫に伝える
- トリガーとして「ピッキング**順序の注記が変更された」**が設定されました。
- 条件を追加:
order.displayFulfillmentStatus≠FULFILLED。 - 「**内部メールを送信」**を追加:
{{order.name}} note changed from "{{oldNote}}" to "{{newNote}}"。 - ワークフローを有効にしてください。
注文の属性が変更されました
注文のカスタム属性(カート属性、メモ属性)が追加、削除、または変更された際に発火します。changes.items内の各項目には、changeType、key、および両方の値が設定されています。
| 火災の原因は | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、これがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- 納品日ピッカー、ギフトオプション、またはB2Bフォームで入力された属性に対して処理を行う。
- 注文後にスタッフが属性を修正したことを検知する。
「変更された属性」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(Shopify) | カスタム属性が変更された注文。Shopifyの完全な注文オブジェクトであるため、そのすべてのフィールドおよびFlow独自の注文アクションが利用可能です。 |
changes |
目的 | 属性の変更が検出されました。各項目には、changeType(追加、削除、または変更)、キー、および旧値と新値が含まれています。 |
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です。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:配送日の変更への対応
- トリガーとして「ピッキング**順序属性の変更」**が設定されました。
- 条件を追加:
changes.itemsのいずれか1つについて、keyがdelivery_dateと等しいこと。 - 「内部メールを送信」を追加します。FlowのテキストフィールドはLiquidに対応しているため、
forを使用してchanges.itemsをループ処理すると、各エントリのkeyが、oldValueおよびnewValueとともに表示されます。 - ワークフローを有効にしてください。
注文明細の変更
注文が編集された際(商品の追加・削除、数量・価格・バリエーションの変更など)に発火します。changes.items 内の各エントリには、どの種類の変更か(added、removed、quantity_changed、price_changed、variant_changed)が、変更前と変更後の値とともに記載されています。
| 火災の原因は | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- ピッキング済みの注文内容に変更があったことを倉庫に伝えてください。
- 編集後に、不正検知または証拠金チェックを再実行してください。
- 注文の編集内容をERPに同期させる作業は、Shopify独自の注文Webhookを使用すると非常に手間がかかる。
「注文明細の変更」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(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(削除済みまたはvariant_changedの場合) |
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です。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:アイテムが取り出されたら、倉庫の処理を停止する
- トリガーとして「発注行の変更」を選択します。
- 条件を追加:
changes.itemsのいずれか1つについて、changeTypeがremovedに等しい。 - 注文タグ「
edited-recheck」を追加し、changes.items内の各エントリの「productTitle」と「variantTitle」を一覧表示した社内メールを送信します(メール本文には Liquid のforループを使用)。 - ワークフローを有効にしてください。
注文の処理方法の変更
注文の履行ステータスが変更されたとき(null、partial、fulfilled、restocked)、およびその間の履行イベント(行単位の履行完了、履行のキャンセル、追跡情報の追加または変更)が発生したときにトリガーされます。
| 火災の原因は | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- 追跡機能付きの配送通知を独自に送信してください。
- キャンセルされたフルフィルメントを検出します。
- 注文ごとではなく、出荷ごとにERPを更新する。
「Order Fulfillment Changed」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(Shopify) | 履行ステータスが変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびFlow独自の注文アクションが利用可能です。 |
oldFulfillmentStatus |
テキスト | 前回のREST履行ステータス(null、一部履行、履行済み、再入荷済み) |
newFulfillmentStatus |
テキスト | 新しいRESTの履行ステータス(null、部分履行、履行済み、再入荷済み) |
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です。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:新しい追跡番号を転送する
- トリガーとして「ピッキング**・注文処理」が変更されました**。
changes.itemsに対して For each を追加します。- ループ内に条件を追加します。ループ項目の
trackingNumberが空ではなく、かつ存在するという****条件です。 - 「
{{order.name}}」を使用した**「HTTPリクエストの送信」**を追加し、ループ項目の「trackingNumber」および「trackingUrl」を設定します。「変数の追加」でこれらを選択してください。Flowでは、トリガーのデータの横にループ項目が一覧表示されます。 - ワークフローを有効にしてください。
注文の表示ステータスが変更されました
管理者が確認できるフルフィルメントステータスが変更された際に発火します:unfulfilled、in_progress、on_hold、scheduled、partially_fulfilled、fulfilled。Shopifyではこれらの変更に対してWebhookが送信されないため、アプリはスケジュールに従って確認を行います。
| 火災の原因は | Shopifyはこの機能についてWebhookを送信しないため、スケジュールに従って確認しました |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- フルフィルメントサービスまたはPOSが注文を「処理中」とマークした際に反応する。
- 保留中の注文をエスカレーションする。
「表示ステータスの変更」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(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です。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:保留状態になった注文を上位部署へエスカレーションする
- トリガーとして「ピッキング**順の表示ステータスが変更された」**を設定しました。
- 条件を追加:
newDisplayFulfillmentStatusがon_holdと等しい。 - 「
{{order.name}}」を使用して、カスタマーサービスへ社内メールを送信する機能を追加します。 - ワークフローを有効にしてください。
注文の財務状況が変更されました
注文の財務状況が変更された際にトリガーされます。例えば、pending から paid、paid から partially_refunded または refunded、authorized から voided への変更などです。
| 火災の原因は | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- 注文から数日後に「支払済み」とマークされた銀行振込や請求書に対して対応してください。
- 返金について経理に連絡してください。
- 注文は、支払いが完了してから初めて、出荷手配を行ってください。
「財務状況の変更」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(Shopify) | 財務状況が変更された注文。Shopifyの完全な注文であるため、すべてのフィールドおよびFlow独自の注文アクションが利用可能です。 |
oldFinancialStatus |
テキスト | 以前の財務状況(例:保留中、承認済み、支払済み) |
newFinancialStatus |
テキスト | 新しい財務状況(例:支払済み、一部返金済み、全額返金済み、取り消し) |
eventId |
テキスト | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:請求書の支払いが完了したら、B2B注文をリリースする
- トリガーとして「ピッキング**順の財務状況が変更された」**を設定します。
- 条件を追加:
oldFinancialStatusがpendingに等しく、newFinancialStatusがpaidに等しいこと。 - 注文タグ「
awaiting-payment」を追加・削除し、「order.fulfillmentOrders」に対して「**Release fulfillment order hold」**を適用する「For each」ループを追加します。 - ワークフローを有効にしてください。
注文の配送先住所が変更されました
注文の配送先住所が注文完了後に変更された場合に発火します。shippingAddress は1行で、shippingAddressDetails は個別のフィールドです。
| 火災の原因は | Shopify Webhook と変更検知 |
| 許可 | 注文データへのアクセス + 顧客データへのアクセス |
| 電源が入った | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用の切り替えスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- ピッキング開始後に配送先住所が変更された場合、その出荷を停止するか、配送先を変更する。
- 住所の検証または不正利用チェックを再度実行してください。
「配送先住所の変更」がワークフローに送信する内容
| フロー内の変数 | 種類 | その中身 |
|---|---|---|
order |
注文(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つのダイアログで両方の情報の入力を求めます。
- 条件を追加:
order.displayFulfillmentStatusはFULFILLEDと等しくない。 - 注文タグ「
address-changed」を追加し、倉庫宛てに社内メールを送信します。 - ワークフローを有効にしてください。
今後の手順
デフォルトでは、このアプリは過去60日間の注文を監視します。これは「Shopify」で付与される権限の範囲です。それより古い注文の編集に対応するには、「権限」ページで注文履歴の期間を延長してください。詳細は 権限とデータへのアクセス をご覧ください。
- トリガーの完全なリファレンス - すべてのトリガーを1つのページにまとめる。
- 適切なトリガーの選択 - どちらがあなたの状況に合っているか。
- カスタムトリガー - 組み込みのトリガーが適さない場合は、独自のトリガーを作成してください。
- イベント履歴とトラブルシューティング - 何が発射され、何を搭載していたかを確認する。
- レコードの管理ページでのトリガーイベント - 1つのレコードに関する最新のイベントが、Shopifyの管理画面内のそのレコード専用のページに表示されます。

