2023年8月、当ブログで「Shopify Flowを利用して、無料でShopifyの顧客情報をエクスポートする方法」を解説した記事を公開しました。
しかし、上記記事を公開した次の日に!Shopify Flowに新しいトリガー「Customer tags added(顧客にタグが付与された)」が追加されました。このトリガーを使うと、より簡単に顧客情報のエクスポートが可能なので、血涙流しながらこの記事を書いています。
本記事では、Shopify Flowと顧客タグ付与トリガーを使って、Shopifyの顧客情報をGoogle Sheetsにエクスポートする方法を紹介します。
本記事で紹介する施策に使うアプリ・サービス
- ワークフローの自動化Shopifyアプリ「Shopify Flow」:Shopifyベーシックプラン以上で利用可能(2023年7月時点)
- オンラインでスプレッドシートを作成・編集できる「Google Sheets」:Googleアカウントがあれば誰でも利用可能
ワークフローの設定に使う「Shopify Flow」とは、Shopify内の会員登録・購入・発送などのイベントやShopifyアプリ側のイベントをトリガー(発動条件)にして、Shopify内のデータで条件分岐を作り、タグ付与・削除やメタフィールドへのデータ追加などのShopify上のアクションや、Shopifyアプリ側でのアクションをノーコードで実現できるアプリです。
詳しくはこちらの記事をご一読ください。
※有料アプリの利用もアリな場合は、Matrixifyでのエクスポートがおすすめ
Shopifyの顧客データを出力するには、大まかに下記3つの方法があります。
- Shopify公式のエクスポート機能を使う方法
- Shopifyアプリ「Matrixify」を使う方法
- Shopifyアプリ「Shopify Flow」のスケジュールトリガーを使う方法
Shopify公式のエクスポート機能を使うと、Shopify顧客管理からすぐにエクスポートできますが、API経由でしか取得できないメタフィールドなどの顧客情報は出力できません。
※ Shopify公式のエクスポート機能で出力可能な項目は「姓名 / メールアドレス / マーケティングメール同意の有無 / 会社 / 住所 / 支払合計額 / 注文数 / 顧客タグ / 顧客メモ / 免税の有無」です。
一方、Shopifyアプリ「Matrixify」を使う方法では、メタフィールドやその他の情報を含んだデータをエクスポートできます。「Matrixify」を使った顧客情報の出力方法は、下記の記事内で紹介しています。
「Matrixify」は操作が簡単で出力スピードも速くおすすめですが、10ユーザーを超えたエクスポートには有料プランを使う必要があります。
そこで本記事では、「メタフィールドなどのデータを、無料でエクスポートする方法」として、無料アプリ「Shopify Flow」での設定方法を解説していきます。
「メタフィールドに保存しているLINEのユーザーID を抽出する」例で、Shopify Flowを使った顧客データのエクスポート方法を解説
ここから具体的な手順を解説していきます。
弊社のアプリ「CRM PLUS on LINE」が顧客情報のメタフィールドにLINEのユーザーIDを格納しているので、「メタフィールドに保存しているLINEのユーザーID を抽出する」例で解説しますが、顧客に紐づいた情報であれば他のデータの出力にもご利用いただけます。
Shopify Flowでのワークフロー 設定イメージ
今回設定するShopify Flowの完成イメージはこちら(下図)です。
顧客にタグが付与されるとワークフローが作動し、その付与されたタグがあらかじめ指定したタグである場合に、該当顧客の情報をGoogle Sheetsへ出力する流れです。
続いて、このワークフローの設定手順をひとつひとつ解説していきます。
手順1:顧客タグ付与トリガーの設定
顧客タグ付与トリガーを利用して、タグが付与されたタイミングでワークフローを実行したいので、Shopify公式の提供する「Customer tags added」をトリガーに指定します。
手順2:条件(Condition)の設定
手順1で設定した「顧客タグ付与トリガー」は、全ての顧客タグの付与タイミングで発火するので、エクスポートしたいデータを絞り込むためのタグを指定します。
「基準を追加」から Returned Data > Tags を追加すると、トリガーを発火させた顧客タグを確認できます。
「Tags_item」には、エクスポートしたいデータを絞り込むためのタグを指定します。この際、他で利用されたことがない単語を定義するようにしてください。上記画像の例では”sheetAdd”と指定しています。
手順3:アクション(Add row to spreadsheet)の設定
「Google Sheets for Shopify Flow」から提供されているアクション「Add row to spreadsheet」を指定します。
「Spreadsheet URL」には出力先となるGoogle SheetsのURLを入力し、「Tab name」ではSheet内のどのタブに出力するかを指定します。
「Row contents (comma separated)」 では出力したいデータを指定します。基本的には画面右下の「変数を追加」から探して指定します。
上記画像の例では、ユーザーのShopify IDとメタフィールドの値を出力しています。
{{customer.id}} がShopify IDを指定したもので、{% for metafields_item in… から始まるものが、メタフィールドの中でもNamespaceやKeyを特定のものに指定して出力する変数です。
上記画像内ではCRM PLUS on LINEがLINEのユーザーIDを格納しているメタフィールドsocialplus.lineを指定しています。
{% for metafields_item in customer.metafields %}{% if metafields_item.namespace == '[namespace]' %}{% if metafields_item.key == '[key]' %}{{ metafields_item.value}}{% endif %}{% endif %}{% endfor %}
内容を変更することで、他のメタフィールドも指定可能です。上記変数の [namespace]、[key]の部分を任意のものに置き換えてご利用ください。
※初めてAdd row to spreadsheetを使う場合の注意点
初めてGoogle Sheetsのアクションを設定する時には、先にGoogleアカウントとの連携が必要です。「連携」ボタンをクリックし、許認可画面で許可をして連携を完了させてください。
手順4:ワークフローのテスト実行
ワークフローを「オン」にして、試しにご自身のアカウントなどに手動でタグを付与してみてください。
トリガーが発火し、Google Sheetsに出力されていたら設定完了です。
手順5:エクスポートしたい顧客に一括タグ付与して、ワークフローを実行
エクスポートしたいデータの対象アカウントに、手順2で設定した文字列のタグを一括で付与することで、ワークフローを実行させます。
例えば、Shopifyアプリ「CRM PLUS on LINE」ではLINE連携しているアカウントに顧客タグ”line”を付与しているので、顧客セグメント機能で customer_tags CONTAINS ‘line’ と検索すると、LINE連携しているアカウントを絞り込めます。
アカウントを一括で選択し、上記画像右下の「•••」メニューから「タグを追加」を選択することで、一括でタグを付与できます。
手順2で設定した文字列(本記事の例では”sheetAdd”)を設定するとワークフローが実行され、Google Sheetsにデータがエクスポートされます。
終わりに
弊社ソーシャルPLUSでは、(LINE活用に関する)Shopify Flowの構築・活用サポートも行っています。お困りの際はぜひお気軽にご相談くださいませ。