e コマース トラッキング - iOS SDK

このドキュメントでは、iOS 向け Google アナリティクス SDK v3 を使って、アプリ内のお支払いと収益を測定する方法の概要を説明します。

概要

e コマースの測定では、アプリ内の購入と売り上げのデータを Google アナリティクスに送ることができます。Google アナリティクスの e コマースデータにはトランザクションとアイテムのヒットが含まれ、それぞれが共通のトランザクション ID で結び付けられます。

トランザクションには次のフィールドがあります。

フィールド名 トラッカー フィールド タイプ 必須 説明
Transaction ID kGAITransactionId NSString はい トランザクションを表す固有の ID です。他のトランザクション ID と重ならないようにしてください。
Affiliation kGAITransactionAffiliation NSString はい トランザクションに関わる当事者です(特定のショップなど)。
収益 kGAITransactionRevenue NSNumber はい トランザクションの収益の合計額です(税金と送料を含む)。
Tax kGAITransactionTax NSNumber はい トランザクションに伴う税金の合計額です。
Shipping kGAITransactionShipping NSNumber はい トランザクションに伴う送料の合計額です。
Currency code kGAICurrencyCode NSString × トランザクションで使用されるローカル通貨です。デフォルトでは、そのトランザクション データが表示される ビュー(旧プロファイル)の通貨になります。

アイテムには次のフィールドがあります。

フィールド名 トラッカー フィールド タイプ 必須 説明
Transaction ID kGAITransactionId NSString はい アイテムに関連するトランザクション ID です。
名前 kGAIItemName NSString はい 商品の名前です。
SKU kGAIItemSku NSString はい 商品の SKU です。
カテゴリ kGAIItemCategory NSString × 商品が属するカテゴリです。
Price kGAIItemPrice NSNumber はい 商品の価格です。
数量 kGAIItemQuantity NSNumber はい 商品の数量です。
通貨コード kGAICurrencyCode NSString × トランザクションで使用されるローカル通貨です。デフォルトでは、そのトランザクション データが表示されるビュー(旧プロファイル)の通貨になります。

e コマースデータは、主に次の標準レポートで使用されます。

  • e コマースの概要
  • 商品の販売状況
  • 販売実績
  • トランザクション
  • 購入までの間隔

実装

Google アナリティクスにトランザクションとアイテムのデータを送るには、トラッカーのトランザクションとアイテムのフィールドに値を設定し、1 つずつ送る必要があります。次に例を示します。

/*
 * Called when a purchase is processed and verified.
 */
- (void)onPurchaseCompleted {

  // Assumes a tracker has already been initialized with a property ID, otherwise
  // this call returns null.
  id tracker = [[GAI sharedInstance] defaultTracker];



  [tracker send:[[GAIDictionaryBuilder createTransactionWithId:@"0_123456"             // (NSString) Transaction ID
                                                   affiliation:@"In-app Store"         // (NSString) Affiliation
                                                       revenue:@2.16F                  // (NSNumber) Order revenue (including tax and shipping)
                                                           tax:@0.17F                  // (NSNumber) Tax
                                                      shipping:@0                      // (NSNumber) Shipping
                                                  currencyCode:@"USD"] build]];        // (NSString) Currency code


  [tracker send:[[GAIDictionaryBuilder createItemWithTransactionId:@"0_123456"         // (NSString) Transaction ID
                                                              name:@"Space Expansion"  // (NSString) Product Name
                                                               sku:@"L_789"            // (NSString) Product SKU
                                                          category:@"Game expansions"  // (NSString) Product category
                                                             price:@1.9F               // (NSNumber) Product price
                                                          quantity:@1                  // (NSInteger) Product quantity
                                                      currencyCode:@"USD"] build]];    // (NSString) Currency code

}

e コマースの通貨フィールドは負の値に対応しています。払い戻しや返品で必要となる 場合があるためです。

通貨の指定

デフォルトでは、トランザクションの値は表示されるビュー(旧プロファイル)の通貨と みなされます。

トランザクションとその商品のローカル通貨を上書きするには、 トランザクションとアイテムのヒットの通貨コード フィールドに 新しい通貨コードを設定します。サポートされている通貨と通貨コードの一覧については、利用可能な通貨のリファレンスをご覧ください。

/*
 In this example, the currency of the transaction is set to Euros. The
 currency values will appear in reports using the global currency
 type of the view (profile).
 */
- (void)onPurchaseCompleted {

  // Assumes a tracker has already been initialized with a property ID, otherwise
  // this call returns null.
  id tracker = [[GAI sharedInstance] defaultTracker];

  [tracker send:[[GAIDictionaryBuilder createTransactionWithId:@"0_123456",         // (NSString) Transaction ID, should be unique among transactions.
                                                   affiliation:@"In-app Store",     // (NSString) Affiliation
                                                       revenue:(int64_t) 2.16,      // (int64_t) Order revenue (including tax and shipping)
                                                           tax:(int64_t) 0.17,      // (int64_t) Tax
                                                      shipping:(int64_t) 0,         // (int64_t) Shipping
                                                  currencyCode:@"EUR"] build]];     // (NSString) Currency code
}