
誕生日クーポン配信は人気施策のひとつですが、「誕生月の月初」や「誕生月の前月の◯日」など、配信タイミングは一律にしているケースも多いかと思います。お客様の手元に届く多くの誕生日クーポンの中から一歩抜きん出るために、配信タイミングをお客様ごとにパーソナライズしてみるのはいかがでしょうか。
例えば誕生日が近づいた時に誕生日クーポンが送られてくると、実際に使わなかったとしても嬉しいと思うんです。タイミングとしても、誕生月の1日に機械的に送られてくるよりは、自分の誕生日を認識してくれている状態で、個別に届いた方が嬉しい。こういうちょっとした「嬉しい」体験を作ることはできないかなと考えたときに、CRM PLUS on LINEを見つけました。
引用元:少数チーム × 分析 × 徹底した顧客目線で「一歩先」の体験をつくる Knuth MarfのLINE連携施策
本記事では、Shopifyの顧客セグメンテーション機能の特性を利用し、「誕生日の15日前にLINEで誕生日クーポンを配信し、後日未利用者にだけLINEでリマインドする」という施策を実現する方法を解説します。
下記記事でも解説した通り、ユーザーごとにクーポンの利用資格を制御することも可能です。実際に弊社のお客様のストアでも複数回実装した実績のある方法ですので、ぜひ参考にしてみてください!
大まかな流れと前提条件
「誕生日の15日前にLINEで誕生日クーポンを配信し、後日未利用者にだけLINEでリマインドする」という想定でご紹介します。
大まかな流れ
- 誕生日クーポンの対象となるお客様セグメントを作成する
- 1 のお客様セグメントに追加されたユーザーにLINEで誕生日クーポンを配信し、さらに一定期間後にクーポンを利用していない方にはLINEでリマインド配信するワークフローを設定する
- 誕生日クーポンを利用したユーザーに、”使用済み”であることを示す顧客タグを付与する
前提条件
- Shopifyでストアが構築されていること
- Shopifyアプリ「Flow」と「CRM PLUS on LINE」が導入されていること
- 誕生日情報が顧客のメタフィールドに格納されていること
下記記事で紹介している
も利用します。こちらを先に読んでいただくと、理解がスムーズになるかと思いますので、できればぜひ併せてご一読ください。設定手順
誕生日クーポンの対象となるお客様セグメントを作成する
まずは、誕生日クーポンの対象とする範囲をお客様セグメントとして設定します。本記事では誕生日の前後15日を日付範囲としていますが、任意の範囲に変更することも可能です。
お客様セグメントとディスカウントを作成する
Shopify管理画面 > 顧客管理
にて から、お客様セグメントの条件を指定します。

anniversary ('metafields.crmplus.birthday') BETWEEN -15d AND +15d
AND customer_tags NOT CONTAINS 'birthday_coupon_used_2025'
今回は、顧客の誕生日
の前後15日 を対象期間としています。
参考マニュアル:顧客メタフィールドを定義する方法 | CRM PLUS on LINE
に続く文字列は、誕生日が格納されているメタフィールドの定義を記載します。 (上記例では を指定) - 対象期間に関しては、前後15日以外を指定する場合は の箇所を希望の期間に変更してください。
- 一度誕生日クーポンを利用した人をクーポンの利用対象から除外するために、顧客タグ が付与されていない( )ことをお客様セグメントの条件としています。こちらのタグの付与は、本記事 手順3 で解説するワークフローでおこないます。
お客様セグメントの条件を入力したら、「セグメントを保存する」から任意のセグメント名を入力し、右下の「保存」ボタンをクリックします。

ディスカウントを設定する
にて本施策用のディスカウントを作成します。
ディスカウント方法は「クーポンコード」とし、任意の割引率や要件を指定してください。
お客様の資格設定で「特定のお客様セグメント」を指定し、手順1-1 で作成したお客様セグメントを選択してください。

お客様セグメントの条件で利用資格を制限できるため、もしお客様同士でクーポンコードを共有されてしまったとしても、条件に合致したお客様しかクーポンを使えないよう制限されます。
したがって、クーポンコードに指定する文字列は
など覚えやすい文字列で問題ありません。お客様セグメントに追加されたユーザー(配信対象となったユーザー)にLINEで誕生日クーポンを配信し、さらに一定期間後にクーポンを利用していない方にはLINEでリマインド配信する
手順1 で作成したお客様セグメントにユーザーが追加されたら、LINEで誕生日クーポンメッセージを配信し、さらに一定期間後にクーポンを利用していない方にはLINEでリマインド配信するワークフローを設定していきます。
Shopifyアプリ「Flow」で設定するワークフローの完成イメージは下記の通りです。

ワークフローの大まかな流れを解説します。
ユーザーが、手順1-1で作成したセグメントの対象に追加された( Customer joined segment )
↓
配信時間まで待機( Wait for 10 hours )
↓
LINEのID連携がされていたら( 条件:顧客タグ"line"を含む )、LINEでクーポンメッセージを配信( LINEでFlexメッセージを送る )
↓
20日待機( Wait for 20 days )
↓
ユーザーがまだセグメントの対象に残っていたら( Look up customer in segment )(is member = true)
↓
LINEでリマインドメッセージを配信する
それでは、ワークフローの各手順を順番に解説していきます。
トリガー:顧客がセグメントに追加された( Customer joined segment )

ワークフローを起動するためのトリガーは、特定のセグメントに顧客が追加されたら発火する「Customer joined segment」を選択します。手順1で作成したお客様セグメントを指定します。
アクション:待機( Wait )

(当たり前のことですが)日付は毎日0時に切り替わります。したがって、日付を条件としているセグメントには0時の時点でユーザーが追加されるのですが、夜中にLINEメッセージが届くのは迷惑かと思いますので、日中まで待機しましょう。
今回は、朝の10時にLINEクーポンを配信すると想定して、10時間待機しています。
条件:LINEのID連携済みユーザーである
今回の方法で配信対象に指定できるのは、CRM PLUS on LINEを通じてLINEのID連携がされている顧客です。CRM PLUS on LINEを通じてID連携した顧客には自動で
という顧客タグが付与されているため、これを条件として指定します。
を選択し、”次ものと一致する”で と入力します。
「その場合(条件に合致する場合)」を選択して、次のアクション(LINEでFlexメッセージを配信する)に接続します。
アクション:LINEでFlexメッセージを配信する
CRM PLUS on LINEの「LINEでFlexメッセージを送る」アクションを選択します。

“顧客ID”欄には
を、”代替テキスト”欄にはアプリ通知やトークリストで表示するテキストを入力します。”Flex Messageのコンテナ”欄には、配信するメッセージの内容をJSONコードで入力します。JSONコードには馴染みのない方も多いかと思いますが、下記にて誕生日クーポン用のテンプレートもご用意しています。ぜひご利用ください!
アクション:待機( Wait )

誕生日クーポンを配信した後に再度リマインド配信を行うまで、何日間待機するかを設定します。
今回の例では、クーポンの対象期間を誕生日の前後15日で指定している(全体の期間は30日間)ため、クーポンの利用期間が残り10日のタイミング(誕生日の5日後)でリマインドすることを想定して
の待機を設定しています。アクション:顧客がセグメントに存在するか確認 ( Look up customer in segment )
20日間待機した後に、アクション「Look up customer in segment」を使用して、ユーザーがセグメントに存在するか(誕生日クーポンの利用対象かどうか)最新の状況を確認します。

「Look up customer in segment」アクションは、ワークフローが発火している対象ユーザーが指定したセグメントに存在するかを確認して、その結果を
というデータで (セグメントに存在する)/ (セグメントに存在しない)で返してくれます。条件:セグメントに存在する場合(まだクーポンの利用対象セグメントに残っている = クーポンを未利用の場合)
条件ブロックを追加し、一つ前のアクション「Look up customer in segment」で確認した結果を条件に指定します。

これまでは条件に表示されていなかった「Look up customer in segment」から返ってきたデータが表示されるようになっているので、
を選択して を選択します。
アクション:LINEでFlexメッセージを配信する
手順2-4 と同様に、LINEで配信するメッセージを設定します。

設定したクーポン対象期間に応じて、リマインドの内容に「あと〇〇日で終了です!」と言った文言を入れると親切ですね。
誕生日クーポンを利用したユーザーに”使用済み”であることを示す顧客タグを付与する
手順1 のセグメント内で指定した (誕生日クーポンを利用したユーザーであることを示す顧客タグ) を付与するためのワークフローを作成していきます。

上記ワークフローの大まかな流れを解説します。
ユーザーが注文を作成した( Order created )
↓
その注文で誕生日クーポンコードが使用されているか確認 (条件:discountCodeにbirth2025を含む )
↓
クーポンを使用している場合は、使用済みであることを示す顧客タグを付与する ( Add customer tags )
トリガー:顧客が注文を作成しました( Order created )
ワークフローを起動するためのトリガーは、顧客が注文を作成したときに発火する「Order created」を選択します。

条件:誕生日クーポンを使用している場合( ディスカウントコードを使用済みの場合 )
条件ブロックを追加し手順1-2 で作成したクーポンコード が含まれているかを確認します。
を指定して、その注文で使用されているクーポンコードに、
「その場合」を選択して、顧客タグを付与するアクションに接続します。
アクション:顧客にタグを付与する( Add customer tags )
誕生日クーポンコードを使用したことを示す顧客タグ
を付与します。
こちらのタグが付与されることで、手順 1-1 で指定したセグメントの条件から除外されるようになります。
終わりに
誕生日クーポン施策は、2回目購入の促進や休眠間近のユーザーに再度サイトを見ていただくための施策としてこれまでも多くのストアで実施されており、効果を実感いただいている施策です。
本記事に登場したShopify Flowの「Customer joined segment」トリガーと「Look up customer in segment」アクションは、どちらもFlowでワークフローを設定する上で重要な働きをするので、今回ご紹介できてよかったです。もし「まだ触ったことがない」という方は、ぜひこれを機会に試してみてください!