Передача данных электронной коммерции

Для передачи действий пользователя с ECommerce данными необходимо собрать и передать данные в событие в определенном формате <ECommerceEvent>:

Формат данных <ECommerceEvent>

ПолеТип данных

currencyCode

String

Трехбуквенный код валюты по ISO 4217. Если передается иная валюта, будут отправлены нулевые значения вместо валюты и суммы.

action

Дополнительные данные, описывающие действие, произведённое с товаром или набором товаров. Данные передаются в виде объекта <ECommerceAction>.

products

Список описаний товаров, с которыми было произведено указанное действие. Описание каждого из товаров представляет собой объект вида <ECommerceProduct>.

impressions

Список описаний товаров, относящихся к действию impressions (показ товара или набора товаров). Данные передаются в виде объекта <ECommerceProduct>.

promotions

Массив данных, описывающих связанное с рекламной акцией действие. Данные передаются в виде объекта <ECommercePromo>.

Отправка события ECommerceEvent

Показ товара (impressions):

val product1 = ECommerceProduct("779213")
    .apply {
        name = "Футболка" // Optional.
        list = "Вы недавно смотрели" // Optional.
        brand = "Печки-лавочки"
        category = "Одежда/Мужская одежда/Футболки"
        coupon = "PARTNER_SITE_15"
        position = 2
        price = BigDecimal(145.555)
        quantity = 5
        variant = "Красный цвет"
    }

val product2 = ECommerceProduct("25315")
    .apply {
        name = "Футболка с рисунком" // Optional.
        list = "Результаты поиска" // Optional.
        brand = "Печки-лавочки"
        category = "Одежда/Мужская одежда/Футболки"
        coupon = "PARTNER_SITE_15"
        position = 2
        price = BigDecimal(2345.50)
        variant = "Красный цвет"
    }


val eventParam = ECommerceEvent.setParams("RUB", listOf(product1, product2))
Kraken.trackEcom("impressions", eventParam

Клик по промо-акции:

val promo = ECommercePromo("PROMO12")
    .apply {
        name = "Сезонная распродажа"
        creative = "sale_banner1"
        position = "slot_2"
    }
val eventParam = ECommerceEvent.setPromoParams("RUB", listOf(promo))
Kraken.trackEcom("promoClick", eventParam)

Клик по товару:

val product = ECommerceProduct("779213")
    .apply {
        name = "Футболка" // Optional.
        list = "Результаты поиска" // Optional.
        brand = "рога и копыта"
        category = "Одежда/Мужская одежда/Футболки"
        coupon = "PARTNER_SITE_15"
        position = 1
        price = BigDecimal(1499.00)
        quantity = 2
        variant = "Красный цвет"
    }
val eventParam = ECommerceEvent.setParams("RUB", listOf(product))
Kraken.trackEcom("click", eventParam)

Добавление товара в корзину:

val product = ECommerceProduct("779213")
    .apply {
        name = "Футболка"
        list = "Вы недавно смотрели"
        brand = "Печки-лавочки"
        category = "Одежда/Мужская одежда/Футболки"
        coupon = "PARTNER_SITE_15"
        position = 2
        price = BigDecimal(145.555)
        quantity = 5
        variant = "Красный цвет"
    }
val eventParam = ECommerceEvent.setParams("RUB", listOf(product))
Kraken.trackEcom("add", eventParam)

Показ информации о товаре:

val product = ECommerceProduct("779213")
    .apply {
        name = "Футболка" // Optional.
        list = "Результаты поиска" // Optional.
        brand = "рога и копыта"
        category = "Одежда/Мужская одежда/Футболки"
        coupon = "PARTNER_SITE_15"
        position = 1
        price = BigDecimal(1499.00)
        quantity = 2
        variant = "Красный цвет"
    }
val action = ECommerceAction("TRX#54321")
    .apply {
        coupon = "TRX"
        revenue = BigDecimal(444.4444)
        affiliation = "SPORTMASTER"
        tax = BigDecimal(123.4444)
        shipping = BigDecimal(567.897)
        list = "Новинки"
        step = 2
        option = "способ оплаты"
    }

val eventParam = ECommerceEvent.setParams("RUB", listOf(product))
Kraken.trackEcom("detail", eventParam)

Last updated