購入データタグ
EC サイトの購入データの情報を Sprocket に連携して、接客のセグメント条件や分析に活用するためのデータ連携タグです。
主な活用方法
・累計購入金額に応じてシナリオを出し分ける 
・累計購入回数に応じてシナリオを出し分ける
・接客シナリオ表示でどういう商品が購入されたか、詳細な分析を行う
タグの設置場所
購入完了ページにタグを設置して、購入データを出力してください。
データ項目
| フィールド名(Key) | 型 | 値(Value)のサンプル | 概要 | セグメント条件での使用 | 
|---|---|---|---|---|
| transactionId | 文字列 | 'EC1234' | 購入トランザクションに紐づいた一意なID | |
| totalAmount | 数値(整数) | 11330 | 購入金額合計 | ○ | 
| consumptionTax | 数値(整数) | 1030 | 消費税額 | |
| shippingFee | 数値(整数) | 710 | 送料 | |
| items | 配列 | [ | itemsというキーに個別商品データの配列をセットしてください。 | |
| items[].itemId | 文字列 | 't001' | アイテムに振られる任意のIDです。例として SKU ID などを想定しています。 | |
| items[].name | 文字列 | 'フリルブラウス' | 商品名 | |
| items[].price | 数値(整数) | 3500 | 商品価格 | |
| items[].quantity | 数値(整数) | 2 | 購入商品数 | |
| items[].category | 文字列 | 'tops' | 商品カテゴリ | |
| items[].brand | 文字列 | 'SproStyle' | 商品ブランド | 
購入データタグについての補足説明
transactionIdとtotalAmountは必須項目です。項目が存在しない場合はエラーとなり、データが送信されません。
totalAmountとitems[].priceは値が 0 でもバリデーションエラーにはならず、データが送信されます。- サポートしている文字コードは UTF-8 です。
データ連携タグについての補足説明(全タグ共通)データ連携タグの発火タイミングやバリデーションについては「データ連携(リアルタイム取り込み)導入手順」ページを参照してください。
JavaScript サンプル
個別商品データはサンプルを参考に、配列として変数にセットしてください。ファンクション SPSDK.record() の第1パラメータに固定文字列 'purchase' を、第2パラメータに配列でデータ項目を指定します。
<script type="text/javascript">
(function() {
  var items = [
    {
      itemId: 't001',
      name: 'フリルブラウス',
      price: 3500,
      quantity: 1,
      category: 'tops',
      brand: 'SproStyle'
    },
    {
      itemId: 'b110',
      name: 'チノパンツ',
      price: 6800,
      quantity: 1,
      category: 'bottoms',
      brand: 'SproStyle'
    }];
  var props = {
    transactionId: 'EC1234',
    totalAmount: 11330,
    consumptionTax: 1030,
    shippingFee: 710,
    items: items
  };
  console.log('Sprocket: Purchase props:\n' + JSON.stringify(props, null, '  '));
  SPSDK.record('purchase', props);
})();
</script>データ連携タグの実行順が保証できない場合
Sprocket タグが読み込まれてからデータ連携を実行する処理を組み込んでください。コード例は下記です。
<script type="text/javascript">
(function() {
  var count = 0;
  setTimeout(function wait() {
    if (++count > 10) return;
    if (typeof SPSDK === 'undefined') return setTimeout(wait, 500);
    var items = [
      {
        itemId: 't001',
        name: 'フリルブラウス',
        price: 3500,
        quantity: 1,
        category: 'tops',
        brand: 'SproStyle'
      },
      {
        itemId: 'b110',
        name: 'チノパンツ',
        price: 6800,
        quantity: 1,
        category: 'bottoms',
        brand: 'SproStyle'
      }];
    var props = {
      transactionId: 'EC1234',
      totalAmount: 11330,
      consumptionTax: 1030,
      shippingFee: 710,
      items: items
    };
    console.log('Sprocket: Purchase props:\n' + JSON.stringify(props, null, '  '));
    SPSDK.record('purchase', props);
  }, 500);
})();
</script>Updated 9 months ago
