Кейс: платформа ценообразования B2C

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

В контуре 2–5 тыс. SKU, цены пересчитываются 2–4 раза в сутки. Ручная корректировка прайсов сократилась примерно на 60–70%.

Карточка проекта

Формат
Платформа клиентских цен для нескольких торговых площадок, не витрина магазина
Продукт
Парсинг маркетплейсов, прайсы поставщиков, формулы по каналам, блок аналитики
Стек
Laravel, Bootstrap, очереди и расписание пересчёта
Роль
Backend и админка: сбор данных, формулы, пересчёт 2–4 раза в сутки
Статус
Внедрён
Дашборд платформы ценообразования B2C
Дашборд: ассортимент на мониторинге, отклонения и клиентские цены каналов.
Настройка формул цен для маркетплейсов
Правила канала: наценка, минимальная маржа, округление и реакция на цену конкурента.

Результат

Ассортимент 2–5 тыс. SKU в мониторинге
Пересчёт 2–4 раза в сутки по расписанию
Ручная работа корректировка прайсов сократилась примерно на 60–70%
Роль менеджера исключения, а не полный пересчёт
Что внедрилиКак работает
МаркетплейсыПарсеры забирают витринные цены с Ozon, Мегамаркета и Яндекс.Маркета
ПоставщикиПрайсы подключаются к тем же SKU: закупочная цена и наличие в формуле
ФормулыСвои правила на канал: наценка, минимальная маржа, округление, реакция на конкурента
РасписаниеПересчёт 2–4 раза в сутки очередью Laravel, между прогонами — только исключения

Задача

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

Как было

  • цены конкурентов и поставщиков сводили вручную
  • полный прайс пересчитывали таблицами каждый день
  • одна «средняя» цифра не различала каналы продаж

Как стало

  • парсеры и прайсы поставщиков кормят одни и те же SKU
  • пересчёт идёт 2–4 раза в сутки очередью Laravel
  • менеджер правит исключения, а не весь ассортимент

Кто пользуется платформой

Это не витрина для покупателя. Внутри — менеджеры цен и правила каналов. Посетитель магазина эту админку не видит.

Менеджер

Смотрит отклонения между прогонами и правит спорные позиции. Полный пересчёт 2–5 тыс. SKU больше не его смена.

Администратор правил

Задаёт формулы канала: наценка, минимальная маржа, округление, реакция на цену конкурента. Итог — клиентская цена площадки, не одна цифра на весь бизнес.

Как устроена работа

  1. Маркетплейсы

    Парсеры забирают витринные цены с Ozon, Мегамаркета и Яндекс.Маркета. Сопоставление идёт по артикулам и карточкам, которые менеджер привязал в платформе.

  2. Поставщики

    Прайсы поставщиков подключаются к тем же SKU. Закупочная цена и наличие участвуют в формуле вместе с рыночными ориентирами.

  3. Формулы канала

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

  4. Расписание

    Пересчёт запускается 2–4 раза в сутки очередью Laravel. Между прогонами менеджер видит отклонения и правит только исключения.

Что входит в платформу

Парсинг

Ozon, Мегамаркет, Яндекс.Маркет. Витринные цены конкурентов по привязанным карточкам.

Поставщики

Прайсы на те же SKU: закупочная цена и наличие участвуют в формуле канала.

Формулы

Наценка, минимальная маржа, округление, реакция на конкурента — отдельно для каждой площадки.

Аналитика

Отклонения и исключения между прогонами. Менеджер не гоняет полный прайс руками.

Почему Laravel

Нужны были очереди парсинга, расписание, разные формулы по каналам и админка без отдельной CMS.

Laravel закрыл API, джобы и веб-интерфейс в одном контуре. Связанное продающее описание модуля — на странице автоматизации ценообразования e-commerce.

Пример ответа API (не фрагмент боевого контура заказчика):

{
  "sku": "A-1042",
  "channel": "ozon",
  "competitor_price": 129.90,
  "cost": 84.00,
  "client_price": 124.00,
  "recalculated_at": "2026-09-17T06:15:00+03:00"
}

Ограничения

В открытом описании

  • стек, источники, частота пересчёта и эффект на ручную работу
  • скрины дашборда и формул без бренда заказчика

Не публикуем

  • название заказчика
  • боевые формулы и клиентская база

Частые вопросы

Сколько позиций система реально пересчитывает?

В рабочем контуре порядка 2–5 тыс. SKU. Это не витрина «все товары рынка», а ассортимент, который заказчик поставил на мониторинг.

Как часто обновляются цены?

2–4 раза в сутки по расписанию. Между прогонами менеджеры правят исключения, а не гоняют полный прайс руками.

Что изменилось в работе менеджеров?

Ручная корректировка прайсов сократилась примерно на 60–70%. Полный пересчёт ушёл в платформу, в фокусе остались спорные позиции и правила каналов.

Это одна цена на весь бизнес?

Нет. Для каждой площадки свой набор правил, итог — клиентская цена канала. Связанный модуль автоматизации — на странице ценообразования e-commerce.

← Все кейсы · автоматизация ценообразования e-commerce · разработка на Laravel напрямую с исполнителем · Контакты