Shopify Flowの「Get customer data」について

Topic summary

ユーザーが特別ポイント付与後15日以内に購入がなかった顧客へリマインドメールを送るため、Shopify Flowの「Get customer data」機能でクエリを作成しようとしているが、書き方が分からず質問。

提案された解決策:

  • 15日間購入していない顧客を抽出するクエリは -order_date:>='{{ scheduledAt | date_minus: "15 day" }}' で可能
  • ただしこの方法では特別ポイント付与者以外も対象になるため、顧客タグで絞り込む必要がある
  • Get customer dataを使う場合、次のアクションはfor loopにする必要がある

追加の指摘:

  • フローのトリガーと前段階のアクションが不明
  • すでにfor loopで個別顧客を処理中なら、Get customer dataは不要で「条件」アクションでlastOrderのcreatedAtを判定する方がシンプル

状態: 実装方法の確認待ち

Summarized with AI on October 27. AI used: claude-sonnet-4-5-20250929.

現状、特別ポイントの付与をShopify Flowを用いて行っています。

上記のように付与後15日以内に購入がなかったユーザーにはリマインドのメールを送りたいと考えています。

「Get customer data」を使用すればできると思うのですが、

クエリの書き方が理解できていません。

customer_date:>='{{ scheduledAt | date_minus: ’15 day’ | date: ‘%s’ | plus: 32400 | date: ‘%Y-%m-%d’}}’

が現在記述している内容です。

詳しい方がいらっしゃいましたら教えていただきたいです。

@mimu-iida

15日前から注文していないお客様ということで、合っていますか?

であれば下記のようになるはずです。

-order_date:>='{{ scheduledAt | date_minus: "15 day" }}'

これで、15日間以内に購入していないお客様、という条件になるはずです。

しかし、

この方法ですと、

特別ポイントが付与されたお客様に限らず、

15日間以内に購入していないお客様はすべて対象になってしまいます。

特別ポイントが付与されたお客様に限定するのであれば、

何かしら顧客タグをそのお客様に付与し、

そのタグでも絞り込むようなクエリにされた方が良いです。

また、

Get customer dataを利用するのであれば、

次のアクションはfor loopにしなければ、

データを処理できないかと思います。

もう1点、気になっておりまして、

添付いただいたフローが途中からのものになっていますが、

どのトリガーを利用し、どのようなアクションを経ていますか?

もし、このフロー自体が、for loopを経ていて、すでに一人の顧客を対象にしたアクションを実行中であるなら、

Get customer dataは不要でして、

シンプルに「条件」で、lastOrderのcreatedAtが、15日以内かどうかを判定されるのが良いかと思います。

ご参考まで。

(キュー田辺)