【Shopify Flow活用】LINEが届かない…?スケジュール実行を使う際のよくある失敗例と解決策

2023年1月にShopify Flowの新しいトリガー「スケジュール実行機能」がリリースされて以降、LINEのメッセージ配信を絡めたワークフローの事例もいくつかでてきました!

ただ、設定漏れなどにより「ワークフローを動かしたけど、実際にはLINEのメッセージが送られていなかった」「同じお客様に複数回LINEのメッセージが送られてしまった」という問い合わせもありました。

今回は、Shopify Flowのスケジュール実行機能の仕様も含めて、よくある失敗事例や対策について解説していきます。

スケジュール実行機能を使ったワークフローを構築する際には、事前に目を通しておくことをおすすめします!既にワークフローを作成されている場合は、設定漏れが無いか、今一度ご確認ください。

Shopify Flowのスケジュール実行機能とは

Shopify Flowのスケジュール実行機能とは、構築したワークフローを特定の日時に動かすようスケジュールできる機能です。「毎月◯日」「◯時間ごと」といった予め設定したスケジュールに従って、Shopify上のデータを取得し、「各データに対してタグ付けをする」「LINEのメッセージ配信をする」といったアクションを実行できます。

詳しくは下記記事でも解説されています。

Shopify Flowのスケジュール実行機能を使ってできること

スケジュール実行機能は、Shopify上の商取引イベント(商品が購入された、商品を発送した、在庫が復活したなど)に関係なく、指定した日時にワークフローを実行できます。

例えば、下記のようなワークフローによって、業務自動化を実現できます!

  • 毎日、2 日以上経過した未発送の注文を取得する
  • タグを使用して、過去 6 か月間の注文に基づいて顧客をセグメント化する
  • 毎日、在庫切れの製品を取得し、メールで通知する

テンプレートとして公開されているものもありますので、Shopify Flowの画面で「テンプレートを閲覧」から “Schedule” と検索してみてください。

Shopify Flowの画面:「テンプレートを閲覧」から “Schedule” と検索
Shopify Flowのテンプレート検索画面:検索窓で「Schedule」と検索

LINEを絡めたユースケースについては下記記事で紹介していますので、こちらもぜひ併せてご覧ください。

発生しがちな失敗事例と解決方法

実際に、設定が漏れたり誤ったりしていた場合、どのような事象が発生するのか、具体例を元に解決方法と合わせて解説していきます。

事象1|検索クエリの設定ミスにより、複数回、同じ人に同じ内容のLINEが配信されてしまう

スケジュール実行機能でLINEのメッセージ配信を行う際は、「Get customer data」で顧客データを取得して、検索クエリで合致した顧客に対して1件ずつ処理を繰り返し行います。

重複配信しないようにするには、

  1. LINEのメッセージ配信をしたら顧客タグを付与する
  2. Get customer dataのクエリで (1) の顧客タグを除外する

というワークフローにする必要があります

例えば、

  • LINE連携している
  • 「7月誕生日」の顧客タグが付与されている
  • BD クーポンをまだ配信していない

という条件の顧客に対して誕生日クーポンを送る場合、以下のようなワークフローになります。

誕生日クーポンを送る場合のワークフロー完成図
ワークフローの完成図

詳細は「事象3」の章で解説しますが、スケジュール実行の間隔が短すぎると、ワークフローが正常に動作しない可能性があります。最低でも30分程度の間隔を空けておくと安心です。上記の完成イメージでも、実行間隔を30分空けて設定しています。

Get customer dataのクエリは以下のように設定します。

Get customer dataのクエリを編集し設定
Get customer dataのクエリ編集画面

末尾の AND NOT tag:”BD-coupon-sent:2023年7月” が漏れてしまった場合、同じ人に重複して配信されてしまいます。 重複配信を避けたい場合は、忘れず設定しましょう。

事象2|配信対象者が100名以上いるのにスケジュールの設定ができておらず、LINEが配信されない

「Get customer data」のアクションでは、何件の顧客データを処理するかを設定する箇所があります。

Get customer dataで処理する件数を指定
Shopify Flowのアクション設定画面:処理する件数を指定する箇所

画面内で「Enter the maximum number of customers to get, up to 100.」と記載されている通り、1回のスケジュールで取得できる数は100件までです。

For each loop (iterate) で処理できる件数が1回あたり100件までなので、このような上限が設けられています。

デフォルトでは10件で設定されています。最大件数を処理できるように「100」と入れておきましょう!

条件に合致する顧客が100名以上いると見込まれる場合は、

  • 「スケジュールを追加」のボタンから複数個のスケジュールを設定する
  • 複数回実行されるように繰り返しの設定をする

のいずれかの方法で、ワークフローが複数回実行される状態にしてください。

※「事象1」で触れたのと同様に、スケジュール実行の間隔が短すぎると、ワークフローが正常に動作しない可能性があります。最低でも30分程度の間隔を空けておくと安心です。詳細は「事象3」の章で解説します。

複数のスケジュールを設定
「スケジュールを追加」ボタンで、複数のスケジュールが設定されている状態
繰り返しと終了を設定
繰り返しと終了が設定されている状態

例えば、先程設定した検索クエリ( tag:”line” AND tag:”7月誕生日” AND NOT tag:”BD-coupon-sent:2023年7月” )で、合致する顧客が200〜300名いるとします。

この場合は、「処理件数の上限を100件にしてスケジュールを3つに設定する」または「ワークフローが3回繰り返し実行される」設定をしておけば、合致する全ての顧客にLINEのメッセージ配信をすることができます。

しかし、スケジュールが1つのみで繰り返しも設定されていなかった場合、100人までは処理できますが残りの200人は処理されず、送信漏れが発生します。

条件に合致する顧客数は、Shopifyの顧客管理のセグメント機能を使って確認できます。どれくらいのスケジュール設定が必要になるか、事前に確認しておくことをおすすめします。

※注意:Get customer dataの検索クエリとは少し書き方が異なります。

事象3|設定したスケジュールの間隔が短すぎて、複数回、同じ人に同じ内容のLINEが配信されてしまう

事象1事象2が合わさった内容ですが、設定したスケジュールの間隔が短すぎることで、複数回、同じ人に同じ内容のLINEが配信されてしまうこともあります。

事象2の章で、「条件に合致する顧客が100名以上いると見込まれる場合は、以下のいずれかの方法で、ワークフローが複数回実行される状態にしてください」とお伝えしました。

  1. 複数回実行されるように繰り返しの設定ををする
  2. 「スケジュールを追加」のボタンから複数個のスケジュールを設定する

1. の繰り返しの設定を使う場合は、時間 / 日 / 週 / 月 のいずれかで設定します。最短の繰り返し期間は「1時間ごと」です。

しかし、条件に合致する顧客が多い場合(1,000人以上など)、繰り返し期間を1時間ごとに設定すると、当日中にLINEを送りきれない場合があります。

ワークフローを1時間より短い間隔(15分・30分ごとなど)で繰り返し実行させたい場合は、2. の方法で対応する必要があります。

それぞれのスケジュールは、極端な話「1分ごと」に設定することも可能ですが、各アクションは1件ずつ処理されるため、実行には少し時間がかかります。

そのため、間隔が短いと、処理が終わらないまま次のスケジュールが実行されて、同じ人に同じ内容のLINEが届いてしまうということが発生します。

1分ごとにスケジュールを追加した例
1分ごとにスケジュールを追加した例(処理が終わらないまま次のスケジュールが実行されてしまう可能性があります)

ワークフローの内容にもよるため、一概に「1回の実行は◯分で終わります」と言い切れませんが、最低でも30分程度の間隔を空けておくと安心です。

30分ごとにスケジュールを追加した例
30分ごとにスケジュールを追加した例

事象4|予定時間から大幅にズレた時間にLINEが配信されている

スケジュール設定の画面では、Time zone の設定箇所があります。

スケジュール設定画面のタイムゾーン
スケジュール設定画面のタイムゾーン

デフォルトでは、Shopify管理画面 > 設定 > ストアの詳細 > [タイムゾーンと測定の単位] で設定されているタイムゾーンが入っています。

タイムゾーンの設定画面
タイムゾーンの設定画面

例えば、本社がアメリカのマーチャント様で、ストアのタイムゾーンが (GMT-08:00) 太平洋標準時 (アメリカとカナダ) になっている場合、日本時間との時差により想定した時間にワークフローが動かないという事象が発生します。

日本時間でワークフローを実行する場合は、 (GMT+09:00) Osaka に設定してください。

また、時間表記は am / pm 表記です。こちらも間違えないように注意しましょう。

am / pmでの時間表記
am / pm での時間表記

事象5|Send HTTP requestの失敗により、それ以降のアクションが行われない

最後は少しマニアックな内容 かつ LINEのメッセージ配信からは少し離れてしまいますが、「Send HTTP request」というアクションを使う際に見逃しがちなポイントです。

Shopify Flowには、Send HTTP request というアクションが用意されており、このアクションを使うことで外部ツールとAPI連携を行えます。

以下の画像では、下記処理を行っています。

  • 条件に合致する顧客データを、日次で外部のMAツールにAPI経由で同期する
  • データの同期が完了したら、顧客タグを付与する
Send HTTP requestを使ったワークフローの完成図
Send HTTP requestを使ったワークフローの完成図

ここでの注意点としては、Send HTTP request のアクションを設定する順番です。

以下のように、先に Send HTTP request のアクションを設定し、その後に Add customer tags のアクションを設定した場合、HTTP Request でエラーが発生するとそれ以降に設定しているアクション(今回は Add customer tags)が実行されず、ワークフローが終了します。

誤った順番で設定したワークフロー
誤った順番で設定したワークフロー(先にSend HTTP request を実行し、後からタグ付けを行っている)

スケジュールトリガーでSend HTTP request のアクションを使う場合には、一番最後のアクションとして設定すると良いでしょう。

まとめ

今回は、Shopify Flowのスケジュール実行機能を使う際に見落としがちな設定や、仕様を改めてまとめてみました。

弊社が提供する Shopifyアプリ「CRM PLUS on LINE」はShopify Flowに対応しており、一部のLINE配信を自動化することも可能です。

スケジュール実行機能のリリースにより活用の幅も広がっていますので、「このシナリオは実現可能か」「設定方法を教えてほしい」などございましたら、お気軽にご相談ください!

お問い合わせはこちら:https://crmplus.socialplus.jp/inquiry

また、Shopify Flow × LINE の記事のノウハウ記事は下記にまとめています。こちらもぜひ併せてご覧ください!

タイトルとURLをコピーしました