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

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


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

- 設定を開始を選択します。

ステップ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 データをトラッキングステップで 履歴バックフィルを有効にするを選択すると、統合の一環として初期の履歴データを読み込めます。注文の期間 (過去90日間、過去1年間、過去2年間) と、ユーザープロファイルの期間 (過去1年間、過去2年間、全期間) を選択します。設定を完了する前に、Braze は各オプションの推定レコード数と処理時間を表示します。これらの選択は、設定の完了後に変更できません。
インポートされる内容、収益レポートの動作、およびすでに Braze でアクティブなキャンペーンやキャンバスを使用している場合のガイダンスについては、履歴バックフィルを参照してください。
(上級) カスタムデータトラッキングの設定
Braze SDKを使用すると、この統合の標準イベントを超えるカスタムイベントやカスタム属性をトラッキングできます。カスタムイベントでは、ストア内の独自のインタラクションを記録できます。例を以下に示します。
| カスタムイベント | カスタム属性 |
|---|---|
|
|
カスタムデータをトラッキングすると、ユーザー行動に関するより深いインサイトが得られ、さらなるパーソナライゼーションが可能になります。カスタムイベントを実装するには、theme.liquid ファイルでストアフロントのテーマコードを編集する必要があります。開発者のサポートが必要になる場合があります。
たとえば、次の JavaScript スニペットは、現在のユーザーがニュースレターに登録したかどうかをトラッキングし、それを Braze のユーザープロファイルにカスタムイベントとして記録します。
braze.logCustomEvent(
“subscribed_to_newsletter”,
{
newsletterName: ‘News and Offers’,
customerEmail: ‘customer_1@example.com’,
sendOffers: true
}
);
イベントやカスタム属性を記録するには、ユーザーのデバイスで SDKが初期化されている (アクティビティをリッスンしている) 必要があります。カスタムデータの記録の詳細については、ユーザーオブジェクトと 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を返す、公開アクセス可能なGETエンドポイントを作成する必要があります。Brazeは次の2つのソースからこのエンドポイントを呼び出します。
| 呼び出し元 | 例 | 動作 |
|---|---|---|
| Shopify Admin API webhook | customers/create、customers/update、および注文イベント |
Shopify顧客にbraze.external_idメタフィールドがない場合、Brazeサーバーがエンドポイントを呼び出します。メタフィールドがすでに設定されている場合、Brazeはその値を使用し、そのリクエストではエンドポイントを呼び出しません。 |
| Braze Shopify Webピクセル | ログイン済み顧客のページビュー、チェックアウト完了イベント | Braze Webピクセルはストアフロント上のショッパーのブラウザーで実行され、カスタムexternal IDを取得するためにエンドポイントを呼び出します。Shopify Admin API webhookとは異なり、これらのイベントでは常にエンドポイントを呼び出し、braze.external_idメタフィールドは使用しません。 |

Brazeサーバーとショッパーのブラウザーの両方がこのエンドポイントを呼び出します。Braze Shopify WebピクセルはエンドポイントURLをブラウザーに読み込むため、URLは公開されます。検証の手順に従い、一致するShopify顧客に対してのみexternal 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"
}
検証
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、またはWhatsAppチャネルを使用している場合、Shopifyのメール、SMS、WhatsAppのマーケティングオプトイン状態を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の概要を参照してください。
Brazeを通じてWhatsAppメッセージを送信している場合は、ShopifyからWhatsAppマーケティングのオプトインも同期できます。Collect WhatsApp subscribersを選択し、同期先のWhatsApp購読グループを選択します。


WhatsApp購読グループを使用するには、ワークスペースにWhatsApp Businessアカウントが接続されている必要があります。テクノロジーパートナー > WhatsAppで接続してください。
Brazeは、Shopifyが顧客ごとに保存しているWhatsAppの同意のみを同期します。SMSやメールのオプトインによって、顧客がWhatsAppを購読した状態になることはありません。また、WhatsAppにはダブルオプトインはありません。詳細については、WhatsAppマーケティングオプトインを参照してください。
ステップ 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 はストアの公開テーマがインラインのバナー配置に対応しているかどうかを確認します。Vintage テーマはインライン配置に対応していないため、チャネルを有効化のバナーをオンにしてバナー配置を作成は無効になります。バナーを使用するには、Shopify 管理画面で Online Store 2.0 テーマにアップグレードしてから、統合設定に戻ってバナーを有効にしてください。
チャネルを有効化でバナーをオンにしてバナー配置を作成を選択し、保存します。

Braze は以下のバナー配置をワークスペースごとに 1 回自動作成し、接続されているすべての Shopify ストアで共有します。
- Global header
- Home body
- Global footer
- Product info banner
- Product body
- Collection body
- Cart body
- Cart summary

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

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

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

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

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

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