Калькулятор

+7 (499) 350-07-79

PromoMall

Внутренний сервис для управления промоматериалами фармацевтической компании

Заказчик

Мировой лидер в области инновационных решений для здоровья и красоты
Российское подразделение международной компании Merz работает с 1997 года. 

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

Задача

Автоматизировать заказ и движение промоматериалов для сотрудников и партнеров компании
У Merz уже была единая база промоматериалов, с которой работали врачи и медицинские представители. Но для масштабной и устойчивой работы бизнесу был нужен отдельный цифровой сервис, который позволит оформлять заказы на печатные и электронные материалы, учитывать остатки, сопровождать согласование и связывать весь процесс с существующей корпоративной системой.
Перед командой WINFOX стояла задача разработать решение для веба и мобильных устройств, интегрированное с внутренней платформой заказчика и системой складского учета.
Основные вовлеченные отделы компании
Заказчик попросил разработать приложение для веба и мобильных устройств, включая планшеты и смартфоны, а также предусмотреть интеграцию в корпоративную систему, которая у него уже есть.

Решение

Единая система управления промоматериалами с переносом ключевой бизнес-логики на сервер
Мы разработали PromoMall как внутренний сервис, который автоматизирует заказ, согласование, движение и контроль промоматериалов. Ключевую бизнес-логику перенесли на бэкенд: именно там обрабатываются правила учета, движение материалов по складу, расчет доступности, логика уведомлений и маршрутизация согласований.
Такой подход позволил построить не просто интерфейс для оформления заявок, а устойчивую внутреннюю систему, которая учитывает специфику фармацевтической компании и поддерживает сложные бизнес-процессы без опоры на типовые внешние решения вроде SAP или 1С.

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

Борис

Бэкенд-разработчик

Технологический стек
PHP 8.2 + Laravel 11.9

серверный алгоритмический язык программирования и PHP-фреймворк для реализации всех функций приложения

MySQL

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

PHPOffice

библиотека для создания и парсинга документов MSOffice

JWT-Auth

система аутентификации/авторизации

Разработали два веб-приложения для пользователей с разными ролями
Сделали публичную и административную части сервиса, которым пользуются сотрудники Merz и врачи.

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

Этот раздел непосредственно связан с мероприятиями в Merz Claud и с базой врачей в Merz City. 

В публичной части работают пользователи с ролями «Менеджер СКК» и «Территориальный Менеджер».
Авторизация
Все маршруты приложения, кроме страницы входа, защищены. К этим страницам невозможно получить доступ без авторизации. 

Медицинские представители, которые зарегистрированы в корпоративной информационной системе MerzCity, могут входить без дополнительных данных, например, логина и пароля.

Авторизация реализована весьма необычно с точки зрения бизнес-логики. Так как это внутрикорпоративное приложение, данные пользователей хранятся в информационной системе MerzCity. Наше приложение не хранит никаких чувствительных данных пользователя. Это и есть главный механизм защиты.

Борис

Бэкенд-разработчик

Профиль
Личный кабинет как рабочее пространство пользователя

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

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

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

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

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

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

Если мероприятие планируется заранее, пользователь может оформить регулярный заказ независимо от текущих остатков на складе. Если материалы нужны срочно, можно отправить срочный заказ — он будет принят, если нужные позиции есть в наличии.
Такое разделение делает систему ближе к реальной логике бизнеса: плановые активности обслуживаются по одному сценарию, а срочные запросы — по другому, без смешения процессов.
Регулярные и срочные заказы
Уведомления
Прозрачное сопровождение заказа на всех этапах

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

Интересный кейс — отправка отложенных уведомлений. Чтобы все сделать правильно и надежно, использовали паттерн «Наблюдатель», который в Laravel реализуется с помощью системы событий и слушателей. Для отправки уведомлений с задержкой и по расписанию подключили механизм очередей, что не только позволило реализовать необходимый функции, но и снизило нагрузку на сервер.

Борис

Бэкенд-разработчик

Административная часть
Отдельная панель для управления рутинными операциями и контроля движения промоматериалов

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

Администраторы размещают на сайте промоматериалы, заполняют карточки материалов, добавляют и редактируют описания, смотрят аналитику, одобряют заказы, контролируют наличие печатных материалов и отправляют материалы в архив. Мы все предусмотрели!

Сергей

Фронтенд-разработчик

Раздел с промоматериалами
Управление содержимым системы и остатками в одном интерфейсе

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

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

Если в одном заказе есть материалы, за которые отвечают разные бренд-менеджеры, система автоматически распределяет согласование между ними. Бренд-менеджер может скорректировать, допечатать, согласовать или отклонить заказ. После согласования заказ переходит к координатору, который может продолжить обработку, выгрузить данные в Excel или отправить материалы в отгрузку.
Это снижает ручную координацию между участниками процесса и делает согласование масштабируемым.

Когда заказ согласован, он попадает к координатору. Он может скорректировать заказ, выгрузить его в Excel или отгрузить.

Сергей

Фронтенд-разработчик

Управление уведомлениями
Централизованная коммуникация с пользователями системы

Координатор и администратор могут отправлять уведомления всем пользователям сервиса — например, сообщать о поступлении новых промоматериалов на склад. За счет этого PromoMall работает не только как система заказа, но и как канал операционной коммуникации внутри корпоративного процесса.
Управление уведомлениями

Результат

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

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

Станислав

Менеджер проекта

Технологический стек
React и Vue.js

фреймворки для разработки интерфейсов

TypeScript

язык программирования

CSS Module

работа со стилями

Axios

работа с запросами на сервер

Vite

сборщик проекта

Команда проекта
Менеджер проекта
Станислав
Технический директор
Александр Хрущев
UX/UI-дизайнер
Дмитрий
Разработчики
Борис
Сергей
Саид
Тестировщики
Анна
Алексей

Другие работы

XO Player

Музыкальный плеер для Android с мощным эквалайзером и фонотекой SoundCloud

Amber CRM

CRM-система для удаленного управления бизнесом: проектирование, дизайн, разработка и тестирование приложения для Android

Расскажите про свой проект

Pуcтам Myxамедьянов

Руководитель студии

Имя

Компания

E-mail

Телефон

Сообщение

Планируемый бюджет

₽ 500 000

₽ 1 500 000

₽ 2 500 000

Для отправки нажмите чекбокс с условиями