LP Agency

Развитие интернет-магазина издательства

на 1С-Битрикс с многоуровневой системой цен

IDM — «Издательство МИФ» — интернет-магазин издательства, работающий одновременно с розничными и корпоративными покупателями. Проект включает стандартные продажи, оптовый каталог, предзаказы и специальные сценарии покупки книг.

LP Agency подключилась к проекту в 2021 году и с этого момента занимается его технической поддержкой и развитием. Это не был проект полной переработки сайта: мы постепенно развиваем существующую систему, исправляем ошибки, обновляем платформу и реализуем новые бизнес-сценарии.

О проекте

Отрасль:
издательский бизнес, e-commerce
Тип проекта:
интернет-магазин / B2C + B2B
Технологии:
1С-Битрикс, PHP, MySQL, JavaScript, интеграции служб доставки
Срок работы:
с 2021 года по настоящее время
Формат работы:
техническая поддержка и постоянное развитие
Сайт:

Задача

Главная особенность проекта — большое количество различных сценариев покупки, которые должны одновременно работать внутри одного интернет-магазина.

На сайте существуют:

  • розничные покупатели;
  • оптовые покупатели;
  • пользователи с доступом к предзаказам;
  • несколько уровней оптовых цен;
  • акции;
  • товары с ограниченным количеством;
  • предзаказы на книги, которые еще находятся в производстве;

специальные сценарии покупки, например «Подарить библиотеке».

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

idmkniga1

Что было сделано

Развитие корзины и системы ценообразования

Одним из наиболее сложных направлений стала работа с корзиной.

Для разных типов пользователей реализована различная логика покупки. В частности, оптовый каталог использует несколько уровней цен, которые зависят от количества заказанных экземпляров.

Мы дорабатывали механизм таким образом, чтобы при работе с корзиной система учитывала:

  • актуальную цену товара;
  • текущие остатки на складе;
  • тип покупателя;
  • действующие акции;
  • количество товара в заказе;
  • правила перехода между уровнями оптовых цен.

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

Работа с каталогом

Каталог магазина имеет собственную бизнес-логику сортировки.

Книги распределяются по нескольким статусам: новинки, предзаказы и остальные издания. При этом книга, которая закончилась, не удаляется из каталога — она остается доступной для просмотра, но перемещается в конец списка.

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

Мы дорабатывали эту логику и приводили отображение каталога к корректному состоянию в зависимости от статуса и наличия товара.

Специальные сценарии покупки

Отдельным направлением стало развитие функционала «Подарить библиотеке».

Это социальный проект, позволяющий пользователю приобрести книгу по специальной цене для передачи в сельскую библиотеку.

Для этого сценария реализовывались:

  • отдельная кнопка в карточке книги;
  • специальная цена;
  • отдельный тип заказа;
  • отдельная логика корзины;
  • специальные условия оформления;
  • отдельная оферта;
  • информационные блоки о проекте;
  • отдельный шаблон уведомления после оформления заказа.

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

Личный кабинет и оформление заказа

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

В числе задач:

  • исправление авторизации и регистрации;
  • работа с историей заказов;
  • исправление отображения созданных заказов;
  • работа с предзаказами;
  • корректировка различных сценариев оформления;
  • исправление ошибок в формах;
  • добавление дополнительных услуг;
  • механизм подарков;
  • отображение ссылок на покупку книги на Ozon и Wildberries.

Также дорабатывалась мобильная версия магазина — в том числе элементы навигации, авторизация, корзина и оптовый каталог.

Доставка

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

Мы разбирались с работой:

  • СДЭК;
  • Boxberry;
  • Достависта;
  • AWZ Яндекс Доставка.

В том числе исправляли проблемы с отображением пунктов выдачи, картами, кнопками выбора точки доставки и полями заказа.

Для некоторых проблем потребовалась диагностика взаимодействия сторонних модулей с существующим шаблоном оформления заказа и восстановление стандартной логики для проведения тестов.

idmkniga2

Техническое сопровождение

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

Мы исправляли ошибки, возникающие после обновлений 1С-Битрикс, проводили обновление тестовой и рабочей версий и сохраняли существующие доработки.

В текущем этапе развития проекта выполняется:

  • обновление платформы 1С-Битрикс;
  • обновление PHP;
  • сохранение существующей бизнес-логики;
  • упрощение авторизации и регистрации;
  • исправление проблем с отображением заказов в личном кабинете;
  • устранение проблем с корзиной и авторизацией.

Что было самым сложным

Основная сложность проекта — не отдельная техническая задача, а большое количество взаимосвязанных правил интернет-магазина.

Цена, количество товара и возможность его покупки зависят от типа пользователя, статуса книги, акции, остатка и количества экземпляров в заказе.

При этом изменения в одной части системы могут влиять на корзину, каталог, личный кабинет и оформление заказа.

Поэтому развитие проекта требует не просто исправления отдельных ошибок, а понимания существующей бизнес-логики и аккуратного внесения изменений в работающий интернет-магазин.

Результат

За время работы проект постепенно развивался без необходимости полной замены существующего интернет-магазина.

С 2021 года LP Agency обеспечивает техническую поддержку и развитие проекта, включая:

  • развитие бизнес-логики магазина;
  • поддержку различных типов покупателей;
  • работу с оптовыми ценами;
  • развитие предзаказов;
  • доработку корзины;
  • специальные сценарии покупки;
  • интеграции доставки;
  • развитие личного кабинета;
  • исправление ошибок;
  • обновление CMS и серверного окружения.

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