Кейс · интернет-магазин с оптом

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

domamir.ru ↗
Клиент
Domamir
Роль
Дизайн · разработка · запуск
Стек
PHP · vanilla JS · MySQL
Главная страница domamir.ru: тёплый интерьер ванной и заголовок «Domamir для ванной и дома»

Опт у бренда шёл вручную: заявка на почту, ответное предложение, прайс в переписке — каждый новый дилер съедал время менеджера. Нужен был магазин, в котором розница покупает сама, а партнёр сам получает свои цены, прайс и документы. Мы спроектировали интерфейсы, нарисовали дизайн и написали весь код с нуля — от каталога до генератора прайсов.

Каталог domamir.ru: фильтры по типу, серии, размеру и цвету, карточки полотенцесушителей
каталог: 11 моделей, фильтры по серии, размеру и покрытию
Карточка полотенцесушителя Mama: шесть покрытий и размеры внутри одной карточки
карточка: 6 покрытий и размеры без дублей
Раздел благотворительности domamir.ru: 10% прибыли — на помощь детям и семьям
благотворительность: хроника ведётся из админки

На телефоне

Главная domamir.ru на телефоне
главная
Карточка полотенцесушителя на телефоне: галерея, цена, покрытия
карточка товара

Личные цены партнёров

Менеджер задаёт партнёру скидку — и весь каталог показывает ему его цены. Итог заказа пересчитывается на сервере: браузеру цену не доверяем.

Интеграция с «МойСклад»

Магазин связан с «МойСклад», в котором бренд ведёт учёт, — данные между сайтом и учётной системой не переносятся вручную.

Прайс в Excel

Партнёр скачивает актуальный прайс со своими ценами. Файл собирает собственный генератор XLSX — без сторонних библиотек.

НДС и документы

Расчёт с НДС и без, счета и УПД в кабинете. Ссылка на счёт подписана и открывается прямо из письма, без входа.

Одна карточка — все варианты

Покрытие и размер выбираются внутри карточки, а не размножаются дублями. К модели — чертёж, инструкция и сертификат.

Безопасность

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

ТехническиPHP 8 без фреймворковvanilla JSMySQLинтеграция с «МойСклад»свой XLSX-генераторноль зависимостей в проде

Опт

  1. 01

    Заявка с реквизитами

    Организация, ИНН, контакт — пароль для кабинета партнёр задаёт сразу.

  2. 02

    Подтверждение

    Менеджер проверяет реквизиты, назначает скидку и одной кнопкой открывает доступ.

  3. 03

    Каталог с его ценами

    Оптовые цены во всём каталоге, прайс в Excel, заказы с НДС, счета и документы.

Страница «Оптовым партнёрам»: заявка с реквизитами и вход в кабинет партнёра
заявка на опт и кабинет партнёра

Результат

скорость на компьютере из 100 по Lighthouse
100
скорость на телефоне из 100 по Lighthouse
99
до главного экрана на компьютере
0,5 с
до главного экрана на телефоне
1,7 с

замер Lighthouse на живом domamir.ru, 28 сентября 2026 · доступность, практики и SEO — 100/100/100

Следующий проект

Casa Benelle

сантехника и мебель · витрина, B2B и магазин-в-магазине