Skip to Content
Документація📈 Mixpanel📊 Події в Mixpanel📦 Подія order_item_snapshot✨ Загальна інформація

💰 Подія order_item_snapshot — Unit-економіка продажів

order_item_snapshot — подія, яку SellerIQ відправляє в Mixpanel для аналізу юніт-економіки продажів — прибутковості кожної проданої одиниці товару.

Кожен івент — це «знімок економіки» однієї одиниці товару в межах замовлення:

  • за якою ціною товар був проданий;
  • яка в нього собівартість;
  • які знижки та комісії застосовувалися;
  • яка частина доставки припала на цю одиницю;
  • який підсумковий прибуток (у сумі та у відсотках);
  • які додаткові параметри були враховані (зокрема через @siq).

⚠️ Статус: BETA / у розробці Подія вже доступна для тестових користувачів. Структура і набір показників можуть доповнюватися й уточнюватися.

ℹ️ Дані з SalesDrive і KeyCRM SellerIQ підключається до двох CRM-систем — 🔗 SalesDrive і 🔗 KeyCRM. Ці CRM віддають різний набір даних про замовлення, тому частина властивостей події доступна лише для однієї з них. У кожній таблиці нижче є колонки SalesDrive і KeyCRM — ✅ означає, що властивість заповнюється реальними даними для цієї CRM, ❌ — що вона завжди порожня (null, 0 або false). Джерело конкретного запису видно у властивості crm_provider ("salesdrive" або "keycrm") — за нею можна фільтрувати звіти.


🧠 Загальний принцип роботи

SellerIQ аналізує кожну продану одиницю товару окремо, навіть якщо в замовленні кілька однакових товарів.

Приклад:

  • У замовленні: 1 товар × 3 штуки
  • У Mixpanel буде відправлено 3 окремі події
  • Кожна подія відповідає одній одиниці товару

🏷 Назва події в Mixpanel

Технічна назва події: order_item_snapshot

Рекомендований Display name у Mixpanel, наприклад: Unit-економіка продажів


🧱 Структура події

Нижче описані всі властивості, які SellerIQ передає в події order_item_snapshot.


1. Ідентифікація замовлення і товару

ВластивістьТипSalesDriveKeyCRMОписПриклад
crm_providerstring✅✅Джерело даних — з якої CRM прийшло замовлення"salesdrive" / "keycrm"
crm_account_idstring✅✅ID підключеного CRM-акаунту в SellerIQ (якщо їх декілька)"7"
order_internal_idstring✅✅Внутрішній ID замовлення в CRM"123456"
order_external_idstring✅✅Номер замовлення із зовнішнього джерела (Rozetka, Prom тощо)"RZ-9845123"
product_internal_idstring✅✅Внутрішній ID товару в CRM"54321"
product_crm_idstring✅✅Код товару, як він вказаний у CRM (SKU)"108089307"
stock_idstring✅✅ID складу/залишку (якщо є)"12"
unit_indexnumber✅✅Номер одиниці товару всередині позиції (1..N)2
quantitynumber✅✅Кількість у цій події (завжди 1)1

2. Контекст замовлення (дати, статус, тип)

ВластивістьТипSalesDriveKeyCRMОписПриклад
order_created_atstring✅✅Дата/час створення замовлення"2026-01-21 10:20:00"
order_updated_atstring✅✅Дата/час оновлення замовлення"2026-01-21 12:35:10"
order_status_idstring✅✅ID статусу замовлення в CRM"3"
order_status_namestring✅✅Назва статусу замовлення"В обработке"
order_type_idstring✅✅ID типу замовлення в CRM"1"
order_type_namestring✅✅Назва типу замовлення"Интернет-заказ"

ℹ️ Для KeyCRM окремого поля «тип замовлення» немає — замість нього використовується стадія воронки продажів, до якої належить поточний статус замовлення. Значення не збігається за змістом із SalesDrive: воно змінюється разом зі статусом, а не задається один раз як окремий тип.


3. Організація, канал продажів, менеджер

ВластивістьТипSalesDriveKeyCRMОписПриклад
organization_idstring✅❌ID організації"10"
organization_namestring✅❌Назва організації"SellerIQ LLC"
site_idstring✅✅ID сайту/каналу продажів у CRM"2"
site_namestring✅✅Назва сайту/каналу продажів"Rozetka"
sales_channelstring✅✅Канал продажів (як текст)"Rozetka"
manager_idstring✅✅ID менеджера"15"
manager_namestring✅✅Ім’я менеджера"Алексей"

4. Доставка

Вартість доставки враховується на рівні замовлення, після чого розподіляється між товарами (пропорційно вартості товарів у замовленні).

Приклад розподілу:

  • Вартість доставки замовлення: 300 ₴
  • Товари в замовленні:
    • Товар A — 2000 ₴
    • Товар B — 1000 ₴

Результат:

  • Товар A → 200 ₴ доставки
  • Товар B → 100 ₴ доставки

Якщо товар продається в кількох одиницях, його частка доставки рівномірно розподіляється між одиницями.

ВластивістьТипSalesDriveKeyCRMОписПриклад
delivery_method_idstring✅✅ID способу доставки"4"
delivery_method_namestring✅✅Назва способу доставки"Новая Почта"
product_shipping_costsnumber✅✅Частина доставки, віднесена до одиниці товару120
delivery_providerstring✅✅Провайдер доставки (як у CRM)"novaposhta"
delivery_sender_idstring✅❌ID відправника (як у CRM)"123"
delivery_typestring✅❌Тип доставки (як у CRM)"warehouse"
delivery_payerstring✅❌Хто оплачує доставку"buyer"
delivery_citystring✅✅Місто доставки"Киев"
delivery_regionstring✅✅Регіон/область"Киевская"
delivery_branch_numberstring✅❌Номер відділення"24"
delivery_address_rawstring✅✅Адреса (як рядок із CRM)"ул. ..."
has_postpayboolean✅❌Є післяплата (у KeyCRM завжди false — даних про накладений платіж CRM не віддає)true
delivery_postpay_sumnumber✅❌Сума післяплати (у KeyCRM завжди 0)500
tracking_numberstring✅✅Трек-номер"20400012345678"
has_delivery_databoolean✅✅У замовленні є дані доставкиtrue

5. Оплата

ВластивістьТипSalesDriveKeyCRMОписПриклад
payment_method_idstring✅✅ID способу оплати"2"
payment_method_namestring✅✅Назва способу оплати"Оплата картой"
payment_status_idstring✅❌ID статусу оплати (у KeyCRM доступна тільки назва статусу, без ID)"1"
payment_status_namestring✅✅Назва статусу оплати"Оплачено"
payment_datestring✅✅Дата оплати (якщо є)"2026-01-21 11:05:00"

6. Дані товару (картка)

ВластивістьТипSalesDriveKeyCRMОписПриклад
product_namestring✅✅Назва товару"Apple iPhone 13 128GB"
product_categorystring✅❌Категорія товару"Смартфоны"
product_manufacturerstring✅❌Виробник"Apple"
product_barcodestring✅✅Штрихкод"194252707564"
product_skustring✅✅Артикул товару в CRM"SKU-001"

7. База товару (як прийшло з CRM)

Ці поля показують «базові» значення, які SellerIQ використовує як основу для розрахунків.

ВластивістьТипSalesDriveKeyCRMОписПриклад
base_pricenumber✅✅Базова ціна20999
base_costPricenumber✅✅Базова собівартість14500

8. Ціна, знижки та комісії (по одиниці)

ВластивістьТипSalesDriveKeyCRMОписПриклад
product_pricenumber✅✅Ціна продажу одиниці товару19999
product_costnumber✅✅Собівартість одиниці14500
product_discount_amountnumber✅✅Знижка в сумі1000
product_discount_percentnumber✅✅Знижка у відсотках5
product_commission_amountnumber✅✅Комісія в сумі600
product_commission_percentnumber✅✅Комісія у відсотках3
product_other_expenses_amountnumber❌✅Інші витрати на замовлення, які CRM показує окремо від комісії маркетплейса — доставка, пакування, зарплата, комісія за прийом оплати тощо (для SalesDrive завжди null, бо в SalesDrive таких витрат в API немає)85

ℹ️ Комісія маркетплейса (product_commission_amount/product_commission_percent) розраховується по-різному залежно від CRM, але доступна для обох: у SalesDrive вона приходить готовим полем на товарі, у KeyCRM — вираховується з витрат замовлення, позначених у CRM як комісія майданчика.


9. Підсумкова економіка одиниці

ВластивістьТипSalesDriveKeyCRMОписПриклад
product_gross_margin_amountnumber✅✅Валова маржа (₴)4500
product_gross_margin_percentnumber✅✅Валова маржа (%)22.5
product_net_profit_amountnumber✅✅Чистий прибуток (₴)3780
product_net_profit_percentnumber✅✅Чистий прибуток (%)18.9

10. Маркетинг (UTM-мітки та кампанія)

ВластивістьТипSalesDriveKeyCRMОписПриклад
utm_sourcestring✅✅UTM source"google"
utm_mediumstring✅✅UTM medium"cpc"
utm_campaignstring✅✅UTM campaign"winter_sale"
utm_contentstring✅✅UTM content"banner_1"
utm_termstring✅✅UTM term"iphone 13"
utm_pagestring✅❌Сторінка"/product/123"
campaign_idstring✅❌ID маркетингової кампанії в CRM — не плутати з рекламною кампанією Rozetka з розділу 12"7"
campaign_namestring✅❌Назва маркетингової кампанії в CRM"Winter Sale"
has_utmboolean✅✅У замовленні присутні UTM-міткиtrue

11. Клієнт і рейтинг (якщо доступно)

ВластивістьТипSalesDriveKeyCRMОписПриклад
client_idstring✅✅ID клієнта"999"
client_created_atstring✅✅Дата створення клієнта"2025-11-02"
client_buyout_percentnumber✅❌% викупу82
client_buyout_levelnumber✅❌Рівень викупу3
client_unpicked_countnumber✅❌К-сть невикупів1
client_canceled_countnumber✅❌К-сть скасувань0
has_client_ratingboolean✅❌Є рейтинг клієнта (у KeyCRM завжди false — рейтингу викупу там немає)true

ℹ️ Рейтинг викупу клієнта — функція SalesDrive. У KeyCRM такого показника немає взагалі, тому client_buyout_percent, client_buyout_level, client_unpicked_count, client_canceled_count завжди null для замовлень з KeyCRM.


12. Реклама Rozetka

Якщо замовлення прийшло через рекламу Rozetka (Rozetka Підйом), SellerIQ збагачує подію даними про рекламні витрати, прив’язані до цього продажу.

ℹ️ Рекламні витрати вираховуються за принципом «з моменту останнього замовлення» — тобто враховуються покази, кліки та витрати на товар у рекламній кампанії з дня попереднього продажу до дня поточного. Це дозволяє оцінити реальну вартість залучення кожного конкретного замовлення.

Поля ad_cost, ad_views, ad_clicks масштабуються пропорційно частці виручки конкретного товару в замовленні — щоб SUM в Mixpanel давав коректні підсумки.

ВластивістьТипSalesDriveKeyCRMОписПриклад
is_adboolean✅✅Замовлення прийшло через рекламу Rozetka (utm_campaign=Rozetka + utm_medium=cpc)true
ad_costnumber✅✅Витрати на рекламу (₴), масштабовані на частку товару45.20
ad_viewsnumber✅✅Покази в рекламі, масштабовані на частку товару312
ad_clicksnumber✅✅Кліки в рекламі, масштабовані на частку товару8
ad_cponumber✅✅Вартість замовлення (CPO) — витрати / кількість транзакцій45.20
ad_cpcnumber✅✅Вартість кліку (CPC) — витрати / кількість кліків5.65
ad_ctrnumber✅✅CTR — кліки / покази0.026
ad_views_per_ordernumber✅✅Кількість показів на одне замовлення, масштабована на частку товару312
ad_clicks_per_ordernumber✅✅Кількість кліків на одне замовлення, масштабована на частку товару8

ℹ️ Для замовлень без реклами (is_ad = false) всі поля ad_* будуть null або 0. Поле is_ad присутнє в кожній події.

Для детального аналізу рекламних витрат по плейсментах і кампаніях — дивіться подію 🔗 ad_item_snapshot.


13. Додаткові витрати, доходи та параметри (123siq)

SellerIQ дозволяє передавати додаткові дані через коментар до замовлення в CRM за допомогою спеціальних директив 123siq.

Система читає коментар замовлення, знаходить директиви 123siq, застосовує їх до конкретного товару або до всього замовлення, за потреби розподіляє значення між одиницями товару і передає результат у подію order_item_snapshot.

ℹ️ Який саме коментар читається — залежить від CRM: у SalesDrive це загальний коментар до замовлення; у KeyCRM — коментар менеджера (manager_comment), а не коментар клієнта. Синтаксис директив і логіка обробки однакові для обох CRM.

Загальний формат директив

  • @siq параметр=значення
  • @siq параметр.КОД_ТОВАРУ=значення

Де:

  • параметр — довільне ім’я (наприклад ads_cost, promo_name);
  • КОД_ТОВАРУ — код товару (SKU) з CRM (опційно);
  • значення — число або текст.

Коментар замовлення може містити будь-який текст — SellerIQ обробляє тільки рядки з директивами @siq.

Типи значень

📉 Витрата (зменшує прибуток)

Приклад: @siq ads_cost=-300

Витрата 300 відноситься до всього замовлення, розподіляється між усіма товарами пропорційно їх виручці, за наявності кількох одиниць товару — розподіляється між усіма одиницями і зменшує чистий прибуток.

📈 Дохід (збільшує прибуток)

Приклад: @siq extra_income=+150

Дохід 150 відноситься до всього замовлення, розподіляється між усіма товарами пропорційно їх виручці, за наявності кількох одиниць товару — розподіляється між усіма одиницями і збільшує чистий прибуток.

Важливо: будь-які доходи і витрати без вказання коду товару завжди розподіляються між усіма товарами замовлення.

🏷 Параметр без впливу на прибуток

Приклад: @siq promo_name=BlackFriday

Параметр застосовується до всього замовлення, передається в усі події order_item_snapshot усіх товарів цього замовлення, не впливає на розрахунок прибутку і може використовуватися для фільтрації та сегментації в Mixpanel.

Прив’язка до конкретного товару

Приклад: @siq packaging_cost.108089307=-50

Параметр застосовується тільки до товару з кодом 108089307, розподіляється між усіма одиницями цього товару і не зачіпає інші товари замовлення.

Як директиви передаються в аналітику

Кожна директива @siq стає окремою властивістю події order_item_snapshot.

  • для витрат і доходів передається значення, розраховане для конкретної одиниці товару;
  • параметри без впливу на прибуток передаються однаковими в усі події товарів замовлення.

Усі параметри, передані через @siq, доступні в Mixpanel для фільтрів, сегментації, формул, звітів і сповіщень.

Перевизначення базових значень (override)

Деякі параметри без знака + або - використовуються як перевизначення базових значень і змінюють основу розрахунків unit-економіки.

⚠️ Назви override-параметрів залежать від CRM — вони збігаються з тим, як поле називається у відповідній CRM, тому для SalesDrive і KeyCRM це різні набори назв. Параметр, якого немає у списку для вашої CRM, просто не спрацює.

SalesDrive — для товару (з вказанням коду товару):

  • price
  • costPrice
  • commission
  • percentCommission
  • discount
  • percentDiscount

SalesDrive — для замовлення (без вказання коду товару):

  • shipping_costs

KeyCRM — для товару (з вказанням коду товару):

  • price
  • purchased_price
  • discount_amount
  • discount_percent

KeyCRM — для замовлення (без вказання коду товару):

  • shipping_price
  • other_expenses — перевизначає суму інших витрат (див. секцію 8, product_other_expenses_amount)

ℹ️ У KeyCRM комісія маркетплейса (commission/percentCommission) більше не переозначається через @siq — вона завжди береться з реальних витрат замовлення в CRM.

Приклад перевизначення базової ціни товару (SalesDrive): @siq price.108089307=19999

Приклад перевизначення вартості доставки замовлення (SalesDrive): @siq shipping_costs=300

Приклад перевизначення вартості доставки замовлення (KeyCRM): @siq shipping_price=300

Ці значення використовуються як база для всіх подальших розрахунків unit-економіки.


🔀 SalesDrive і KeyCRM — на що звертати увагу

Наявність кожної властивості по CRM позначена у відповідній таблиці вище колонками SalesDrive / KeyCRM. Окремо варто пам’ятати про дві речі, які колонками ✅/❌ не показати — там властивість присутня в обох CRM, але означає різне:

  • order_type_id / order_type_name — для SalesDrive це окремий тип замовлення, для KeyCRM — стадія воронки, до якої належить поточний статус (див. секцію 2);
  • override-параметри @siq — назви параметрів різні для кожної CRM (див. секцію 13).

💡 Щоб відфільтрувати звіт лише по одній CRM — використовуйте crm_provider IS "salesdrive" або crm_provider IS "keycrm" (див. секцію 1).


🔗 Пов’язані інструкції

Last updated on