【アーカイブ動画】イベント「AWSとReactで始めるShopifyアプリ開発」を開催しました #shopifyjpmeetup

2020/12/17(木)に開催した「AWSとReactで始めるShopifyアプリ開発」にて発表させて頂いた、「EventBridgeでAWSとShopifyの統合」の発表内容をまとめました。
2020.12.23

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、クラスメソッドの岡です。

記事を出すのが遅くなってしまいましたが、2020/12/17(木)にAWSとReactで始めるShopifyアプリ開発というイベントをShopifyさんと共催で開催しました!

改めてご参加いただいた方、イベントの企画をして頂いたShopifyの岡村さん、運営を手伝って頂いた弊社マーコム部の皆さん、タイトルを回収する充実した内容で登壇して頂いたNRIデジタルの倉澤さん、本当にありがとうございました。

アーカイブ動画をこちらの記事にのせておきます。 私も「EventBridgeでAWSとShopifyの統合」というタイトルで発表させて頂いたので、資料も併せてのせておきます。

アーカイブ動画

スライド

ちなみに発表時よりも少し内容を追記しています。

発表内容

EventBridgeとは?

AWSが提供するサーバーレスイベントバスサービスです。 EventBridgeを利用するとAWSのサービス、独自アプリ、外部のSaaSのイベント(Webhook)を簡単に受け取れるようになります。
EventBridgeを利用するメリットとしては、フルマネージドのサービスなので可用性を維持しながら構築コスト・ランニングコストを抑えることができます。

Shopifyのアクター

  • マーチャント
    • ショップの運営者/販売者
  • パートナー
    • アプリの開発者

Shopifyアプリ

前提として、EventBridgeと統合するのはショップ単位ではなく、Shopifyアプリ単位です。 Shopifyのアプリの種類はいかの3種類です。

  • パブリックアプリ
  • カスタムアプリ
  • プライベートアプリ(ストア管理画面上で作成されるアプリ)

プライベートアプリではEventBridgeとは統合できません。

統合手順

  1. Shopifyアプリを用意する
    1. 検証の場合はカスタムアプリ
    2. 一番手軽なのはShopify App CLI
  2. ストアにShopifyアプリをインストールする
  3. ShopifyアプリからEventBridgeにパートナーイベントソースを作成する(Shopifyアプリ設定画面からワンクリックで実行可能)
  4. 作成されたEventBridgeのイベントソースをイベントバスに関連付ける
  5. EventBridgeのルールを作成する
  6. ShopifyのAdmin APIでショップ側のwebhookを登録する

さらに具体的な統合手順をブログにて事前に公開しています。
実際に試す際には下記をご覧いただければと思います。

ユースケース

  • 新規注文: 商品の在庫数がN個を切ったら通知する
  • 新規注文: AWS上のポイントシステムに連携する
  • 新規注文: AWS上の配送システムに連携して自動出荷する
  • 商品登録: 商品の画像解析してタグを自動追加する(AWS公式チュートリアル)

注意点

  • EventBridgeでは稀にイベントが重複する可能性があるので、アプリケーション側で重複排除の処理を実装する必要がある
  • 多少タイムラグが発生するので遅延を許容できるケースのみ利用する

まとめ

  • ShopifyのイベントをEventBridgeで受け取ってコスパ良くAWS上のシステムと連携しよう
  • EventBridgeとの統合のためにはShopifyのカスタムアプリor公開アプリを準備しよう

最後に

今回250名以上の方に申込みいただき、質問もたくさん頂きましてありがとうございました。
アンケート答えてくださった方も、ありがとうございます!
今後もイベントを開催する予定ですので、また改めて周知させていただきます。