Заказать

Кейс: Интернет-магазин Vivasan

Этап разработки проекта Интернет-магазин Vivasan - Введение и концепция проекта

Введение и концепция проекта

Разработка комплексной e-commerce платформы для международного бренда Vivasan. Ключевая бизнес-задача проекта — автоматизация розничных продаж и создание закрытой экосистемы для B2B-партнеров. Реализована полноценная система аутентификации пользователей, персональный личный кабинет с архивом заказов, сквозной расчет индивидуальных дисконтных программ для партнеров бренда, а также интеграция защищенного платежного шлюза.

Интерфейс проекта Интернет-магазин Vivasan - Асинхронный полнотекстовый поиск (Живой поиск)

Асинхронный полнотекстовый поиск (Живой поиск)

Для повышения конверсии и UX спроектирован модуль мгновенного асинхронного поиска с динамическими подсказками (Live Search). Механизм оптимизирован под реактивный ввод: фронтенд перехватывает события ввода данных в поисковую строку и отправляет оптимизированные AJAX-запросы на сервер. На стороне бэкенда реализован алгоритм поиска по частичному вхождению подстроки в связанных таблицах категорий и товаров, возвращающий структурированный JSON-массив данных. Это исключает избыточную перезагрузку страниц и ускоряет навигацию.

Этап разработки проекта Интернет-магазин Vivasan - Многоуровневая система ролей и динамическое ценообразование

Многоуровневая система ролей и динамическое ценообразование

Архитектура базы данных спроектирована с учетом разграничения прав доступа и динамического расчета цен. Разработан B2B-модуль: зарегистрированный пользователь может отправить заявку на партнерство через личный кабинет. При одобрении администратором, статус аккаунта обновляется (флаг is_partner), активируя глобальный Middleware для пересчета стоимости всего каталога с учетом индивидуальной скидки, хранящейся в БД. Для удобства оформления заказов внедрено автозаполнение профиля: данные пользователя (ФИО, адрес, контакты) кэшируются в сессии и автоматически подставляются в чек-аут форму.

Интерфейс проекта Интернет-магазин Vivasan - Интеграция эквайринга Альфа-Банка и автоматизация статусов через Cron

Интеграция эквайринга Альфа-Банка и автоматизация статусов через Cron

Для приема платежей интегрирован API-шлюз Альфа-Банка. Процесс оплаты защищен транзакционной моделью: после подтверждения корзины генерируется уникальный UUID заказа, который передается в платежную систему. Для предотвращения зависания транзакций разработан фоновый скрипт синхронизации. Планировщик задач (Laravel Task Scheduling / Cron) каждые 5 минут валидирует пул неоплаченных счетов за отчетный период, выполняя защищенные API-запросы к банку для проверки статуса транзакции. При успешном эквайринге статус заказа обновляется, а администраторы получают мгновенное уведомление.

Этап разработки проекта Интернет-магазин Vivasan - Парсинг каталога и интеграция с API Нацбанка РБ

Парсинг каталога и интеграция с API Нацбанка РБ

Наполнение интернет-магазина автоматизировано через импорт структурированных Excel-файлов. На бэкенде развернут потоковый парсер, который итеративно обрабатывает ячейки таблиц, снижая нагрузку на оперативную память (RAM). Поскольку оптовые прайс-листы поставщика предоставляются в иностранной валюте, реализован модуль мультивалютности. Скрипт в реальном времени запрашивает актуальные котировки валют через официальный API Национального банка Республики Беларусь (НБРБ), конвертирует стоимость и сохраняет финальные цены в белорусских рублях (BYN).

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

Синхронизация складских остатков и регулярные выражения

Для исключения дублирования товаров при обновлении остатков через Excel-файлы разработана система идентификации на основе регулярных выражений. Из-за отсутствия жесткой стандартизации в файлах поставщика, артикул товара не всегда вынесен в отдельное поле. Архитектура парсера включает валидацию через RegExp: если ячейка артикула пуста, скрипт анализирует текстовую строку названия, извлекает паттерн артикула с помощью регулярного выражения и выполняет точечное сопоставление (Upsert) с существующей записью в базе данных.

Этап разработки проекта Интернет-магазин Vivasan - Контроль лимитов и валидация складских остатков на фронтенде

Контроль лимитов и валидация складских остатков на фронтенде

Бизнес-логика платформы строго исключает продажу отсутствующих на складе позиций. Количество доступного товара жестко контролируется на уровне СУБД (поле balance). При снижении остатков до нуля бэкенд передает соответствующий флаг доступности на фронтенд. Интерфейс динамически блокирует (дизейблит) триггеры покупки и кнопку «Заказать», заменяя их на информационный статус «Нет в наличии», что предотвращает создание ошибочных заказов и снижает нагрузку на менеджеров.

Интерфейс проекта Интернет-магазин Vivasan - Безопасность транзакций и серверная валидация цен

Безопасность транзакций и серверная валидация цен

Безопасность финансовых операций — приоритет для e-commerce. Все расчеты стоимости, скидок и партнерских дисконтов изолированы на стороне сервера (Server-Side Architecture). В отличие от клиентских скриптов (JavaScript), которые пользователь может модифицировать через инструменты разработчика в браузере, логика ценообразования Vivasan обрабатывается исключительно интерпретатором PHP до генерации HTML-кода (внутри контроллеров и Blade-шаблонов). Финальная проверка и валидация цен происходят на бэкенде в момент формирования платежного поручения для Альфа-Банка, что полностью исключает возможность манипуляции данными со стороны злоумышленников.

Дмитрий Кашевский - Fullstack разработчик
Автор кейса

Дмитрий Кашевский

Fullstack-разработчик и технический специалист.