見出し画像

【Shopify Plus】 Shopify FlowアプリでSlackに通知する方法と条件詳細項目の説明(日本語)

こんにちは。TCAディビジョンの森田です。
今回は、Shopify Plusで利用できるタスクの自動化アプリ「Shopify Flow」についてご紹介いたします。コードを書かなくても条件設定をしていけばタスクの自動処理ができるようになるため、うまく使うと大幅な工数削減が見込める機能になります。

Flowで在庫が一定数を切ったらSlack通知

画像1

他のアプリやサービスのことを「コネクター」と呼びます。現状対応しているコネクターは上記の図の通りです。
今回は下記の参考サイトの中から、「Flowで在庫が一定数を切ったらSlack通知」を実装しました。実際の画面で解説していきます。
・・・と言っても、公式にワークフローファイル(.flow形式)が提供されているのでインポートするだけです!お手軽!


手順

こちらの手順で設定していきます。

①Shopify Plusのアプリストアで「Shopify Flow」をインストール
②Flowのアプリ画面でワークフローファイルをインポート
③Slackとの接続設定、通知のテキスト設定など
④ストアフロント(所謂ユーザ画面のこと)から購入して在庫数減ったら通知が来たら設定おわり

①Shopify Plusのアプリストアで「Shopify Flow」をインストール

fracta Plus Sandbox環境   Shopify Flow   Shopify

インストールするとShopifyのアプリ管理に表示されます。

②Flowのアプリ画面でワークフローファイルをインポート

fracta Plus Sandbox環境   Shopify Flow _setting  Shopify

右上にある「ワークフローをインポートする」を押す。

スクリーンショット 2020-04-10 12.56.20

アップロード画面が表示されるので、こちらからSlackのflowファイルを落としてアップロードします。

スクリーンショット 2020-04-10 12.56.56

「インポート」を押します。インポートが完了したらFlowアプリの一覧にワークフローが追加されます。

③Slackとの接続設定、通知のテキスト設定など

flow_fracta Plus Sandbox環境   Shopify Flow   Shopify

一覧からワークフローの詳細画面で「ワークフローを編集する」を押す。

画像7

編集画面になるので、Send Slack messageを押し、右側のGet appを押す。

connectfracta Plus Sandbox環境   Shopify Flow   Shopify

Slackとの接続設定画面になるので、Connect to Slackを押す。

FlowBot が FRACTA Slack ワークスペースにアクセスする権限をリクエストしています   FRACTA Slack

Slackの権限リクエスト画面になるので「許可する」を押す。

slfracta Plus Sandbox環境   Shopify Flow   Shopify

無事接続ができるとConnectedとグリーンの表示がでます。下のエリアでメッセージのテスト送信ができます。

スクリーンショット 2020-04-10 13.07.54

こんな感じで対象のチャンネルに通知が届きます。(ユーザ指定もできるそうです。)

画像12

もう一度ワークフロー編集画面を開き、Send Slack messageを押し、右パネルの通知先&メッセージを設定します。{{こういう文字}}は商品名など、プログラムで動的にセットされる文字のようです

画像15

同じ手順でIFを押せば、条件の編集も可能です。どんな条件があるかは本記事の下の方に記載したのでご覧ください。

④ストアフロント(所謂ユーザ画面のこと)から購入して在庫数減ったら通知が来たら設定おわり

flow_fracta Plus Sandbox環境   Shopify Flow   Shopify

ワークフロー詳細画面の右側「ワークフローオン」を設定します。

デフォルトの設定では在庫21個を切ったらSlackに通知するようになっているので、予めテスト購入する商品の在庫数を21にしておきます。

スクリーンショット 2020-04-10 13.21.13

購入完了すると、Slackに通知がきました。おわり。

---

このように、とても簡単にタスク処理を組むことができます!
どんな条件が使えるかは、以下に書き出してみましたので、もしよかったらご覧ください。(長いです)


Conditionの種類一覧

「もしAがBのときに何かactionをする」という条件設定する項目を抜き出して日本語にしてみました。(DeepLで翻訳したのである程度綺麗にできていると思いますが、変な日本語があったらご愛敬ということで・・・)

こちらは「もしAがBのとき」でいう、Aの項目です。全部書き出したので長いです・・・

製品

利用可能な出版数
リソースがフィードバックエラーなしで公開されている出版物の数。
コレクション
製品を含むコレクションのリスト。
デフォルトのカーソル
ページ分割で使用するデフォルトのカーソル。
説明
HTMLタグが削除された一行の商品説明。
説明html
商品の説明をHTML形式で完全に記述します。
ギフトカードテンプレートの接尾辞
店頭でギフトカードを閲覧する際に使用するテーマテンプレートです。
ハンドル
商品のタイトルの人間に優しいユニークな文字列。
デフォルトのバリアント
製品がデフォルトのオプションと値で単一のバリアントのみを持っているかどうか。
在庫切れのバリエーションがある
製品に在庫切れのバリエーションがあるかどうか。
ID
グローバルに一意な識別子。
画像
商品に付随する画像です。
ギフトカードは
商品がギフトカードであるかどうか。
レガシーリソースのID
REST Admin API で対応するリソースの ID。
メタフィールド
リソースに関連付けられたメタフィールドのページ順リスト。
オンラインストアのプレビューURL
オンラインストアのプレビューURLです。
オンラインストアのURL
商品のオンラインストアのURLです。
オプション
カスタム製品オプションのリスト(製品ごとに最大3つまで)。
製品の種類
加盟店が指定した商品タイプ。
出版数
リソースが出版されている出版物の数。
リソースの出版物
出版物に公開されているリソースの一覧です。
タグ
商品に追加されたタグの一覧です。
テンプレートの接尾辞
店舗で商品を閲覧する際に使用するテーマテンプレートです。
タイトル
商品のタイトルです。
総在庫数
在庫の量です。
総バリエーション
製品に関連付けられているバリアントの数。
在庫を追跡する
製品の在庫追跡が有効になっているかどうか。
未発表の出版物
リソースが公開されていない出版物のリストです。
バリアント
製品に関連付けられたバリアントのリスト。
ベンダー
商品の出品者名です。

製品/注目の画像

Altテキスト
画像の性質や内容を共有するための言葉やフレーズ。
オリジナルのsrc
元の画像の位置をURLにしたものです。
変換された src
変換された画像の場所をURLとして指定します。

製品 / フィードバック

詳細
リソースに関する課題を詳細に記載したAppFeedbackの一覧です。
概要
リソースに関連するフィードバックのまとめです。

製品/SEO

説明
SEOの説明。
タイトル
SEOタイトル。

製品のバリエーション

販売中
製品バリアントが販売されているかどうか。
バーコード
商品に関連付けられたバーコードの値。
価格で比較
デフォルトのショップ通貨での variant の比較価格。
デフォルトのカーソル
ページ分割で使用するデフォルトのカーソル。
表示名
商品のタイトル+バリアントのタイトルに基づいて、バリアントの表示名を表示します。
ID
グローバルに一意な識別子。
在庫ポリシー
在庫切れの場合に、顧客がその商品バリアントの注文をすることができるかどうか。
在庫量
バリアントの総販売可能数量。
前の在庫量
レガシーリソースID
REST Admin API で対応するリソースの ID。
メタフィールド
リソースに関連付けられたメタフィールドのページ分割されたリスト。
位置
製品バリアントのリストの中の製品バリアントの順番です。リストの最初の位置は 1 です。
価格
デフォルトのショップ通貨での商品の価格。
選択したオプション
バリアントに適用される製品オプションのリスト。
製品番号
ショップ内の商品バリアントの識別子です。フルフィルメントサービスに接続するために必要です。
課税対象
商品のバリエーションを販売する際に税金がかかるかどうか。
タイトル
製品バリアントのタイトルです。
重量
weight_unitで指定した単位系での製品バリアントの重量。
重量単位
製品バリアントの重量に適用される測定単位。weight_unit に値を指定しない場合は、ショップのデフォルトの測定単位が適用されます。有効な値: g , kg , oz , lb .

商品の種類 / 配送プロファイル

アクティブなメソッド定義のカウント
プロファイルのアクティブな配送料金の数。
デフォルト
これがデフォルトのプロファイルであるかどうか。
レガシーモード
このショップが配送プロファイルのレガシー互換モードを有効にしているかどうか。
レートがカウントされていない場所
レートが定義されていない場所の数。
名前
配送プロファイルの名前です。
原点位置のカウント
プロファイルのアクティブな原点位置の数。
未割り当てのロケーション
このプロファイルのロケーショングループに割り当てられていないロケーションのリスト。
ゾーン国数
アクティブレートで配送先の国の数を表示します。

製品の種類 / フルフィルメントサービス

ハンドル
このフルフィルメントサービスのための人間が読めるユニークな識別子。
在庫管理
フルフィルメントサービスが商品在庫を追跡し、Shopifyにアップデートを提供しているかどうか。
製品ベース
フルフィルメントサービスが現地配送に対応しているかどうか。
サービス名
加盟店から見たフルフィルメントサービスの名称です。
発送方法
フルフィルメント・サービス・プロバイダに関連付けられた配送方法。
タイプ
フルフィルメントサービスに関連付けられたタイプ。

製品バリアント/フルフィルメントサービス編集可能

ロックされた
属性が編集用にロックされているかどうか。
理由
属性が編集用にロックされている理由

製品のバリアント/画像

Altテキスト
画像の性質や内容を共有するための言葉やフレーズ。
オリジナルのsrc
元の画像の位置をURLにしたものです。
変換された src
変換された画像の場所をURLとして指定します。

商品の種類・在庫品

原産国コード
原産国のISOコード。
重複するSKUの数
この項目と同じSKUを共有するインベントリ項目の数。
ハーモナイズされたシステムコード
アイテムの調和されたシステムコード。
インベントリ履歴URL
インベントリ履歴WebページのURL。
レガシーリソースID
REST Admin API で対応するリソースの ID。
ロケーション数
この在庫品が在庫されている場所の数。
原産国の州コード
原産国のISOコードです。
出荷が必要です。
発送が必要な商品かどうか。
商品名
在庫品SKU。
追跡された
そのアイテムの在庫レベルの在庫量が追跡されているかどうか。

製品のバリエーション/製品

利用可能な出版数
リソースがフィードバックエラーなしで公開されている出版物の数を指定します。
デフォルトのカーソル
ページ分割で使用するデフォルトのカーソル。
説明
HTMLタグが削除された一行の商品説明。
説明html
商品の説明をHTML形式で完全に記述します。
ギフトカードテンプレートの接尾辞
店頭でギフトカードを閲覧する際に使用するテーマテンプレートです。
ハンドル
商品のタイトルの人間に優しいユニークな文字列。
デフォルトのバリアント
製品がデフォルトのオプションと値で単一のバリアントのみを持っているかどうか。
在庫切れのバリエーションがある
製品が在庫切れのバリアントを持っているかどうか。
ギフトカードは
商品がギフトカードであるかどうか。
レガシーリソースのID
REST Admin APIで対応するリソースのID。
オンラインストアのプレビューURL
オンラインストアのプレビューURLです。
オンラインストアのURL
商品のオンラインストアのURLです。
オプション
カスタム製品オプションのリスト(製品ごとに最大3つまで)。
製品の種類
加盟店が指定した商品タイプ。
出版数
リソースが公開されている出版物の数です。
タグ
商品に追加されたタグの一覧です。
テンプレートの接尾辞
店舗で商品を閲覧する際に使用するテーマテンプレートです。
タイトル
商品のタイトルです。
総在庫数
在庫の量です。
総バリエーション
製品に関連付けられているバリアントの数。
在庫を追跡する
商品の在庫追跡が有効になっているかどうか。
ベンダー
製品のベンダー名です。

---

上記との組み合わせで下記のような「もしAがBのとき」でいう、Bの項目と値を設定します。こちらは「製品のバリエーション.在庫量」での例です。

・に等しい
・に等しくない
・よりも大きい
・以上
・未満
・以下

actionの種類例

「もしAがBのとき何かactionする」のactionの項目例です。
こちらは、導入しているアプリによって選択肢が変わります。
今回は一般的に使いそうな項目をピックアップしました。

Shopify

商品タグの追加
このワークフローのトリガーとなった製品にタグを付けます。
製品をコレクションに追加する
このワークフローのトリガーとなった製品を選択したコレクションに追加します。
製品を隠す
このワークフローのトリガーとなった製品をオンラインストアで利用できないようにします。
商品を公開する
このワークフローのトリガーとなった製品をオンラインストアで利用できるようにします。
コレクションから商品を削除する
選択したコレクションからこのワークフローのトリガーとなった製品を削除します。
製品タグの削除
このワークフローのトリガーとなった製品からタグを削除します。

外部

メールを送る
メールアドレスにメールを送信します。
HTTPリクエストを送信する
HTTPリクエストでアプリ、データ、デバイスに接続します。

Googleスプレッドシート

開発元:Shopify Inc.
スプレッドシートに行を追加
Google Sheetsのスプレッドシートの一番下に行を追加します。

Slack for Shopifyフロー

開発元:Shopify Inc.
Slackにメッセージを送る
Slackチーム内の任意のユーザーやチャンネルにメッセージを送信します。

ホールセール(社販)

開発元:Shopify
顧客登録の承認
顧客の卸売チャネルへの参加要求を承認します。
顧客の登録を拒否する
顧客の卸売チャネルへの参加要求を拒否します。

---

トランスコスモス技術研究所さんの記事も併せてどうぞ!


この記事を書いた人:FRACTA TCAディビジョン森田(@lingling_yas)
とても簡単に利用できて、業務効率アップが期待できるアプリなので、いつか書こうと思っていて、ようやく書けました!運用業務でこんなことができたら・・・というアイデアがあれば是非お聞かせください!

FRACTAでは、ブランディングやEコマースに関する情報を発信しています。ぜひフォロー、スキをお願いいたします!