FROM CACHE - jp_header

webhookに頼らずに購入を検知したい

pubron
遊覧客
18 0 4

storefrontAPIを利用しフロント開発を行っております。

ユーザーが購入した際、購入金額のチェックや通知を届けるためにwebhookを利用しています。

応答が8時間ほど遅れたことがあり障害かと思ったのですが

Communityでのやりとりを調べてみたところ、webhookの応答時間が保証されていないという投稿がありました。

「webhookに頼る設計とすべきではない」ということのようなのですが

Checkoutの状態を定期的に見に行く方法など、ユーザーの購入を検知する実装方法は他にあるのでしょうか?

 

以下参考とした投稿です

https://community.shopify.com/c/%E6%8A%80%E8%A1%93%E7%9A%84%E3%81%AAq-a/webhook%E3%81%AE%E5%BF%9C%E7...

https://community.shopify.com/c/technical-q-a/delayed-webhooks/td-p/1505654

 

2件の返信2

Qcoltd
Shopify Partner
1049 428 412

Shopifyのアプリ開発に詳しい方からの回答をお待ちいただいた方が良いかと思いますが、

思いついた方法があったので、念のためお知らせいたします。

 

Shopifyの月額が上がってしまいますが、

Shopifyのスタンダードプランか、プレミアムプランを契約して、

Shopify Flowを使用すれば実現できるかもしれません。


Shopify Flow

https://help.shopify.com/ja/manual/shopify-flow

 

Shopify上のイベントをトリガーにしたアウトプットが可能になります。

 

アウトプット先として、アプリを指定することも可能です。

こちらのページにアプリにShopify Flowを追加する方法が簡単にですが記載されています。

https://shopify.dev/apps/flow#build-a-connector

 

また、

外部サービスへのHTTP WebHook呼び出しを行うこともできます。

https://help.shopify.com/ja/manual/shopify-flow/reference/actions

 

私自身は開発したアプリやWebhookとの連携は試しておりませんが、

商品在庫が0になった時に、指定のアドレスに通知を飛ばすFlowを組んでいます。

印象で恐縮なのですが、

商品購入と在庫0通知のタイミングに大きな遅れを感じたことはありません。

 

しかし、あくまで印象なので、もしかしたら、

Shopify Flowでも遅れが発生することがあるかもしれませんので、

あくまで1つのアイデアとしてお気に留めていただければと思います。

 

ご参考まで。

(キュー田辺)

 

株式会社Q (キュー)
グラフィックデザイン、アパレル事業、Web制作など色々やっている渋谷区代々木の会社です。ShopifyでのECサイトの運営・開発も行なっています。
私たちについて: https://web.q-co.jp/ テックブログ: https://techlab.q-co.jp/
pubron
遊覧客
18 0 4

@Qcoltd さま

ご回答ありがとうございます!

Shopify Flowというものがあるのですね。選択肢のひとつとして大変参考になります!

 

ベーシックプランでの利用を考えているので、他にも方法が無いか探してみます。

APIを見た感じだと一定時間ポーリングで顧客情報中のOrder情報を見に行くしか無いかな・・と思っているところです。