Диалог
Столичная сеть аптек
Аптечная сеть „Диалог“ включает в себя 65 аптек в Москве и МО. На момент нашего входа в проект, существовал интернет-магазин на платформе, не позволяющей решений для развития онлайн-направления. Ассортимент поддерживался в ручном режиме, актуализация цен и остатков велась только по одному складу. Кроме этого, сайт не давал возможность вести маркетинговую активность, характерную для современного интернет-магазина.
Услуги
  • Разработка
  • Интеграция
  • UI/UX
  • Консалтинг
dialog.ru
2018
Задача
Онлайн-торговля была определена как приоритетное бизнес-направление. Стало очевидно, что без модернизации платформы интернет-магазина, а в будущем и всей цифровой инфраструктуры, обеспечить прогресс невозможно. Новый интернет-магазин, как важный стратегический узел, должен был поддержать развитие аптечной сети, и предоставить базовую платформу для дальнейшего создания онлайн сервисов.
Решения
  • Кастомный модуль обмена с 1С
  • Интеграции с торговыми площадками
  • Интерфейс, спроектированный под специфику продажи товаров из разных аптек
  • API для приложения сети аптек „Диалог“
  • Система управления баллами
Технологии
  • 1C Битрикс
  • ZEND EXPRESSIVE
  • VUE
Новая платформа

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

Актуальность номенклатуры

Важной задачей было предоставление пользователям актуальной информации о товарах - в какой аптеке и по какой цене они присутствуют. При этом, цены меняются относительно редко (один-два раза в день), а остатки в аптеках меняются постоянно. Совместно со специалистами по 1С клиента, нами была реализована интеграция с 1С, позволяющая без значительной нагрузки на сервер, практически в режиме онлайн, поддерживать актуальность всей номенклатуры на сайте.

  • Обмен данными
    за день мы обмениваемся десятками тысяч позиций и изменениями цен
  • Остатки по складам
    на сайте представлены реальные остатки по всем складам компании, и каждой конкретной аптеке
  • Скорость
    данные поступают практически в реальном времени, при это не замедляя работу сайта
Логирование ошибок

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

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

Обмен пользователями и заказами

Для оптимизации работы бекофиса, был доработан модуль обмена с 1С пользователями и заказами.

Выгрузка на торговые площадки

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

Каталог
Для любого интернет-магазина ключевое место — это каталог товаров. Поэтому особое внимание мы уделили проектированию и отрисовке макетов страниц каталога с удобными фильтрами и поиском.

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




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




Корзина и оформление
Весь процесс покупки также проектировался с учетом всех вышеописанных условностей. Например, чтобы пользователь видел незавершённые заявки на бронирование, мы добавили их в корзину.




API для мобильного приложения - бесшовный опыт пользователей

Мы разработали API для приложения сети аптек “Диалог”,, которое позволило реализовать в нем весь функционал сайта, а также расширить его сервисами, реализация которых в веб-среде невозможна. Также мы подготовили функциональную openAPI документацию, которая существенно упростила процесс разработки приложения.

При разработке API, совместно с разработчиками мобильного приложения, были спроектированы и реализованы дополнительные сервисы, которые посредством сайта обеспечивали взаимодействие пользователей приложения с бекофисом Диалог:

Функция — расшифровать рецепт

Интересная и, как оказалось, востребованная функция, которая позволяет сфотографировать в приложении рецепт врача, который далеко не всегда можно самостоятельно понять, и отправить его менеджерам-фармацевтам Диалога. Через небольшой промежуток времени, пользователь получает расшифровку рецепта. В ближайших планах добавление возможности перейти сразу к покупке товаров из списка.

Отправка Push-уведомлений из 1С

Отправка Push-уведомлений из 1С как в автоматическом режиме, при наступлении тех или иных событий с заказом, так и произвольных сообщений менеджеров.

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

Единая система лояльности

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

Решение данной задачи проходило в несколько этапов:

Разработка механизмов активации карт лояльности и синхронизации информации о пользователях

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

Проектирование и разработка единой системы управления баллами

Это независимый надежный веб-сервис со своим API, с которым взаимодействует сайт, 1С центрального офиса и каждая из аптек сети Диалог при покупке клиента. Высокая скорость работы СУБ позволяет всей сети аптек, сайту и мобильному приложению делать сотни запросов одновременно - получение информации о доступных баллах занимает не больше 0,1 секунды, что обеспечивает комфортное взаимодействие пользователей с системой.

Информация о баллах в личном кабинете

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

Резервирование баллов

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

Работаю с командой с 2017 года по Диалогу, а так история нашего знакомства длится с 2010 года. Поработали вместе в 4х проектах. И всегда работа делается на отлично. Сайты красивые, функциональные, быстрые, растут в поисковиках. Мы часто меняем решение на ходу, команда подстраивается и переделывает под новое веяние) если наши идеи совсем бредовые, менеджер пытается вернуть наш мозг в правильное русло)) каждая поставленная задача нами сразу просматривается наперед, на перспективу, не нанесет ли это урона, а может лучше ее сделать немного по другому, и будет больший результат, работа делается не „в тупую“. Радует что всегда можно спросить совета, радует то, что заявлено будет сделано на 100%, без сюрпризов и недопонимания.
Кристина Шипова
руководитель интернет-направления
следующий проект
Ароса Маркет
Продукты питания в розницу