Shopify標準統合セットアップ
このページでは、Shopifyオンラインストアを使用するユーザー向けの標準統合を使用して、BrazeとShopifyを統合する方法について説明します。Shopifyヘッドレスサイトを使用する場合、またはよりカスタマイズされたソリューションを実装する場合は、Shopifyカスタム統合セットアップを参照してください。
ステップ1: Shopifyストアを接続する
- Brazeで、パートナー連携 > テクノロジーパートナーに移動し、「Shopify」を検索します。
- Shopifyパートナーページで、Begin setupを選択して連携プロセスを開始します。

- Shopifyアプリストアで、Brazeアプリケーションをインストールします。


Shopifyアカウントが複数のストアに関連付けられている場合、ヘッダーのストアアイコンを選択し、Switch storesを選択することで、ログインしているストアを変更できます。
- Brazeアプリをインストールした後、Brazeにリダイレクトされ、Shopifyに接続するワークスペースを確認します。Shopifyストアは1つのワークスペースにのみ接続できます。切り替える必要がある場合は、正しいワークスペースを選択してください。

- Begin setupを選択します。

ステップ2:Braze Web SDKを有効にする
Shopifyオンラインストアの場合、標準セットアップを選択して、Braze Web SDKとJavaScript SDKを自動的に実装できます。

標準セットアップのオンボーディングパスを選択した後、BrazeがSDKを初期化して読み込むタイミングを以下のオプションから選択する必要があります。
- サイト訪問時(セッション開始時など)
- 識別済みユーザーと匿名ユーザーの両方を追跡します
- アカウント登録時(アカウントログイン時など)
- 識別済みユーザーのみを追跡します
- サイト訪問者がアカウントに登録またはログインした時点からデータの追跡を開始します

新規顧客には、セットアップ時に最新のBraze Web SDKおよびJavaScript SDKバージョンがプロビジョニングされます。既存の顧客は、連携設定で現在のSDKバージョンを確認し、新しいバージョンが利用可能になった際に通知を受け取り、連携設定からセルフサービスでアップグレードできます。
ステップ3:Shopify データを設定する
標準データ設定

この連携では、BrazeがWebhookを正しいユーザープロファイルに一致させるために、ユーザーエイリアスは以下の形式を使用する必要があります。
alias_label:shopify_cart_${cartToken}alias_name:shopify_cart_token
トラッキングする Shopify データを選択します。
![]()
以下のイベントは、標準連携ではデフォルトで有効になっています。
| Braze 推奨イベント | Shopify カスタムイベント | Shopify カスタム属性 |
|---|---|---|
|
|
|
連携を通じてトラッキングされるデータの詳細については、Shopify データ機能を参照してください。

Shopify連携は、Shopifyの顧客作成と顧客更新のWebhookをサポートしています。これらはデータ設定の構成設定にあります。Shopifyでユーザープロファイルが作成または更新されると、対応するBrazeのユーザープロファイルも作成または更新されます。
これらのアクションはBrazeでカスタムイベントをトリガーせず、ShopifyのユーザーデータをBrazeと同期するためだけに使用されます。同期されるデータには、カスタム属性、標準属性項目、および設定内で有効にされている場合は購読グループの状態が含まれます。
過去データのバックフィル設定
Shopify データのトラッキングステップで、初期の過去データ読み込みを連携の一部として含めるチェックボックスを選択します。
インポートされる内容、収益レポートの動作、設定のスクリーンショット、およびアクティブなキャンペーンやキャンバスですでに Braze を使用している場合のガイダンスについては、過去データのバックフィルを参照してください。
(上級)カスタムデータトラッキング設定
Braze SDKを使用すると、この連携の標準イベント以外のカスタムイベントやカスタム属性をトラッキングできます。カスタムイベントは、以下のようなストアでのユニークなインタラクションをキャプチャします。
| カスタムイベント | カスタム属性 |
|---|---|
|
|
カスタムデータのトラッキングにより、ユーザーの行動に対するより深いインサイトが得られ、追加のパーソナライゼーションをサポートします。カスタムイベントを実装するには、theme.liquid ファイルでストアフロントのテーマコードを編集する必要があります。開発者のサポートが必要になる場合があります。
たとえば、以下の JavaScript スニペットは、現在のユーザーがニュースレターを購読しているかどうかを確認し、Braze のプロファイルにカスタムイベントとして記録します。
braze.logCustomEvent(
“subscribed_to_newsletter”,
{
newsletterName: ‘News and Offers’,
customerEmail: ‘customer_1@example.com’,
sendOffers: true
}
);
SDKはイベントやカスタム属性を記録するために、ユーザーのデバイス上で初期化(アクティビティをリスニング)されている必要があります。カスタムデータの記録について詳しくは、User オブジェクトおよび logCustomEvent オブジェクトを参照してください。
ステップ4:ユーザーの管理方法を設定する
ドロップダウンからexternal_idタイプを選択します。


メールアドレスまたはハッシュされたメールアドレスをBrazeのexternal IDとして使用すると、データソース間のID管理が簡素化されます。ただし、ユーザーのプライバシーとデータセキュリティに対する潜在的なリスクを考慮することが重要です。
- 推測可能な情報: メールアドレスは推測されやすく、攻撃に対して脆弱です。
- 悪用のリスク: 悪意のあるユーザーがWebブラウザーを改ざんし、他人のメールアドレスをexternal IDとして送信した場合、機密メッセージやアカウント情報にアクセスされる可能性があります。
デフォルトでは、BrazeはShopifyからのメールを自動的に小文字に変換してから、external IDとして使用します。メールまたはハッシュメールをexternal IDとして使用している場合は、メールアドレスも小文字に変換されていることを確認してから、external IDとして割り当てるか、他のデータソースからハッシュしてください。これにより、external IDの不一致を防ぎ、Brazeでの重複ユーザープロファイルの作成を回避できます。

次のステップは、external IDの選択によって異なります。
- カスタムexternal IDタイプを選択した場合: ステップ4.1〜4.3を実行して、カスタムexternal IDの設定を行います。
- Shopify顧客ID、メール、またはハッシュメールを選択した場合: ステップ4.1〜4.3をスキップし、ステップ4.4に直接進みます。
ステップ4.1:braze.external_idメタフィールドを作成する
- Shopifyの管理パネルで、Settings > Metafields and metaobjectsに移動します。
- Customers > Add definitionを選択します。
- Nameに
braze.external_idと入力します。 - 自動生成されたネームスペースとキー(
custom.braze_external_id)を選択して編集し、braze.external_idに変更します。 - TypeでID Typeを選択します。
メタフィールドが作成されたら、顧客に対して入力します。次のアプローチをお勧めします。
- 顧客作成webhookをリッスンする:
customer/createイベントをリッスンするwebhookを設定します。これにより、新しい顧客が作成されたときにメタフィールドを書き込むことができます。 - 既存の顧客をバックフィルする: Admin APIまたはCustomer APIを使用して、以前に作成した顧客のメタフィールドをバックフィルします。
潜在的な競合
Shopifyのcustomers/create webhookは、braze.external_idメタフィールドがユーザープロファイルに書き込まれる前に発火する場合があります。この場合:
- メタフィールドが存在しない場合、Brazeは設定されたエンドポイント(ステップ4.2)を呼び出してexternal IDを取得します。
- その呼び出しも失敗またはタイムアウトした場合、BrazeはShopify顧客IDをexternal IDとして一時的なユーザープロファイルを作成します。
- メタフィールドが存在する後続のイベント(
customers/updateやecommerce.order_placedイベントのorders/createなど)では、Brazeは自動的に不一致を検出し、一時的なプロファイルを正しいexternal IDとマージします。
つまり、一時的な重複プロファイルが発生する可能性がありますが、自動的に修正されます。これらのプロファイルを手動でマージする必要はありません。
ステップ4.2:external IDを取得するエンドポイントを作成する
Brazeが呼び出してexternal IDを取得できる公開エンドポイントを作成する必要があります。これにより、Shopifyがbraze.external_idメタフィールドを直接提供できないシナリオでも、BrazeがIDを取得できます。
エンドポイント仕様
メソッド: GET
Brazeは、次のパラメーターをエンドポイントに送信します。
| パラメーター | 必須 | データタイプ | 説明 |
|---|---|---|---|
| shopify_customer_id | はい | 文字列 | Shopify顧客ID。 |
| shopify_storefront | はい | 文字列 | リクエストのストアフロント名。例: <storefront_name>.myshopify.com |
| email_address | いいえ | 文字列 | ログインユーザーのメールアドレス。 このフィールドは、特定のwebhookシナリオでは欠落している場合があります。エンドポイントロジックでは、ここでのnull値を考慮する必要があります(たとえば、内部ロジックで必要な場合は、shopify_customer_idを使用してメールを取得します)。 |
サンプルエンドポイント
GET https://mystore.com/custom_id?shopify_customer_id=1234&[email protected]&shopify_storefront=dev-store.myshopify.com
期待されるレスポンス
Brazeは、external IDのJSONを返す200ステータスコードを期待します。
{
"external_id": "my_external_id"
}
検証
shopify_customer_idとemail_address(存在する場合)がShopifyの顧客値と一致することを検証することが重要です。Shopify Admin APIまたはCustomer APIを使用してこれらのパラメーターを検証し、正しいbraze.external_idメタフィールドを取得できます。
障害時の動作とマージ
200以外のステータスコードは失敗と見なされます。
- マージへの影響: エンドポイントが失敗した場合(非
200を返すかタイムアウトした場合)、Brazeはexternal IDを取得できません。その結果、ShopifyユーザーとBrazeユーザープロファイルのマージはその時点では行われません。 - リトライロジック: Brazeは標準的な即時ネットワークリトライを試みる場合がありますが、失敗が続く場合、マージは次の該当イベント(例えば、ユーザーが次にプロファイルを更新するかチェックアウトを完了するとき)まで延期されます。
- サポート性: タイムリーなユーザーマージをサポートするために、エンドポイントの高可用性を確保し、オプションの
email_addressフィールドを適切に処理するようにしてください。
ステップ4.3:external IDを入力する
ステップ4を繰り返し、Brazeのexternal IDタイプとしてカスタムexternal IDを選択した後、エンドポイントURLを入力します。
考慮事項
- Brazeがエンドポイントにリクエストを送信した時点でexternal IDが生成されていない場合、
changeUser関数の呼び出し時にShopifyの顧客IDがデフォルトで使用されます。このステップは、匿名ユーザープロファイルと識別済みユーザープロファイルを統合するために重要です。その結果、ワークスペース内に異なるタイプのexternal IDが一時的に共存する期間が発生する場合があります。 braze.external_idメタフィールドでexternal IDが利用可能になると、インテグレーションはこのexternal IDを優先的に割り当てます。- Shopifyの顧客IDが以前Brazeのexternal IDとして設定されていた場合、
braze.external_idメタフィールドの値に置き換えられます。
- Shopifyの顧客IDが以前Brazeのexternal IDとして設定されていた場合、
ステップ4.4:ShopifyからメールやSMSのオプトインを収集する(オプション)
メールまたはSMSチャネルを使用している場合、ShopifyのメールおよびSMSマーケティングオプトイン状態をBrazeに同期できます。

Shopifyからメールマーケティングのオプトインを同期すると、Brazeはその特定のストアに関連付けられたすべてのユーザーに対してメール購読グループを自動的に作成します。この購読グループには一意の名前を設定する必要があります。

Shopifyの概要で述べたように、サードパーティのキャプチャフォームを使用する場合、開発者がBraze SDKコードを統合する必要があります。これにより、フォーム送信からメールアドレスとグローバルメール購読ステータスをキャプチャできるようになります。具体的には、以下のメソッドをtheme.liquidファイルに実装してテストする必要があります。
- setEmail: ユーザープロファイルにメールアドレスを設定します
- setEmailNotificationSubscriptionType: グローバルメール購読ステータスを更新します
SMSダブルオプトインを使用すると、Shopifyの確認メールの代わりに、Brazeを通じてブランド確認テキストを送信できます。SMSダブルオプトインを有効にするには、以下の手順を実行します。
- Shopify管理画面で、設定 > 通知 > 顧客通知に移動します。
- SMSのマーケティングダブルオプトインをオフにします。
- チェックアウトSMSをシングルオプトインに設定します。
- BrazeのSMS設定で、Use Braze SMS double opt-inを選択します。

BrazeのSMSダブルオプトインと購読者フローの詳細については、Shopify概要を参照してください。
ステップ5: 商品を同期する(オプション)
Shopifyストアのすべての商品をBrazeカタログに同期して、より深いメッセージングパーソナライゼーションを実現できます。自動更新はほぼリアルタイムで行われるため、カタログには常に最新の商品詳細が反映されます。詳しくは、Shopify商品同期をご覧ください。

ステップ6: チャネルの有効化(オプション)
Shopify 標準連携では、追加の開発なしで連携設定からアプリ内メッセージとバナーを有効にできます。
アプリ内メッセージ
チャネルの有効化ステップで、連携設定の一部としてアプリ内メッセージを選択すると、メールや SMS のキャプチャフォーム、プロモーションポップアップ、アンケートなどのユースケースが有効になります。アプリ内メッセージの構築方法については、アプリ内メッセージを参照してください。


Braze はアプリ内メッセージを通じて、メールアドレスや電話番号などの訪問者情報を収集します。この情報は Shopify に送信されます。このデータにより、マーチャントはストアへの訪問者を認識し、よりパーソナライズされたショッピング体験を提供できます。詳細については、Visitor API を参照してください。
バナー
バナーは、プロモーション、お知らせ、ターゲットオファーなど、パーソナライズされたコンテンツを Shopify ストアフロントに表示します。

Shopify標準連携向けのバナーは、現在早期アクセス中です。早期アクセスへの参加にご興味がある場合は、Brazeアカウントマネージャーにお問い合わせください。
セットアップ

バナーには Shopify Online Store 2.0 テーマと Braze SDK バージョン 6.8.0 以降が必要です。セットアップ中に、Braze はストアの公開テーマがインラインバナー配置をサポートしているかどうかを確認します。ビンテージテーマではインライン配置がサポートされていないため、チャネルの有効化でバナーをオンにしてバナー配置を作成が無効になっています。バナーを使用するには、Shopify 管理画面で Online Store 2.0 テーマにアップグレードしてから、連携設定に戻ってバナーを有効にしてください。
チャネルの有効化でバナーをオンにしてバナー配置を作成を選択し、保存します。

Braze は、接続されたすべての Shopify ストアで共有される以下のバナー配置をワークスペースごとに1回自動作成します。
- グローバルヘッダー
- ホームボディ
- グローバルフッター
- 商品情報バナー
- 商品ボディ
- コレクションボディ
- カートボディ
- カートサマリー

複数の Shopify ストアを接続し、それぞれでバナーを有効にした場合、Braze は同時に同じ8つの配置を作成します。同じ配置 ID を、接続されたすべてのストアで同時に使用できます。
デフォルトの配置 ID がセットアップに合わない場合や追加の配置を使用したい場合は、手動で配置を作成する必要があります。各配置 ID は、対応する Shopify アプリブロックで設定されているものと一致する必要があります。ローンチ後に配置 ID を変更した場合は、アプリブロックを更新して一致させてください。そうしないとバナーが表示されなくなります。
バナーの作成
ドラッグ&ドロップエディター、HTML、またはテンプレートを使用して、バナーを作成するキャンペーンまたはキャンバスを構築します。

Braze エディターのプレビューではバナーのコンテンツのみが表示されます。バナーがサイトのどこに表示されるかを確認するには、Shopify テーマエディターでプレビューしてください。
ステップ1: バナーを Shopify テーマに追加する
- キャンペーンまたはキャンバスを、自分のアカウントのみを含むテストセグメント(例: 自分の
external_idまたはdevice_id)やターゲティングに含まれるテストグループなど、少人数のオーディエンスに向けてローンチします。これにより、買い物客に公開することなくライブサイトでバナーを検証できます。 - Shopify テーマエディターで、バナーを配置したいページを開き、メニューからApps > Add Block > Apps > Braze を選択します。

- アプリブロック設定で、バナー配置から選択した配置の
placement_id(例:global_header)を入力します。

- (オプション)アプリブロックの幅(コンテナの
%)を調整し、ピクセル単位の固定高さを追加します。デフォルトでは、最大高さはバナーのコンテンツに合わせて調整されます。テーマで高さの上限が必要な場合(例: 高いバナーがページコンテンツを押し下げるのを防ぐ場合)は、固定高さを設定してください。
ステップ2: テストとローンチ
テストユーザーとしてストアにアクセスし、バナーが正しい配置で期待どおりに表示されることを確認します。その後、キャンペーンまたはキャンバスのターゲティングを編集して、フルオーディエンスに配信します。パフォーマンスの測定については、バナー分析を参照してください。

現在、バナーはサンキューページ、注文ステータスページ、顧客アカウントページではサポートされていません。これらの特定の配置にご興味がある場合は、Braze アカウントチームにリクエストしてください。
Content Cardsとフィーチャーフラグ
Content Cards またはフィーチャーフラグを追加するには、開発者と協力して、必要な SDK コードを theme.liquid ファイルに直接挿入してください。詳細な手順については、Braze SDKの統合を参照してください。
Web プッシュ通知
現在、Web プッシュは Shopify 連携ではサポートされていません。web push for the Shopify integrationにご興味がある場合は、製品フィードバックを送信してください。
ステップ7: 設定を完了する
- 設定を構成したら、Finish Setup を選択します。
- Shopify テーマ設定内で Braze アプリ埋め込みを有効にします。Open Shopify を選択すると、Shopify アカウントにリダイレクトされ、ストアのテーマ設定内でアプリ埋め込みを有効にできます。

- アプリ埋め込みを有効にすると、設定は完了です!
連携設定、初期データ同期のステータス、およびアクティブな Shopify イベントを確認できることを検証してください。
