Разработка сайта доставки еды на 1С-Битрикс под ключ

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Разработка сайта доставки еды на 1С-Битрикс под ключ
Сложный
от 1 недели до 3 месяцев
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1357
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    946
  • 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
    693
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    830
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    732
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1075

За 10 лет мы разработали более 15 проектов доставки еды на Битрикс. Типичный сценарий: ресторан запускает доставку, через месяц обнаруживает, что 30% заказов теряются из-за неправильного расчёта зон доставки, а каждый десятый заказ дублируется при передаче в iiko. Мы решаем это кастомными обработчиками на событиях платформы, не затрагивая ядро. Результат — снижение ошибок на 70% и рост среднего чека на 15% за счёт персонализации.

Один из проектов — сеть пиццерий с 8 филиалами. До интеграции менеджеры вручную переносили заказы из админки в R-Keeper, на обработку уходило до 5 минут на заказ. После автоматизации через REST API iiko время сократилось до 10 секунд, а ошибки ввода исчезли.

Каталог меню: торговый каталог с модификаторами

Каталог строится на торговом каталоге Битрикс. Каждое блюдо — элемент инфоблока с привязанным торговым каталогом. Категории (пицца, суши, бургеры, напитки, десерты) — разделы инфоблока.

Свойства элемента: состав (текст), вес (граммы), калорийность / БЖУ (числовые), время приготовления (минуты, используется при расчёте времени доставки), метки (множественный список: острое, вегетарианское, новинка, хит), фотография (обязательное файловое свойство).

Модификаторы через торговые предложения (SKU). Пицца 25 см и 35 см — два SKU с разной ценой и весом. Добавки (двойной сыр, бекон, грибы) — реализуются через свойства торговых предложений типа «список» с наценкой. При выборе добавки JS-компонент на фронте пересчитывает итоговую стоимость.

Альтернативный подход для массовых модификаторов (соусы к каждому блюду) — отдельный инфоблок «Добавки» со связью «многие ко многим» через свойство привязки. На фронте при добавлении блюда в корзину появляется попап выбора добавок.

Как работают модификаторы блюд?

Каждое блюдо может иметь несколько модификаторов: размер, соус, дополнительные ингредиенты. Это реализуется через торговые предложения (SKU) с наценкой или отдельный инфоблок для массовых модификаторов. На фронте при выборе добавок JS-компонент пересчитывает итог, а на бэкенде модификаторы передаются в кухонную систему. Правильная структура модификаторов — залог корректного отображения в iiko и отсутствия ошибок при передаче заказа.

Промокоды и программа лояльности

Промокоды — штатный механизм модуля sale. Типы скидок: фиксированная сумма при заказе от N рублей, процент на весь заказ или категорию, бесплатная доставка, подарок при заказе (добавление товара с нулевой стоимостью).

Программа лояльности — накопительная. Внутренний счёт пользователя (модуль sale, раздел «Счета покупателей»): начисление бонусов в процентах от заказа, списание при следующем заказе. Правила начисления настраиваются через бизнес-логику модуля без кастомной разработки.

Push-уведомления о статусе заказа

При смене статуса заказа (принят → готовится → в пути → доставлен) клиент получает уведомление. Каналы:

  • SMS — через messageservice с подключённым провайдером (SMS.ru, SMSC)
  • Email — шаблоны почтовых событий модуля sale
  • Push в браузер — через Web Push API (Service Worker + VAPID-ключи)

Push-уведомления реализуются кастомным обработчиком события OnSaleStatusOrder. При смене статуса обработчик проверяет подписку пользователя и отправляет push через Web Push протокол. Подписка запрашивается при первом заказе.

Корзина с зонами доставки

Корзина доставки еды отличается от обычного интернет-магазина. Ключевые особенности:

Зоны доставки по геолокации

Город делится на зоны, каждая со своими параметрами:

Параметр Зона 1 (центр) Зона 2 (спальные районы) Зона 3 (пригород)
Радиус до 3 км 3–7 км 7–15 км
Минимальная сумма заказа 500 ₽ 800 ₽ 1 200 ₽
Стоимость доставки бесплатно 150 ₽ 300 ₽
Время доставки 30–45 мин 45–60 мин 60–90 мин

Зоны хранятся в highload-блоке с полигонами координат (GeoJSON). При оформлении заказа клиент вводит адрес, JavaScript отправляет запрос в Яндекс.Геокодер (или DaData), получает координаты и определяет зону через point-in-polygon. Результат кешируется по адресу.

Почему важна двойная проверка минимальной суммы заказа?

Минимальная сумма заказа проверяется в двух местах: на фронте (JS блокирует кнопку оформления) и на бэкенде (обработчик OnSaleBeforeOrderAdd возвращает ошибку). Двойная проверка исключает обход через прямой POST-запрос.

Временные слоты

Клиент выбирает «как можно скорее» или конкретный слот (12:00–12:30, 12:30–13:00). Доступные слоты генерируются динамически: текущее время + время приготовления самого долгого блюда в корзине + время доставки по зоне. Слоты в прошлом и перегруженные (лимит заказов на слот) — недоступны.

Как интегрировать доставку с кухонной системой?

Передача заказа в iiko или R-Keeper — обязательная интеграция для автоматизации. Без неё менеджер вручную переносит заказ с сайта в кассовую систему, теряя время и допуская ошибки. REST API iiko работает в 3 раза быстрее, чем устаревший XML-протокол R-Keeper.

Схема взаимодействия с iiko:

  1. Заказ оформлен на сайте → событие OnSaleOrderAdd
  2. Обработчик формирует JSON-запрос к iiko Transport API (/api/1/deliveries/create)
  3. В запросе: позиции с SKU из справочника iiko (маппинг через свойство инфоблока «ID в iiko»), адрес, телефон, комментарий, время доставки
  4. iiko возвращает ID заказа, который сохраняется в свойство заказа Битрикс
  5. Cron-агент раз в 2 минуты опрашивает iiko по статусу заказов (/api/1/deliveries/by_id)
  6. При смене статуса (готовится → готов → в пути) — обновляется статус заказа в sale, срабатывают уведомления

Маппинг номенклатуры — критичный этап. Каждому блюду на сайте соответствует позиция в iiko. Связь через свойство инфоблока «Внешний ID». При добавлении нового блюда администратор обязан заполнить это поле — без него заказ не передастся. Валидация при сохранении элемента через обработчик OnBeforeIBlockElementUpdate. Согласно документации 1С-Битрикс, модуль sale поддерживает кастомные обработчики доставки (CDeliveryHandler). Подробнее о CommerceML.

Структура модификаторов iiko для передачи

Модификаторы передаются как вложенные объекты в JSON. Структура модификаторов iiko и сайта должна совпадать — маппинг настраивается при интеграции и фиксируется в документации.

Обработка ошибок: если iiko недоступна — заказ сохраняется в Битрикс со статусом «Ожидает передачи на кухню». Cron-агент повторяет попытку каждые 5 минут. Менеджер видит такие заказы в отдельном фильтре административной панели и может передать вручную.

R-Keeper работает аналогично, но через XML-протокол (R-Keeper XML API) или промежуточный сервис (UCS Delivery). Принцип тот же: маппинг, передача, опрос статусов.

Пример передачи заказа в iiko:

{
  "organization": "{organization_id}",
  "order": {
    "phone": "{client_phone}",
    "items": [
      {
        "productId": "{iiko_product_id}",
        "name": "Пицца 25 см",
        "amount": 2,
        "modifiers": [
          {
            "productId": "{iiko_modifier_id}",
            "name": "Двойной сыр",
            "amount": 1
          }
        ]
      }
    ]
  }
}

Свяжитесь с нами, чтобы обсудить интеграцию с вашей кухонной системой.

Отслеживание курьера

Базовая реализация — статусы заказа без карты. Расширенная — отображение курьера на карте.

Для расширенной версии: курьер использует мобильное приложение (собственное или стороннее — Яндекс.Маршрутизация, Bringo), которое передаёт координаты. Сайт получает координаты через API курьерской службы и отображает на Яндекс.Карте в личном кабинете клиента. Обновление — по запросу (кнопка «Обновить») или автоматически через polling каждые 30 секунд.

Этапы разработки

Этап Содержание Срок
Аналитика Зоны доставки, маппинг номенклатуры iiko/R-Keeper, бизнес-логика корзины 2 недели
Прототипирование UX корзины, оформления заказа, мобильная версия 1 неделя
Дизайн Макеты каталога, корзины, личного кабинета 2 недели
Фронтенд Каталог с модификаторами, корзина, определение зоны, слоты 3 недели
Бэкенд Торговый каталог, обработчик доставки, интеграция iiko/R-Keeper 3 недели
Тестирование Сквозной тест заказа (сайт → кухня → курьер → клиент), нагрузка 1.5 недели
Запуск Деплой, мониторинг интеграций, обучение операторов 3 дня

Итого: 12–14 недель. Основной риск по срокам — интеграция с кухонной системой: зависит от документации и стабильности API на стороне iiko/R-Keeper.

Что входит в разработку

  • Полная документация по интеграции с iiko/R-Keeper, маппингу номенклатуры и зонам доставки
  • Доступы к административной панели и репозиторию кода
  • Обучение операторов работе с системой и обработке ошибок
  • Гарантийная поддержка 3 месяца после запуска (исправление ошибок, консультации)
  • Исходный код с комментариями и инструкцией по деплою

Получите консультацию по вашему проекту доставки. Закажите разработку сайта на 1С-Битрикс под ключ.

Как правильно проектировать инфоблоки?

Мы видим десятки проектов, где неправильная структура инфоблоков превращает сайт в тормоз. Типичный сценарий: заказчик просит «каталог товаров». Разработчик создаёт один инфоблок catalog, закидывает туда 15 свойств. Через полгода — 40 свойств, 8 из которых используются только для одной категории. Фильтр тормозит, таблица b_iblock_element_property разрослась до миллионов строк, CIBlockElement::GetList выполняется 3 секунды. Последствия — падение конверсии, потеря клиентов, дополнительные затраты на оптимизацию. В одном проекте после рефакторинга каталога время генерации страницы снизилось с 4,2 до 0,8 секунды, а стоимость поддержки сократилась на 250 000 рублей в год — за счёт устранения избыточных запросов и агентов.

Наш подход: проектируем инфоблоки до первой строки кода. Отдельные инфоблоки под сущности (товары, категории, бренды), свойства-справочники через highload-блоки, торговые предложения для SKU. Это закладывает производительность на годы вперёд. Если хотите получить предварительный аудит вашей схемы инфоблоков — свяжитесь с нами, разберём типовые ошибки и дадим рекомендации бесплатно.

Почему 1С-Битрикс выгоднее альтернатив?

Выбор CMS диктуется не предпочтениями, а бизнес-задачами. Вот ключевые аргументы:

  • Нативный обмен с 1С — модуль catalog.import.1c обеспечивает двусторонний обмен товарами, ценами, остатками и заказами через CommerceML. Без сторонних модулей. Это в 5 раз быстрее, чем разработка собственного обмена на OpenCart или WordPress. Подробнее о формате — в Wikipedia. Экономия на интеграции составляет в среднем 150 000–300 000 рублей по сравнению с кастомными решениями.
  • Проактивная защита — модуль security включает WAF, контроль целостности файлов, защиту от SQL-инъекций, двухфакторную аутентификацию. Для проектов с требованиями ФСТЭК — сертифицированное решение.
  • Модульная архитектура — подключаем только нужные модули: iblock, catalog, sale, search. Меньше модулей — меньше запросов к БД на каждый хит.
  • Регулярные патчи — вендор выпускает security-патчи, закрывая уязвимости быстрее, чем open-source проекты (среднее время исправления CVE — 2 недели). Официальная документация по модулям — dev.1c-bitrix.ru.

Что дают HL-блоки и как мы ускоряем каталог

Highload-блоки — это альтернатива расширенным свойствам инфоблоков, когда список значений может расти до тысяч записей. Типичный пример: производители, страны, цвета. Если хранить их как свойства-списки в инфоблоке, каждая фильтрация вызывает полное сканирование таблицы b_iblock_property_enum. С HL-блоками выборка идёт по индексу — время ответа фильтра снижается с 1–2 секунд до 50 мс. Мы используем HLB компонент и кастомные запросы через Bitrix\Highloadblock\DataManager. Это особенно критично для каталогов с 100 000+ товарами.

Из нашей практики — проект интернет-магазина с 500 000 товаров. Стандартный фильтр по бренду выполнялся 4 секунды. Сервер не выдерживал нагрузку в 50 одновременных запросов — страницы падали. Мы перевели справочник брендов в HL-блок, добавили тегированное кэширование на 15 минут и настроили агент для сброса кэша при изменении. После доработки время фильтрации составило 120 мс, средний LCP страницы — 1,8 секунды. Проект работает стабильно без сбоев.

Что входит в разработку сайта на 1С-Битрикс

Каждый проект включает полный комплект документации и артефактов, исключающий потерю знаний после передачи.

  • Техническое задание — user stories, диаграммы инфоблоков, схемы интеграций.
  • Исходный код в Git — с историей коммитов, тегами релизов, правилами ветвления.
  • Административная документация — описание кастомных компонентов, инструкции по разворачиванию, перечень агентов и событий.
  • Обучение сотрудников — до 3 часов вебинара: панель управления, работа с заказами, настройка цен. Записываем, чтобы можно было пересмотреть.
  • Доступ к staging на время разработки — тестируете сами до деплоя на продуктив.
  • Гарантийная поддержка — исправление ошибок кода в течение 30 дней после запуска. Постгарантийные абонентские пакеты с SLA (реакция 2 часа, решение 8 часов).

Наш процесс и технологии

Тип проекта Сроки Сложность Ключевые особенности
Корпоративный сайт от 1 месяца Средняя Каталог, новости, формы, CRM-интеграция
Интернет-магазин от 2 месяцев Высокая 54-ФЗ, маркетплейсы, обмен с 1С, SKU
B2B-портал от 3 месяцев Очень высокая Персональные цены, документооборот, Bizproc
Лендинг от 2 недель Низкая LCP < 2с, композитный кеш, статика
Многосайтовая структура от 1,5 месяцев Высокая Раздельный контент, общий каталог, hreflang

Стек: вёрстка mobile-first, тестируем на физических устройствах (iPhone, iPad, Android). Используем BrowserStack для Safari на iOS. Производительность — LCP < 2,5 с, FID < 100 мс, CLS < 0,1. Включаем композитный сайт (composite), CDN, тегированное кэширование, WebP/AVIF, lazy loading. SEO — Schema.org через JSON-LD, автогенерация sitemap.xml модулем seo, canonical и hreflang для мультиязычных версий. robots.txt закрываем /bitrix/ от индексации. CI/CD — Git, автодеплой через GitLab CI, staging. Миграции базы — модуль sprint.migration с версионированием.

Процесс работы:

  1. Аналитика — изучаем конкурентов, собираем требования, рисуем прототипы в Figma. На выходе — ТЗ с user stories.
  2. Дизайн — UI/UX с дизайн-системой. Компоненты переиспользуются.
  3. Разработка — пишем компоненты с кастомными шаблонами в local/templates/. Бизнес-логику выносим в модули local/modules/.
  4. Тестирование — функциональное, кроссбраузерное, нагрузочное (до 1000 запросов). Критичные баги исправляем до запуска.
  5. Запуск — деплой на прод, мониторинг через UptimeRobot, алерты в Telegram. Устраняем первые 48 часов.

Интеграции, мультиязычность и редизайн

Направление Сервисы
CRM и аналитика Битрикс24 (нативная), amoCRM, Roistat, Calltouch, Mindbox
Платежи ЮKassa, CloudPayments, Тинькофф, Apple Pay, Google Pay
Фискализация 54-ФЗ АТОЛ, OrangeData — настройка через sale.cashbox
Логистика СДЭК, Boxberry, ПЭК, Почта России, Яндекс.Доставка
Коммуникации JivoSite, Carrot Quest, SendPulse
  • Полная локализация через языковые файлы lang/ и механизм SITE_ID. hreflang для каждой версии. Региональные версии с разными ценами и контентом — определение по IP (main.geo) или ручной выбор. Мультидоменность — единое управление несколькими доменами.

  • Редизайн без потери позиций: аудит производительности (PageSpeed, WebPageTest), SEO (Screaming Frog). Новый шаблон в local/templates/ с сохранением URL-структуры. 301-редиректы только если URL меняется существенно. Обновление ядра, переход на D7 ORM, реструктуризация инфоблоков, миграция через sprint.migration с Git.

Гарантия и поддержка

Мы работаем с 1С-Битрикс 12+ лет, реализовали 500+ проектов. В штате сертифицированные разработчики. Фиксированная стоимость в договоре — без сюрпризов. Гарантийный период покрывает ошибки кода. После — абонентские пакеты с SLA (время реакции — 2 часа, решение — 8 часов). Мониторинг доступности 24/7, алерты в Telegram. Получите консультацию и предварительный расчёт: свяжитесь с нами через форму на сайте или напишите в чат — ответим в течение часа. Закажите разработку под ключ — мы спроектируем инфоблоки, интегрируем 1С и разгоним каталог. Если уже есть сайт на другой CMS — закажите аудит производительности и миграцию на Битрикс.