Интеграция EasyDirect и магазина

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

Конечно, имея несколько рекламных каналов сложно отследить откуда перешел покупатель, но каждый магазин знает примерное соотношение количества продаж из каждого канала. Этого вполне достаточно для определения эффективности. Для сезонных товаров часто достаточно просто ответить на вопрос: есть ли спрос и продажи вообще? Не стоит ли запустить рекламную кампанию позже?

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

Алгоритм

  • Один раз в сутки система получает расход компании за интервал времен начиная с даты старта компании заканчивая текущим днем. Этот расход можно посмотреть во вкладке отчеты у каждой компании (расход за последний период). Тут же можно привязать товар который рекламирует данная компания, список передается через событие getShopItemsInfo.
  • Как только расход текущей и всех связанных компаний достигает значения определенного в настройках (поле "Расход для сброса отчета"). Система получает количество проданных товаров через событие getSoldShopItemsCNTHandler.
  • Происходит расчет и запись полученного отчета в историю и сброс даты старта компании для сбора статистики следующего интервала.
  • Рассчитанный отчет и несколько предыдущих отправляются в функцию события getCompanyPauseInterval для получения указаний относительно действий над кампанией. Это событие возвращает время в часах на которое надо отключить текущую кампанию и все с ней связанные, если эффективность не удовлетворительная.

Вашему программисту остается только задать алгоритмы по вашим правилам для событий:

getShopItemsInfo - возвращает список товаров или разделов для привязки товара к конкретной компании.

getSoldShopItemsCNTHandler - возвращает количество проданных товаров в течение определенного времени.

getCompanyPauseInterval - рассчитывает время в часах на которое надо остановить компании при низких продажах (0 - не останавливать).

Пример

Шаблон файла для реализации всех событий модуля с комментариями и примерами вы можете скачать здесь.

Измените его по вашим алгоритмам и добавьте в /bitrix/php_interface/init.php

© EasyDirect