Цель проекта реализовать корректный вывод остатков товаров в интернет-магазине с учетом региональной логики мультискладов, чтобы незарегистрированные пользователи видели общую сумму остатков со всех складов, авторизованные пользователи видели остаток только со склада, обслуживающего их регион и не возникало путаницы при оформлении заказов.
По умолчанию InSales выводит суммарный остаток по всем складам, не учитывая региональность, которая начинает работать только на этапе оформления заказа. Это приводит к недопониманию: пользователь видит, что товар “в наличии”, но не может его заказать и нет способа штатно получить остаток с нужного склада до начала оформления.
Была реализована кастомная логика выбора склада с привязкой к региону, включающая:
- Попап выбора склада. Всплывающее окно появляется один раз при первом визите на сайт.
- Посетителю предлагается выбрать ближайший склад из списка (названия складов совпадают с мультискладами в InSales).
- В выпадающем списке — пояснение “Регионы работы склада”, раскрывающееся по нажатию (редактируется из виджета).
Привязка склада к пользователю
- После выбора, выбранный склад сохраняется в браузере пользователя (localStorage).
- Авторизованные пользователи могут изменить склад в Личном кабинете, либо через отдельный пункт меню, либо в блоке “Адрес доставки”.
Механизм сопоставления
- В pop-up названия складов должны точно соответствовать названиям складов в разделе Мультисклады InSales.
- По совпадению названия система понимает, какой склад используется для вывода остатков.
Вывод остатков
- Если пользователь не авторизован - отображается суммарный остаток со всех складов.
- Если пользователь авторизован - отображается остаток с выбранного склада.
- В категории и карточке товара если на выбранном складе остаток = 0 — отображается “Нет в наличии”, даже если на других складах товар есть.
Виджет складов встроен в визуальную часть темы. Виджет содержит: список складов; редактор для пояснений по географии каждого склада; второе пояснение — про необходимость совпадения склада и адреса доставки. Все данные редактируются без программиста через интерфейс админ панели. Менеджер может зайти в профиль клиента в админке и изменить выбранный склад вручную.
При добавлении нового склада в InSales: Администратор добавляет новый склад вручную в pop-up виджете; Указывает географию работы в пояснении; Название должно совпадать с мультискладом для корректной работы.
Технические ограничения и особенности InSales
- Платформа не предоставляет API или доступ к региональной логике мультискладов;
- Сопоставление регионов и складов возможно только через ручной выбор пользователем;
- Автоматическое определение по IP и связка с мультискладом — невозможны.
Свяжитесь с нами для консультации и разработки индивидуального решения под ваши задачи. Поможем оптимизировать бизнес-процессы и повысить эффективность вашего e-commerce проекта.