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

В этом документе представлена краткая информация об отслеживании платежей и дохода в приложении с помощью Google Analytics SDK для Android версии 4.

Обзор

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

Для транзакций используются следующие поля:

Название поля Тип Обязательно? Описание
Идентификатор транзакции String Да Уникальный идентификатор транзакции. Он не должен пересекаться с другими идентификаторами транзакций.
Партнер String Да Подразделение, с которым связана транзакция (например, филиал или магазин).
Доход Double Да Общий доход от транзакции с учетом налогов и стоимости доставки.
Налог Double Yes The total tax for a transaction
Доставка Double Да Общая стоимость доставки для транзакции.
Код валюты String Нет Местная валюта транзакции. По умолчанию используется валюта, заданная в представлении (профиле).

Для товаров используются следующие поля:

Название поля Тип Обязательно? Описание
Идентификатор транзакции String Да Идентификатор транзакции, с которой связан товар.
Название String Да Название товара.
Код товара String Да Код товара.
Категория String Нет Категория, к которой относится товар.
Цена Double Да Цена товара.
Количество Long Да Количество единиц товара.
Код валюты String Нет Местная валюта транзакции. По умолчанию используется валюта, заданная в представлении (профиле).

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

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

Реализация

Для отправки данных о транзакции и товаре в Google Analytics используйте TransactionBuilder и ItemBuilder. Каждое поле устанавливается с помощью вспомогательных методов. Пример:

// Build the transaction.
sendDataToTwoTrackers(new HitBuilders.TransactionBuilder()
    .setTransactionId(getOrderId())
    .setAffiliation(getStoreName())
    .setRevenue(getTotalOrder())
    .setTax(getTotalTax())
    .setShipping(getShippingCost())
    .setCurrencyCode("USD")
    .build());

// Build an item.
sendDataToTwoTrackers(new HitBuilders.ItemBuilder()
    .setTransactionId(getOrderId())
    .setName(getItemName(1))
    .setSku(getItemSku(1))
    .setCategory(getItemCategory(1))
    .setPrice(getItemPrice(getView(), 1))
    .setQuantity(getItemQuantity(getView(), 1))
    .setCurrencyCode("USD")
    .build());

// Sends the ecommerce data.
private void sendDataToTwoTrackers(Map<String, String> params) {
  AnalyticsSampleApp app = ((AnalyticsSampleApp) getActivity().getApplication());
  Tracker appTracker = app.getTracker(TrackerName.APP_TRACKER);
  Tracker ecommerceTracker = app.getTracker(TrackerName.ECOMMERCE_TRACKER);
  appTracker.send(params);
  ecommerceTracker.send(params);
}

Подробнее о методе getTracker можно узнать в разделе Расширенная настройка.

Поля валюты поддерживают отрицательные значения на случай возврата средств или товаров.

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

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

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