Разработка сайта химчистки на 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Разработка сайта химчистки на 1С-Битрикс
Сложная
от 1 недели до 3 месяцев
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Разработка сайта химчистки на 1С-Битрикс

Сайт химчистки решает конкретную задачу: клиент должен понять, сколько стоит обработка его вещи, и оставить заявку — желательно за одно посещение, без звонков и уточнений. На 1С-Битрикс это реализуется через связку инфоблоков, Highload-блоков с ценовой матрицей и формы заказа с привязкой к CRM.

Каталог услуг: структура инфоблоков

Услуги химчистки группируются по категориям: одежда, ковры и ковролин, шторы и текстиль, кожа и замша, свадебные платья, мягкая мебель. Каждая категория — раздел инфоблока Services. Элементы внутри — конкретные услуги: «Химчистка пуховика», «Чистка ковра 2×3 м», «Реставрация кожаной куртки».

Свойства элемента инфоблока:

  • PROPERTY_MATERIAL — тип материала (множественное, справочник)
  • PROPERTY_MIN_PRICE — стоимость от (для отображения в каталоге)
  • PROPERTY_DURATION — срок выполнения в рабочих днях
  • PROPERTY_COMPLEXITY — сложность обработки (стандарт / повышенная / премиум)
  • PROPERTY_PHOTO_BEFORE_AFTER — галерея «до/после» (множественный файл)

Для вывода используется компонент bitrix:catalog.section.list с кастомным шаблоном. Карточка услуги показывает фото, диапазон цен, срок и кнопку «Рассчитать стоимость», которая открывает калькулятор с предзаполненной категорией.

Калькулятор стоимости с матрицей цен

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

Ценовая матрица. Цена зависит от трёх параметров: тип изделия, материал и степень загрязнения. Это даёт трёхмерную матрицу, которая хранится в Highload-блоке CleaningPrices:

Поле HL-блока Тип Пример значения
UF_ITEM_TYPE Привязка к справочнику Пуховик
UF_MATERIAL Привязка к справочнику Полиэстер
UF_CONTAMINATION Список light / medium / heavy
UF_BASE_PRICE Число 1800
UF_EXPRESS_COEFF Число 1.5
UF_EXTRA_SERVICES JSON {"waterproofing": 500, "deodorization": 300}

Справочники ItemTypes и Materials — отдельные HL-блоки. Это позволяет менеджеру добавлять новые типы изделий и материалов без разработчика. Привязки между ними задают допустимые комбинации: кожа применима к куртке, но не к постельному белью.

Логика работы на фронтенде. Калькулятор реализуется как пошаговая форма (wizard):

  1. Шаг 1 — Тип изделия. Визуальный выбор иконками: куртка, платье, ковёр, шторы. При выборе AJAX-запрос подгружает доступные материалы для этого типа
  2. Шаг 2 — Материал. Список фильтруется по типу изделия. Для неопытных пользователей — подсказки с фото текстур
  3. Шаг 3 — Степень загрязнения. Три варианта с визуальными примерами: лёгкое (пыль, поверхностные пятна), среднее (застарелые пятна, запах), сильное (масло, краска, плесень)
  4. Шаг 4 — Дополнительные услуги. Чекбоксы: водоотталкивающая пропитка, дезодорация, антимоль, упаковка. Стоимость подтягивается из поля UF_EXTRA_SERVICES
  5. Результат. Итоговая стоимость с разбивкой: базовая цена + доп. услуги. Опционально — стоимость экспресс-обработки (×UF_EXPRESS_COEFF)

Серверная часть. AJAX-контроллер CleaningCalculator наследуется от Bitrix\Main\Engine\Controller. Метод calculateAction() принимает ID типа, материала, уровень загрязнения и массив доп. услуг. Делает выборку из HL-блока через D7 ORM:

CleaningPricesTable::getList([
    'filter' => [
        'UF_ITEM_TYPE' => $itemTypeId,
        'UF_MATERIAL' => $materialId,
        'UF_CONTAMINATION' => $contamination
    ]
])

Если точное совпадение не найдено (клиент выбрал редкий материал), берётся цена по умолчанию для типа изделия с пометкой «точная стоимость после осмотра».

Кэширование матрицы. При первом запросе вся матрица цен загружается в Bitrix\Main\Data\Cache с тегом cleaning_prices. При изменении любого элемента HL-блока тег сбрасывается через обработчик OnAfterUpdate. Это исключает запросы к базе при каждом расчёте.

Онлайн-заявка с вызовом курьера

После расчёта стоимости клиент заполняет форму заказа:

  • Контактные данные (телефон, имя)
  • Адрес забора (с подсказками через DaData API)
  • Дата и временной слот забора (выбор из доступных — агент ежедневно генерирует слоты на 7 дней вперёд)
  • Комментарий (описание загрязнений, особые пожелания)

Заявка создаёт лид в CRM-модуле Битрикс24 через REST API. В карточке лида уже заполнены: услуга, расчётная стоимость, адрес, слот забора. Менеджеру остаётся подтвердить заказ и назначить курьера.

Для SMS-уведомлений подключается провайдер через модуль messageservice. Клиент получает SMS на каждом этапе: «Курьер выехал», «Вещи приняты», «Заказ готов», «Курьер доставит сегодня с 14 до 16».

Отслеживание заказа по номеру

На сайте размещается форма «Проверить статус заказа». Клиент вводит номер заказа и последние 4 цифры телефона. Система ищет элемент в инфоблоке Orders и отображает текущий статус с таймлайном:

Этап Статус Дата
Заявка принята Выполнено 12.03
Курьер забрал вещи Выполнено 13.03
Осмотр и оценка Выполнено 13.03
Химчистка В процессе
Контроль качества Ожидание
Доставка клиенту Ожидание

Статус обновляется оператором в админке или автоматически через webhook из учётной системы химчистки (1С:Предприятие, StoryClean, собственная ERP).

Программа лояльности

Для постоянных клиентов реализуется накопительная система. Используется модуль sale с внутренними счетами пользователей. При оплате заказа начисляются бонусные баллы (процент от суммы настраивается в HL-блоке LoyaltySettings).

Механика:

  • Регистрация по номеру телефона (авторизация через SMS-код, модуль main с кастомным обработчиком)
  • Личный кабинет: история заказов, баланс бонусов, избранные адреса
  • Списание бонусов при следующем заказе (ограничение — не более 30% от суммы)
  • Реферальная программа: клиент делится ссылкой, при заказе нового клиента оба получают бонусы

Баланс бонусов хранится в UF-поле пользователя UF_BONUS_BALANCE. Начисление и списание логируются в отдельном HL-блоке BonusTransactions для прозрачности и возможности аудита.

SEO-оптимизация для локального поиска

Химчистка — локальный бизнес. Основные запросы содержат географию: «химчистка пуховиков Минск», «чистка ковров Фрунзенский район».

Настраивается:

  • Микроразметка Schema.org DryCleaningOrLaundry с адресом, графиком работы, зоной обслуживания
  • Посадочные страницы под районы — через инфоблок GeoPages с привязкой к координатам
  • Автогенерация title и description по шаблону: «Химчистка {тип_изделия} в {район} — от {мин_цена} руб.»
  • Страницы «до/после» с alt-тегами по типу загрязнения — работают на поиск по картинкам
  • Модуль SEO Битрикс для управления robots.txt, sitemap.xml, каноническими URL

Компонентное кэширование настраивается с учётом гео: для каждого города/района — свой вариант кэша через CACHE_GROUPS.