Spree と外部連携する方法
このページで学べること
Spree を Klaviyo と連携する方法をご覧ください。これらの手順を完了すると、各顧客の購入履歴やウェブサイトでのアクティビティに基づいて、メールをパーソナライズし、ターゲットを絞れるようになります。Spree から同期されるデータは次のとおりです。
- 購入された商品、商品画像、バリエーションの詳細、適用された割引などを含む売上および注文データ
- 氏名、所在地などの顧客情報
- 発送済み注文データ
Spree バージョン 2.2.14、2.3.13 に適用されたセキュリティパッチにより、2.4.10、および 3.0.4検索可能なパラメータが許可リストに登録されている必要があります。商品のプロパティ updated_at と注文のプロパティ は、デフォルトの許可リストに含まれていませんでした。Klaviyo の外部連携はこのパラメータに依存しているため、外部連携がスムーズに実行されるように、このプロパティを許可リストに登録する更新を適用する必要があります。注文のプロパティ updated_at を許可リストに登録しない場合、注文が行われるまで Started Checkout イベントが同期されないことがあります。
Klaviyo で Spree 外部連携を追加してください。
- Klaviyo で、[外部連携] タブを選択します。
- [アプリを探す]をクリックし、Spreeを検索して、カードをクリックします。次に、[インストール]をクリックします。
- 次のページで、ストア URL と Spree の API キー/暗号化パスワードを入力する必要があります。この API キーは、Spree の管理画面で [Users] に移動してアカウントを選択し、[Generate API Key] を選択することで生成できます。
- Klaviyo に戻り、ボックスにストア URL と API キー/暗号化されたパスワードを貼り付けます。

- バージョン管理されたSpree API(V1)を使用している場合は、バージョン管理されたSpree API(V1)を使用していますにチェックを入れてください。
- [Spree に接続] をクリックします。
以下のリスト設定では、Spreeでメールのオプトイン状況を確認せずに、Spreeの注文とチェックアウトから同期された顧客を追加します。リストへの登録は、メールの同意を確立するものではありません。
- 任意:同期されたSpree顧客をKlaviyoリストに追加するには、次のページでKlaviyoリストに新しいSpree顧客を追加をチェックし、リストを選択してください。
- 準備ができたら、[セットアップの完了] をクリックします。その後、正常に連携されたことを示す成功メッセージが表示されます。
Klaviyo オンサイトトラッキングをインストールする
Active on SiteおよびViewed Productのオンサイトトラッキングをインストールするには、まず公開APIキーを見つけてください。Klaviyoアカウントにログインし、アカウント名 > 設定 > APIキーに移動します。公開キーは6文字の長さです。次のステップで使用できるよう、このキーを安全にコピーしてください。
活用できるオンサイトトラッキングは2種類あります:
- サイト上でアクティブ
このメトリックは、識別可能なブラウザがウェブサイトにアクセスするたびにトラッキングされます。 - 「商品閲覧」
このメトリックは、識別可能なブラウザがウェブサイト上の商品ページを閲覧するたびにトラッキングされます。
[サイト上でアクティブ] トラッキング
このメトリックは、識別可能なブラウザがウェブサイトにアクセスするたびにトラッキングされます。
- 「アクティブ(サイト上)」アクティビティのトラッキングを開始するには、すべてのページに含まれるように、次のコード スニペットをメインのストア テンプレートに追加してください。このスニペットは、使用している他の分析スクリプトと一緒に配置するか、閉じる </body> タグの直前に配置してください。
PUBLIC_API_KEYを Klaviyo アカウントの公開 API キーに置き換えてください:
<script type="text/javascript" async="" src="https://static.klaviyo.com/onsite/js/klaviyo.js?company_id=PUBLIC_API_KEY"></script>
<script type="text/javascript">
//Initialize the Klaviyo object on page load
!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}(); </script>- 任意:ストアにログインする際に顧客を識別するには、ログインした顧客のメールアドレスと、可能であれば名と姓を使用して
klaviyo.identify()呼び出しを追加してください。訪問者がログインしている場合にのみこの呼び出しを含めるには、ストアのテンプレート言語を使用してください。ログインユーザー向けのカスタムトラッキングの詳細については、オンサイトトラッキングガイドをご覧ください。 - ストアのテンプレートを保存し、公開します。このトラッキングコードは、既知のブラウザに対してサイトの訪問イベントを記録するため、サイト訪問や訪問者の行動に関するデータをKlaviyoで使用できます。
- オンサイトトラッキングが正しく設定されていることをテストするには、ストア内のページに移動し、URLの末尾に
?utm_email=email@example.comを追加して、email@example.comをメールアドレスに置き換えてください。URLにすでに疑問符が含まれている場合は、代わりに&utm_email=email@example.comを使用してください。ページを再読み込みしてから、Klaviyoでメールアドレスを検索してください。プロファイルを開き、サイトの訪問イベントがあるか確認してください。
「商品閲覧」のトラッキング
閲覧放棄フロー を設定する、または商品閲覧データに基づいてセグメントを作成するには、「商品閲覧」のメトリックの JavaScript イベント トラッキングを追加する必要があります。
- 商品ページテンプレートで、メインのオンサイトトラッキングスニペットの後に、次の例を追加してください。公開する前に、プレースホルダーをストアに合わせて調整してください:
<script type="text/javascript">
var klaviyo = window.klaviyo || [];
klaviyo.track("Viewed Product", {
Title: '{{ product.name }}',
ItemId: {{ product.id }},
Categories: {{ category in product.categories|json }}, // The list of categories is an array of strings.
ImageUrl: '{{ product.image_url }}',
Url: '{{ product.permalink }}',
Metadata: {
Brand: '{{ product.brand }}',
Price: {{ product.price }},
OnSale: {{ product.on_sale }},
RegularPrice: {{ product.regular_price }},
SalePrice: {{ product.sale_price }}
}
});
</script>- ストアのテンプレート言語を使用して、
{{ }}プレースホルダーを、閲覧中の商品に対して動的にレンダリングされる値に置き換えてください。商品名に含まれる引用符がJavaScriptを壊さないように、動的な文字列と配列をJSONエンコードしてください。JSONエンコードされた値を挿入する際は、例を囲む引用符を削除してください。Categoriesを文字列の配列としてレンダリングし、価格とセール状況を有効なJavaScript値としてレンダリングしてください。 - 商品ページのテンプレートを保存し、公開します。テストするには、上記のメールアドレステストを使用してブラウザを識別し、次に商品ページにアクセスして、Klaviyoプロファイルで商品の閲覧イベントを確認します。設定が完了すると、既知の訪問者が商品ページを閲覧するにつれて、このデータが入力されます。
閲覧放棄メールに商品詳細を追加する際は、ご自身の商品を閲覧イベントのプロパティ名を使用してください。上記の例では、商品タイトルはTitle、画像はImageUrl、価格はMetadata.Priceです。
オンサイトトラッキングの仕組み
Klaviyoは識別済みのブラウザを使用して、オンサイトアクティビティをプロファイルに関連付けます。過去の訪問だけでは、ブラウザを識別できません。Klaviyoがサイト訪問者を識別できる一般的な方法は2とおりあります:
- 過去のいずれかの時点で Klaviyoを使って送信されたメールをクリックして、ウェブサイトにアクセスしたことがある場合
- 過去のいずれかの時点で Klaviyo のフォームから購読/オプトインした場合
匿名訪問者のアクティビティバックフィルが有効になっている場合、Klaviyoは識別前に訪問者のブラウザにウェブサイト上のイベントを保存し、識別後にそれらをプロファイルに追加できます。これには、ブラウザのローカルストレージが利用可能である必要があります。匿名訪問者アクティビティのバックフィルについてご確認ください。
Klaviyo 同期を監視する
外部連携を確認するには:
- 外部連携を開き、Spreeを選択してから、Dataを選択します。履歴データで、同期の進行状況を確認します。インポートが完了すると、カードに履歴データが同期されたことが表示されます。
- Klaviyo で [アナリティクス] のドロップダウンをクリックし、[メトリック] を選択します。ここでは、フィルターを使用してすべての Spree メトリックを表示できます。
- Spreeの注文の確定メトリックを開き、次にアクティビティフィードタブを選択します。外部連携がデータの同期を開始している場合、ここに注文の確定イベントが表示されます。
- Klaviyoは過去の注文データを自動的にインポートします。インポートが完了したら、 注文の確定 の チャート タブを選択します。確認したい日が含まれる日付範囲を選択し、表示単位を日次に設定して、測定を合計に設定します。たとえば、昨日のデータポイントにマウスオーバーするか、グラフの下にある表を使用して、昨日記録された注文数を確認できます。
- その数を、同じ日のSpreeでの完了済み注文数と比較してください。注文を同期するには、有効な顧客のメールアドレスと、少なくとも1点の商品が必要です。件数が異なる場合は、履歴インポートが完了していることを確認し、1時間ごとの同期に時間がかかる可能性を考慮したうえで、KlaviyoとSpreeのタイムゾーンが一致していることを確認してください。
- Klaviyo でタイムゾーン設定を確認するには:
- 左下のアカウント名をクリックしてください。
- 設定 > アカウントを選択します。
- 下にスクロールしてタイムゾーンまで移動します。
Spree から同期されたデータ
Spree 外部連携は 1 時間ごとに Klaviyo と同期します。
以下は、SpreeがKlaviyoに同期するメトリックの一覧です。アカウントに同期されるSpreeのメトリックはすべて、アナリティクス > メトリックで確認できます。

注文の確定
このメトリックは、Spreeで注文が完了したときにイベントを記録します。つまり、顧客がチェックアウトプロセスを完了したことを意味します。決済の成功は確認されません。このメトリックを使用すると、注文回数や生涯価値に基づいて、人のセグメントを簡単に作成できます。また、過去の顧客を再エンゲージするためのメールを作成したり、初回購入者向けのお礼メールを送信したりすることもできます。以下の基準に基づいて、「注文の確定」イベントをフィルタリングし、ターゲットを絞ることができます。
- IsDiscounted
注文に割引が適用されているかどうか(例:true または false)。 - ItemNames
このイベントで購入された商品の名前。
購入商品
このメトリックは注文の確定メトリックに似ていますが、誰かが注文した商品の各ユニットごとにイベントが記録されます。たとえば、Tシャツとショートパンツを購入した場合、Klaviyoでは1件の注文の確定イベントと、Tシャツ分1件、ショートパンツ分1件の合計2件の購入商品イベントとして表示されます。このメトリックは、特定の商品、または特定のカテゴリの商品を購入した(または未購入の)顧客をターゲットにするセグメントの構築に役立ちます。また、「購入商品」メトリックをフローのトリガーとして使用し、自然に組み合わせられる関連商品のメールを、まだ購入していない一部の顧客に送信することもできます。
- Categories
注文された商品が属するカテゴリー(例:Shirts、Mens、Sale)。 - 名前
購入された商品の名前(例:メンズの赤い T シャツ)。 - ProductId
ストアで設定されている商品の ID(例:2022, 2023, 2024)。 - 数量
このイベントで表される数量で、1です。同じ商品の3個の注文では、購入商品イベントが3件作成されます。 - SKU
ストアで設定されている商品の SKU。 - バリエーションオプション: 色
利用可能な場合の商品の色(例:赤 または 青)。 - バリエーション オプション:サイズ
利用可能な場合の商品のサイズ(例:Medium や Large)。
注文発送済み
このメトリックは、Spreeで完了した注文が発送済みとしてマークされたときにイベントを記録します。Klaviyoのイベントには、すべての出荷のトラッキング番号が含まれます。そのため、このメトリックを出荷確認メールのトリガーとして使用できます。発送済みの注文メトリックに基づく、もう1つの一般的なメールは商品レビュー依頼メールです。これは、最近購入した商品のレビューを残すよう顧客に依頼するメールです。発送済みの注文メトリックを使用すると、出荷からのタイミングでこれらのメールを送れますが、配達完了は確認できません。商品レビュー依頼を送信する前に、配達のための時間を確保できる待機を追加してください。以下の条件に基づいて、「発送済みの注文」イベントをフィルタリングし、ターゲットを絞ることができます。
- IsDiscounted
注文に割引が適用されているかどうか(例:true または false)。 - ItemNames
このイベントで購入された商品の名前。
チェックアウトの開始
このメトリックは、有効な顧客のメールアドレスと少なくとも1点の商品を含むチェックアウトのイベントを記録します。このメトリックの主な用途は、カゴ落ちメールを送信することです。Klaviyo を使用すると、チェックアウトを開始したものの数時間経っても注文を確定していない場合にカートのリマインダーを送信するメールフローを簡単に設定できます。「チェックアウトの開始」イベントにはカートに関するすべての情報が含まれているため、カート内の商品だけでなく、それらの商品の画像も表示できます。より高度な機能を使いこなすユーザーの場合は、カゴ落ちフローを2つ設定できます。割引コードを含む初回購入者向けのフローと、割引コードを含まないリピート購入者向けのフローです。以下の条件に基づいて、「チェックアウトの開始」イベントをフィルタリングし、ターゲットを絞ることができます。
- IsDiscounted
注文に割引が適用されているかどうか(例:true または false)。 - ItemNames
チェックアウトカート内の商品の名前。
顧客データ
KlaviyoがSpreeから同期するメトリックに加えて、注文データで利用できる場合は、Klaviyoのプロファイルに追加される顧客プロパティもあります。これらのプロパティは、セグメントおよびフローで使用できます。Spreeから同期されるプロパティは以下のとおりです。名前、所在地、電話番号の詳細は注文の請求先住所から取得されます:
- メール
- 名
- 姓
- 市区町村
- 州・県/地域
- 郵便番号
- 国
- 電話番号
達成できること
これで、Klaviyo アカウントを Spree と連携し、オンサイト トラッキングをインストールして、同期されたデータを確認できました。
その他のリソース
- 外部連携の同期頻度のリファレンス
特定の Klaviyo 外部連携から同期されるデータと、同期が実行される頻度について確認してください。これらの外部連携は、E コマースプラットフォーム、メール送信プロバイダー、その他のデータ外部連携別に整理しています。
- Klaviyo's Agency Partners