製品のトリガー機能、手順別解説

Shopify Flow 製品が更新されたことは通知できますが、何が変更されたかや、変更前の値が何だったかまでは通知できません。これら11のトリガーは、その両方の機能を持っています。それぞれのトリガーは、ある種の変更が発生した際に発動し、変更前後の値をワークフローに渡します。

以下の各セクションは、それぞれ簡単なチュートリアルとなっています。トリガーが作動する条件、Flowに送信されるデータ、そして数分で再現できるワークフローについて解説しています。

このページの内容:製品の更新, 製品のステータスが変更されました, 製品のタイトルが変更されました, 製品のハンドルが変更されました, 製品の説明が変更されました, 製品のベンダーが変更されました, 製品のタイプが変更されました, 製品のタグが追加されました, 製品のタグが削除されました, 製品がチャネルに公開されました, 製品がチャネルから非公開になりました

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

製品の更新情報

製品の保存が行われるたびに、変更内容にかかわらずログが出力されます。バージョン 2.10.0 以降では、changes も含まれるようになりました。これは、変更された追跡対象フィールド(タイトル、ハンドル、説明、ステータス、ベンダー、タイプ、タグ)と、変更前後の値を示しています。

火災の原因は Shopify Webhook と変更検出
許可 製品、バリエーション、コレクションのデータへのアクセス
電源が入った これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • changes.fields上で、いくつかの種類の製品編集に対応し、分岐を行うワークフロー。
  • 監査証跡:追跡された変更(変更前・変更後を問わず)をすべて、スプレッドシートまたはSlackチャンネルに記録する。
  • どのより具体的なトリガーが本当に必要か見極めるまでの間、ひとまずこれを使っておけば問題ありません。

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

フロー内の変数 種類 その中身
product 製品(Shopify) 更新された製品です。完全な「Shopify」製品であるため、そのすべてのフィールドおよびFlow独自の製品アクションが利用可能です。
payload テキスト 更新された商品のGIDを含むJSONオブジェクト(例:{"id":"gid://shopify/Product/123"})
changes 目的 どの追跡対象フィールド(タイトル、ハンドル、説明、ステータス、ベンダー、タイプ、タグ)が変更されたか、および各フィールドの旧値と新値
changes.fields テキスト一覧 変更された追跡対象フィールドの名前
changes.items オブジェクトの一覧 変更されたフィールドごとの新旧の値
changes.items (each).field テキスト 変更されたフィールド:title、handle、description、status、vendor、productType、またはtags
changes.items (each).oldValue テキスト 更新前の値。長い値は短縮されます。
changes.items (each).newValue テキスト 更新後の値。長い値は短縮されます。
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:追跡対象の製品の変更をすべて、変更前の値と変更後の値とともに記録する

  1. 「Shopify Flow」で**「トリガーの選択」**を選択し、「Workflow Trigger Extensions」を開き、「**Product Update」**を選択します。
  2. 条件を追加:changes.fieldsが空ではなく、かつ存在すること。追跡対象フィールド以外の更新(価格の編集、画像の追加など)は、空のリストとして送信されるため、ここで処理が停止します。
  3. 内部メールを送信」(または「SlackにHTTPリクエストを送信」)追加します。FlowのテキストフィールドはLiquidに対応しているため、changes.items に対して for ループを実行すると、変更ごとに1行ずつ出力できます。具体的には、エントリの field、続いて oldValuenewValue、その次に {{product.title}} の順で表示されます。
  4. ワークフローを有効にしてください。そうすることで、アプリ内のトリガーも有効になります。
「Product Update」の「changes」/「items」内にあるFlowの変数ピッカー。フィールド、oldValue、newValueが表示されています。
Flowにおける製品更新:changes.items の各エントリにはフィールド名が指定され、変更前後の値が記載されています。
「Product Update」のフロー条件:変更項目またはアイテムのうち、少なくとも1つにステータスと等しいフィールドがあること
これに関する条件:ステータスが変更されたフィールドに含まれている場合にのみ、処理を続行する。

製品のステータスが変更されました

製品が「アクティブ」、「下書き」、「アーカイブ」、「非公開」の間で状態が変更された際にトリガーされます。状態を変更しない保存操作では、このトリガーは発動しません。

火災の原因は Shopify Webhook と変更検出
許可 製品、バリエーション、コレクションのデータへのアクセス
電源が入った これを使用するFlowワークフローを有効にすると、これがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • 製品がリリースされたら、すぐにマーケティングチームに伝えてください。
  • 製品がアーカイブされた場合、その製品をフィードまたはバンドルから削除します。
  • 誤ってドラフトに戻されてしまった製品を捕捉する。

「製品のステータス変更」がワークフローに送信する内容

フロー内の変数 種類 その中身
product 製品(Shopify) ステータスが変更された商品。Shopifyの完全な商品であるため、そのすべてのフィールドおよびFlow独自の商品アクションが利用可能です。
oldStatus テキスト 以前の製品ステータス(アクティブ、下書き、アーカイブ、非公開)
newStatus テキスト 新製品のステータス(有効、下書き、アーカイブ済み、非公開)
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:リリースされたばかりの製品を発表する

  1. トリガーとして「**製品のステータスが変更された」**を選択します。
  2. 条件を追加します:newStatusactive に等しいこと、および 2 つ目の条件として oldStatusdraft に等しいこと
  3. その下に**、**「社内メールを送信」を追加します。件名は「Now live: {{product.title}}」、本文には「{{product.onlineStoreUrl}}」と入力します。
  4. オプション:new-arrival を使用して商品タグを追加し、コレクションに反映されるようにします。
  5. ワークフローを有効にしてください。

製品名の変更

商品のタイトルが変更されたときに発火します。それ以外の状況では、このイベントは発火しません。

火災の原因は Shopify Webhook と変更検出
許可 製品、バリエーション、コレクションのデータへのアクセス
電源が入った これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • 外部カタログ、PIM、または翻訳ツールを、名称が変更された製品と常に同期させておく。
  • ベストセラー商品のタイトルが変更されるたびに、SEOレビューを依頼してください。
  • 一括編集による誤った名前変更を検出します。

「変更された製品タイトル」がワークフローに送信する内容

フロー内の変数 種類 その中身
product 製品(Shopify) タイトルが変更された商品。完全な「Shopify」商品であるため、そのすべてのフィールドおよびFlow独自の商品アクションを利用できます。
oldTitle テキスト この商品の以前の名称
newTitle テキスト 製品の新しい名称
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:両方のタイトルを記載して、チームに名前変更の依頼を送信する

  1. トリガーとして「**商品タイトルの変更」**を選択します。
  2. Product renamed」という件名と、「"{{oldTitle}}" is now "{{newTitle}}" - {{product.onlineStoreUrl}}」という本文を含む社内メールを送信する」を追加します。
  3. 一部の製品のみを対象とする場合は、条件を先頭に指定してください:product.vendor(自社ブランドに等しい)、または product.tagsheroを含む)。
  4. ワークフローを有効にしてください。

製品の名称が変更されました

商品のURLハンドル(/products/ の後の部分)が変更されたときに発火します。

火災の原因は Shopify Webhook と変更検出
許可 製品、バリエーション、コレクションのデータへのアクセス
電源が入った これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • 古いURLから自動的にリダイレクトを設定し、リンクや検索結果が引き続き正常に機能するようにします。
  • 広告やメールキャンペーンの管理担当者に、ランディングページが移動したことを伝えてください。

「Product Handle Changed」がワークフローに送信する内容

フロー内の変数 種類 その中身
product 製品(Shopify) ハンドルが変更された商品。完全なShopify商品であるため、そのすべてのフィールドおよびFlow独自の商品アクションを利用できます。
oldHandle テキスト その商品の以前のURLハンドル
newHandle テキスト 製品の新しいURLハンドル
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:旧ハンドルからURLリダイレクトを作成する

  1. トリガーとして「**製品ハンドルの変更」**を選択します。
  2. 「URLリダイレクトの作成」アクションを追加します。
  3. **「パス」**を「/products/{{oldHandle}}」に、「ターゲット」を「/products/{{newHandle}}」に設定します。
  4. ワークフローを有効にしてから、テスト用製品のハンドルを変更し、以前のURLにアクセスしてください。

商品説明が変更されました

商品の説明(HTML本文)が変更されたときにトリガーされます。

火災の原因は Shopify Webhookと変更検出
許可 製品、バリエーション、コレクションのデータへのアクセス
電源が入った これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • 原文が実際に変更された場合にのみ、翻訳やAI要約を再実行してください。
  • 編集後は、法務部門またはコンプライアンス部門に、規制対象製品を再確認するよう依頼してください。
  • その説明文を含む商品フィードを更新します。

「変更された商品説明」がワークフローに送信する内容

フロー内の変数 種類 その中身
product 製品(Shopify) 説明が変更された商品です。Shopifyの完全な商品であるため、すべてのフィールドおよびFlow独自の商品アクションを利用できます。
oldDescription テキスト 上記の説明(4000文字に短縮されています。必要に応じて、製品リファレンスから完全な説明を取得してください)
newDescription テキスト 新しい説明文(4000文字に短縮されています。必要に応じて、商品参照番号から完全な説明文を取得してください)
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:編集された説明文に「レビュー待ち」のフラグを立てる

  1. トリガーとして「**商品説明の変更」**を選択しました。
  2. needs-copy-review を使用して、商品タグを追加してください
  3. 管理画面に、「{{product.title}}」と製品へのリンクを記載した内部メールをレビュー担当者に送信する機能を追加してください。
  4. レビューが完了したら、レビュアーはタグを削除します。その際に何か処理を行う必要がある場合は、「**Product Tags Removed」**と組み合わせて使用してください。

製品の販売元が変更されました

製品のベンダーが変更された際に発火する。

火災の原因は Shopify Webhook と変更検知
許可 製品、バリエーション、コレクションのデータへのアクセス
電源が入った これを使用するFlowワークフローを有効にすると、この機能がオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • ベンダー別のコレクションや価格リスト間で商品を移動します。
  • 製品が別のサプライヤーに再割り当てされた場合は、購買部門に通知してください。

「変更された製品ベンダー」がワークフローに送信する内容

フロー内の変数 種類 その中身
product 製品(Shopify) ベンダーが変更された製品です。完全な「Shopify」製品であるため、そのすべてのフィールドおよびFlow独自の製品アクションが利用可能です。
oldVendor テキスト 以前のベンダー
newVendor テキスト 新しいベンダー
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:ベンダーが変更された際にベンダータグを入れ替える

  1. トリガーとして「**製品ベンダーの変更」**を選択します。
  2. vendor:{{oldVendor}} を使って、商品のタグを追加**・削除します**。
  3. vendor:{{newVendor}} を使用して商品タグを追加します
  4. ワークフローを有効にしてください。

製品タイプが変更されました

商品タイプが変更されたときにトリガーされます。これは自由入力形式の**「タイプ」**フィールドであり、Shopifyの標準的な商品カテゴリではありません。

火災の原因は Shopify Webhookと変更検出
許可 製品、バリエーション、コレクションのデータへのアクセス
電源オン これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • 商品を、種類別の自動コレクションや配送プロファイルに再分類します。
  • 外部システム内の税・関税マッピングを常に最新の状態に保つ。

「変更された製品タイプ」がワークフローに送信する内容

フロー内の変数 種類 その中身
product 製品(Shopify) タイプが変更された商品。完全なShopify商品であるため、そのすべてのフィールドおよびFlow独自の商品アクションを利用できます。
oldType テキスト 前の製品タイプ
newType テキスト 新製品タイプ
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:製品のタイプが変更された際に運用部門に通知する

  1. トリガーとして「**商品タイプの変更」**を選択しました。
  2. 特定の型のみが対象となる場合は、条件を追加してください:newType これは Hazardous と同等です
  3. 「**内部メールを送信」**を追加:{{product.title}} moved from type "{{oldType}}" to "{{newType}}"
  4. ワークフローを有効にしてください。

製品のタグを追加しました

商品にタグが1つ以上追加されたときに発火します。addedTagsには新しいタグのみが格納されるため、リストを自分で比較する必要はありません。

火災の原因は Shopify Webhook と変更検出
許可 製品、バリエーション、およびコレクションのデータへのアクセス
電源が入った これを使用するFlowワークフローを有効にすると、この機能がオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • タグからプロセスを開始する:photo-readyapprovedclearance
  • スタッフがFlowを開かずに、商品ページから自動化を実行できるようにする。

「追加された製品タグ」がワークフローに送信する内容

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

例:タグの承認が下りた時点で商品を公開する

  1. トリガーとして「**追加された商品タグ」**を選択します。
  2. 条件を追加:addedTags には approved が含まれます
  3. その下にある**「Active商品ステータスを更新する**」(または「商品をチャネルに公開する」)を選択します。
  4. タグが単なるシグナルの場合は、approved を使用して製品タグを追加または削除してください
  5. ワークフローを有効にしてください。

商品タグが削除されました

製品から少なくとも1つのタグが削除されたときに発火します。removedTagsには、削除されたタグが正確に含まれます。

火災の原因は Shopify Webhook と変更検出
許可 製品、バリエーション、コレクションのデータへのアクセス
電源が入った これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • ステータスタグが解除されたらプロセスを終了する:clearanceが削除されると、セールは終了する。
  • **「タグの追加(**一致)」ワークフローによる操作を元に戻します。

「削除された商品タグ」がワークフローに送信する内容

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

例:クリアランスタグが外された時点でセールを終了する

  1. トリガーとして「**商品タグの削除」**を選択します。
  2. 条件を追加:removedTagsにはclearanceが含まれます
  3. 販売を取り消すためのアクションを追加します。例えば、「商品タグを削除する」sale-badge や「マーチャンダイジング部門に社内メールを送信する」などです
  4. ワークフローを有効にしてください。

チャネルに公開された商品

製品が1つ以上の販売チャネル、市場、またはB2Bカタログに公開された際にトリガーされます。channels.addedには、その製品が新たに掲載された場所が一覧表示され、channels.currentには、現在掲載されているすべての場所が一覧表示されます。

火災の原因は Shopify Webhook と変更検出
許可 出版物のデータアクセス + 製品・バリエーション・コレクションのデータアクセス
電源が入った これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • 商品がオンラインストアに掲載されたら、発売チェックリストを作成してください。
  • 製品は、そのチャネルに公開された後にのみ、マーケットプレイスのフィードに送信してください。
  • POSで商品が在庫入りしたら、小売チームに知らせてください。

「チャネルに公開された製品」がワークフローに送信する内容

フロー内の変数 種類 その中身
product 製品(Shopify) 公開された製品です。完全な「Shopify」製品であるため、そのすべてのフィールドと、Flow独自の製品アクションが利用可能です。
channels 目的 追加された/削除された/現在公開中のチャンネル。それぞれが「公開情報(ID、名前、タイプ、カタログID)」です。
channels.added オブジェクトの一覧 このイベントで、製品が公開されたばかりのチャンネル。
channels.added (each).id ID 出版物「GID」(gid://shopify/Publication/...)
channels.added (each).name テキスト チャネル/コンテキスト名(例:オンラインストア、POS、GoogleおよびYouTube、市場名、B2B拠点名など)
channels.added (each).type テキスト 販売の文脈の種類:販売チャネル、市場、またはB2Bの拠点
channels.added (each).catalogId ID 本出版物の基盤となっているカタログGID(AppCatalog、MarketCatalog、またはCompanyLocationCatalog)
channels.removed オブジェクトの一覧 このイベントにおいて、当該商品が公開停止されたチャンネル。
channels.removed (each).id ID 出版物「GID」(gid://shopify/Publication/...)
channels.removed (each).name テキスト チャネル/コンテキスト名(例:オンラインストア、POS、GoogleおよびYouTube、市場名、B2B拠点名など)
channels.removed (each).type テキスト 販売の文脈の種類:販売チャネル、市場、またはB2Bの拠点
channels.removed (each).catalogId ID 本出版物の基盤となっているカタログGID(AppCatalog、MarketCatalog、またはCompanyLocationCatalog)
channels.current オブジェクトの一覧 (この変更後)現在、この商品が掲載されているすべてのチャンネル。
channels.current (each).id ID 出版物「GID」(gid://shopify/Publication/...)
channels.current (each).name テキスト チャネル/コンテキスト名(例:オンラインストア、POS、GoogleおよびYouTube、市場名、B2B拠点名など)
channels.current (each).type テキスト 販売の文脈の種類:販売チャネル、市場、またはB2Bの地域
channels.current (each).catalogId ID 本出版物の基盤となるカタログGID(AppCatalog、MarketCatalog、またはCompanyLocationCatalog)
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:商品が販売拠点に到着した際に、小売チームに通知する

  1. トリガーとして「**チャネルに公開された商品」**を選択します。
  2. 条件を追加:channels.addedのいずれか1つについて、namePoint of Saleに等しい
  3. 「**内部メールを送信」**を追加:{{product.title}} is now available on POS
  4. ワークフローを有効にしてください。

チャンネルから製品が非公開になりました

1つ以上の販売チャネルから商品が削除された際に通知されます。channels.removedには、商品が削除された場所が一覧表示されます。

火災の原因は Shopify Webhook と変更検出
許可 出版物のデータアクセス製品、バリエーション、コレクションのデータアクセス
電源が入った これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。

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

  • オンラインストアからひっそりと取り下げられた商品を見つけましょう。
  • 広告が誘導するチャネルから商品が離れた瞬間に、その商品の広告を一時停止する。

「Channel」から未公開の製品がワークフローに送信される内容

フロー内の変数 種類 その中身
product 製品(Shopify) 公開されていない商品です。Shopifyの完全な商品であるため、すべてのフィールドおよびFlow独自の商品アクションを利用できます。
channels 目的 追加された/削除された/現在公開中のチャンネルは、それぞれ「公開情報 (ID、名前、タイプ、カタログID)」となります。
channels.added オブジェクトの一覧 このイベントで、製品が公開されたばかりのチャンネルです。
channels.added (each).id ID 出版物「GID」(gid://shopify/Publication/...)
channels.added (each).name テキスト チャネル/コンテキスト名(例:オンラインストア、POS、GoogleおよびYouTube、市場名、B2B拠点名など)
channels.added (each).type テキスト 販売の文脈の種類:販売チャネル、市場、またはB2Bの拠点
channels.added (each).catalogId ID 本出版物の基盤となっているカタログGID(AppCatalog、MarketCatalog、またはCompanyLocationCatalog)
channels.removed オブジェクトの一覧 このイベントにおいて、当該商品が公開取り下げられたチャンネル。
channels.removed (each).id ID 出版物「GID」(gid://shopify/Publication/...)
channels.removed (each).name テキスト チャネル/コンテキスト名(例:オンラインストア、POS、GoogleおよびYouTube、市場名、B2B拠点名など)
channels.removed (each).type テキスト 販売の文脈の種類:販売チャネル、市場、またはB2Bの拠点
channels.removed (each).catalogId ID 本出版物の基盤となっているカタログGID(AppCatalog、MarketCatalog、またはCompanyLocationCatalog)
channels.current オブジェクトの一覧 (この変更後)現在、この商品が掲載されているすべてのチャンネル。
channels.current (each).id ID 出版物「GID」(gid://shopify/Publication/...)
channels.current (each).name テキスト チャネル/コンテキスト名(例:オンラインストア、POS、GoogleおよびYouTube、市場名、B2B拠点名など)
channels.current (each).type テキスト 販売の文脈の種類:販売チャネル、市場、またはB2Bの拠点
channels.current (each).catalogId ID 本出版物の基盤となっているカタログGID(AppCatalog、MarketCatalog、またはCompanyLocationCatalog)
eventId テキスト このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。

例:商品がオンラインストアから出荷された際に通知する

  1. トリガーとして「チャンネルから未公開の製品を選択」を選びます。
  2. 条件を追加:channels.removedのいずれか1つについて、nameOnline Storeに等しい
  3. {{product.title}}」と管理者用リンクを記載した社内メールまたはSlackのリクエストを送信してください。
  4. ワークフローを有効にしてください。

今後の手順