Отслеживание электронной торговли — Android SDK

В этом документе представлен обзор того, как измерять платежи и доход в приложениях с помощью Google Analytics SDK для Android v3.

Обзор

Измерение электронной торговли позволяет отправлять покупки и продажи в приложении в Google Analytics. Данные электронной торговли в Google Analytics состоят из обращений по транзакциям и элементам, связанных общим идентификатором транзакции.

Транзакции имеют следующие поля:

Имя поля Поле трекера Тип Необходимый Описание
ID транзакции Fields.TRANSACTION_ID String Да Уникальный идентификатор, представляющий транзакцию. Этот идентификатор не должен конфликтовать с другими идентификаторами транзакций.
принадлежность Fields.TRANSACTION_AFFILIATION String Да Объект, с которым должна быть связана транзакция (например, конкретный магазин)
Доход Fields.TRANSACTION_REVENUE Double Да Общий доход от транзакции, включая налоги и стоимость доставки.
налог Fields.TRANSACTION_TAX Double Да Общий налог за транзакцию
Перевозки Fields.TRANSACTION_SHIPPING Double Да Общая стоимость доставки по транзакции
Код валюты Fields.CURRENCY_CODE String Нет Местная валюта транзакции. По умолчанию используется валюта представления (профиля), в котором просматриваются транзакции.

Элементы имеют следующие поля:

Имя поля Поле трекера Тип Необходимый Описание
ID транзакции Fields.TRANSACTION_ID String Да Идентификатор транзакции, с которой должен быть связан элемент
Имя Fields.ITEM_NAME String Да Название продукта
Артикул Fields.ITEM_SKU String Да Артикул продукта
Категория Fields.ITEM_CATEGORY String Нет Категория, к которой относится товар
Цена Fields.ITEM_PRICE Double Да Цена продукта
Количество Fields.ITEM_QUANTITY Long Да Количество продукта
Код валюты Fields.CURRENCY_CODE String Нет Местная валюта транзакции. По умолчанию используется валюта представления (профиля), в котором сообщается о транзакциях.

Данные электронной торговли в основном используются в следующих стандартных отчетах:

  • Обзор электронной торговли
  • Производительность продукта
  • Эффективность продаж
  • Транзакции
  • Время покупать

Реализация

Для отправки данных о транзакциях и элементах в Google Analytics необходимо установить значения полей транзакций и элементов в трекере и отправлять их по одному. Например:

import android.app.Activity;

import com.google.analytics.tracking.android.EasyTracker;
import com.google.analytics.tracking.android.MapBuilder;

public class CheckoutActivity extends Activity {

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

    // May return null if EasyTracker has not yet been initialized with a
    // property ID.
    EasyTracker easyTracker = EasyTracker.getInstance(this);

    easyTracker.send(MapBuilder
        .createTransaction("0_123456",       // (String) Transaction ID
                           "In-app Store",   // (String) Affiliation
                           2.16d,            // (Double) Order revenue
                           0.17d,            // (Double) Tax
                           0.0d,             // (Double) Shipping
                           "USD")            // (String) Currency code
        .build()
    );

    easyTracker.send(MapBuilder
        .createItem("0_123456",               // (String) Transaction ID
                    "Level Pack: Space",      // (String) Product name
                    "L_789",                  // (String) Product SKU
                    "Game expansions",        // (String) Product category
                    1.99d,                    // (Double) Product price
                    1L,                       // (Long) Product quantity
                    "USD")                    // (String) Currency code
        .build()
    );
  }

  // ... Rest of the Activity definition
}

Поля валюты электронной торговли поддерживают отрицательные значения валюты, что может быть необходимо в случае возмещения или возврата.

Указание валют

По умолчанию предполагается, что значения транзакций выражены в валюте представления (профиля), в котором они представлены.

Чтобы переопределить местную валюту транзакции и любых связанных продуктов, задайте в поле кода валюты обращений транзакции и элемента новый код валюты. Полный список поддерживаемых валют и кодов валют см. в Справочнике по поддерживаемым валютам.

import android.app.Activity;

import com.google.analytics.tracking.android.EasyTracker;
import com.google.analytics.tracking.android.MapBuilder;

public class CheckoutActivity extends Activity {
  /**
   * 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).
   */
  public void onPurchaseCompleted() {

    // Assumes a tracker has already been initialized with a property ID, otherwise
    // this call returns null.
    EasyTracker easyTracker = EasyTracker.getInstance(this);

    easyTracker.send(MapBuilder
        .createTransaction("0_123456",       // (String) Transaction ID, should be unique among transactions.
                           "In-app Store",   // (String) Affiliation
                           (long) 2.16,      // (long) Order revenue (includes tax and shipping)
                           (long) 0.17,      // (long) Tax
                           0.0,              // (long) Shipping cost
                           "EUR")            // (String) Currency code
        .build();

  }
  // ... Rest of the Activity definition.
}