Вступление
Купленный шаблон из маркетплейса 1С-Битрикс редко подходит под бизнес-логику «из коробки». Часто нужны не просто косметические правки, а глубокая доработка шаблона битрикс: добавить блоки под специфику магазина, убрать лишние разделы, настроить фильтры каталога, подключить свои компоненты. Всё это нужно делать так, чтобы при выходе обновлений шаблона от вендора ваши доработки не исчезли. Мы в таких случаях копируем шаблон в /local/templates/ и работаем с копией — это гарантирует сохранность изменений. Опытные разработчики с 10+ годами в Битрикс-проектах выполняют доработку шаблона битрикс любого объёма точно в срок. Закажите аудит шаблона — мы оценим работу за 1 день. Экономия бюджета при таком подходе достигает 40% по сравнению с разработкой с нуля.
Как безопасно доработать шаблон без потери обновлений?
Первый и главный шаг — поместить шаблон в /local/templates/. Если шаблон куплен и находится в /bitrix/templates/, его нужно скопировать полностью. Структура шаблона стандартна:
header.php — верхняя часть страницы
footer.php — нижняя часть
styles.css — основные стили
script.js — скрипты шаблона
components/ — шаблоны компонентов
images/ — изображения шаблона
page_templates/ — шаблоны страниц
Файлы в /local/templates/ не перезаписываются обновлениями. Доработки вёрстки делаются в шаблонах компонентов — их копируют из /bitrix/components/ в /local/templates/TEMPLATE_NAME/components/ и правят template.php. Это позволяет менять HTML без изменения ядра. Как указано в официальной документации 1С-Битрикс, копирование шаблона в /local/ — стандарт безопасности.
Почему копирование в /local/templates/ — это стандарт безопасности?
Потому что обновления вендора работают только с /bitrix/templates/. Если вы правите файлы напрямую там, каждое обновление уничтожит ваши изменения. Работая с копией, вы получаете полный контроль: свои правки никто не тронет, а обновления можно забирать выборочно. На практике это экономит до 40% времени на сопровождении. Средняя экономия бюджета — до 40% по сравнению с разработкой шаблона с нуля.
Типичные задачи доработки
| Тип доработки |
Что делаем |
Сроки |
| Визуальные правки |
Цвета, шрифты, логотип, баннеры |
4–16 часов |
| Добавление новых блоков |
Верстка секций, интеграция с инфоблоками |
1–3 дня |
| Шаблоны компонентов |
Копирование, адаптация под стиль шаблона |
3–10 дней |
| Глубокая переработка |
Переверстка ключевых страниц, переписывание CSS |
2–4 недели |
Кейс: доработка шаблона для интернет-магазина на 10 000 товаров
Один из клиентов — интернет-магазин с каталогом на 10 000 позиций — столкнулся с типичной проблемой: купленный шаблон из маркетплейса не поддерживал кастомные фильтры по характеристикам, и страницы товаров грузились более 5 секунд. Вендорский шаблон был скопирован в /local/templates/. Мы переписали шаблоны компонентов каталога, внедрили тегированное кэширование и оптимизировали SQL-запросы к инфоблокам. Дополнительно настроили обмен с 1С через CommerceML для автоматической выгрузки остатков. В результате время загрузки страницы каталога сократилось до 1.2 секунды, а фильтры стали работать без перезагрузки через ajax. Проект занял 4 недели, включая тестирование.
Типичные ошибки при доработке шаблона и как их избежать
Одна из частых ошибок — правка файлов напрямую в /bitrix/templates/. Каждое обновление вендора затрёт эти изменения. Выход — всегда работать с копией в /local/templates/. Другая ошибка — переопределение шаблонов компонентов без сохранения оригинальной логики. Копируйте файлы в /local/templates/ваш_шаблон/components/ и меняйте только то, что нужно. Третья — игнорирование кэширования: при добавлении новых блоков не забывайте сбрасывать тегированный кэш, чтобы изменения отобразились.
Подробнее о копировании шаблона
Копирование через админку: «Настройки» → «Настройки продукта» → «Сайты» → выберите шаблон и нажмите «Копировать». Через FTP: скопируйте папку из /bitrix/templates/ в /local/templates/. Убедитесь, что в файле .settings.php подключен шаблон из /local/.
Что входит в работу
| Этап |
Результат |
| Аудит шаблона |
План доработок с оценкой объёма |
| Копирование в /local/ |
Безопасное окружение для правок |
| Внесение изменений в шаблоны компонентов |
Адаптированный интерфейс |
| Настройка кэширования |
Ускорение загрузки страниц |
| Тестирование |
Адаптивность, кроссбраузерность, производительность |
| Передача документации и доступов |
Инструкции по сопровождению |
| Рекомендации по обновлению |
Как безопасно применять патчи вендора |
Процесс работы: от анализа до деплоя
- Аудит шаблона — проверяем совместимость, устаревшие практики, объём доработок.
- Проектирование — выбираем стратегию: частичные правки или переработка страниц.
- Реализация — верстка, интеграция с инфоблоками, настройка кэширования, тегированный кэш.
- Тестирование — адаптивность, кроссбраузерность, скорость загрузки.
- Деплой — выкладка на бой, передача доступов и документации.
Что дальше?
Доработка шаблона из маркетплейса — это в среднем в 3 раза быстрее и на 40% дешевле, чем разработка дизайна с нуля. Мы работаем с любыми шаблонами — от простых лендингов до каталогов на 10 000 товаров. Наш опыт: более 80 успешных проектов. Получите консультацию инженера: свяжитесь с нами для оценки вашего шаблона.
Разработка маркетплейсов на 1С-Битрикс: как преодолеть ограничения стандартной архитектуры
Таблица b_sale_order и связанные с ней b_sale_basket не рассчитаны на мультивендорность из коробки. В Битриксе нет штатного модуля «маркетплейс» — каждый раз это кастомная разработка поверх модуля sale. Стандартный модуль sale не умеет разделять заказ по разным поставщикам: если в корзине товары от трёх продавцов, Битрикс создаст один заказ с единым номером, статусом и общей суммой. Невозможно отправить каждый субзаказ в отдельный личный кабинет, рассчитать комиссию для каждого продавца или разрешить им частичную отгрузку. Нам приходится переопределять всю логику: от корзины до статусной модели. Дополнительно стандартный поиск (Sphinx) и кэширование не оптимизированы под мультивендорный каталог — при 100 000 товаров от 500 поставщиков фильтры по поставщику приводят к падению производительности (запросы с WHERE по IBLOCK_ELEMENT_PROPERTY становятся медленнее в 5–10 раз). Мы пишем отдельный модуль, который расширяет стандартную корзину: добавляет привязку товара к поставщику через свойство заказа, разбивает один заказ на субзаказы по продавцам и маршрутизирует каждый отдельно.
Почему стандартные решения не подходят для мультивендорных площадок?
Модели маркетплейсов
Классический маркетплейс — оператор не держит склад. Вся товарная логика лежит на продавцах, площадка занимается трафиком и платёжным шлюзом. Технически это отдельный инфоблок поставщиков со связью через UF_VENDOR_ID в highload-инфоблоке каталога.
Гибридная модель — оператор продаёт наравне с внешними поставщиками. Главная боль: ранжирование в каталоге. Если поставщики видят, что карточки площадки всегда выше — уходят. Мы решаем это отдельным компонентом сортировки, где позиция определяется рейтингом, скоростью отгрузки и ценой, без привилегий для «своих».
Маркетплейс услуг — заявки, тендеры, эскроу. Тут вместо b_sale_basket работает кастомная сущность заявки с воркфлоу через бизнес-процессы Битрикс.
B2B-маркетплейс — договоры, акты сверки, кредитные линии, EDI. Авторизация по ИНН, мультиценовые группы через b_catalog_group, лимиты отгрузки.
Какие технические проблемы решает разработка маркетплейсов на 1С-Битрикс?
Модели монетизации
| Модель |
Как реализуем |
Где чаще встречается |
| Комиссия с продаж |
Обработчик OnSaleOrderComplete, расчёт по категории и статусу продавца |
Универсальная |
| Подписка |
Кастомный модуль с cron-задачей и списанием через sale.paysystem |
B2B-площадки |
| Листинговые сборы |
Счётчик в OnAfterIBlockElementAdd |
Доски объявлений |
| Продвижение |
Промо-слоты через отдельный highload-инфоблок |
Дополнительный доход |
| Фулфилмент |
Интеграция с WMS через REST |
Площадки с логистикой |
Что включает кабинет продавца?
Кабинет — сердце маркетплейса. Неудобный кабинет = пустая площадка. Стандартного решения нет, пишем с нуля на компонентах Битрикс.
- Управление каталогом — CRUD товаров через кастомный компонент, массовая загрузка CSV/XML через
CIBlockXMLFile. Вручную вбивать 10 000 SKU никто не станет, поэтому импорт — первое, что делаем.
- Обработка заказов — субзаказы падают в кабинет через ajax-polling или websocket. Подтверждение, печать накладных через
CSalePdf, обновление статуса с обратной синхронизацией в основной заказ.
- Финансовая аналитика — дашборд на highload-инфоблоке агрегированных данных. Выручка, комиссии, выплаты — детализация по товарам и периодам. Продавец видит, что продаётся, а что просто занимает витрину.
- Настройки доставки — собственные тарифы продавца, привязка к
sale.delivery.handler.
- Коммуникация — встроенный чат без раскрытия контактов. Реализуем через модуль
im или кастомную таблицу сообщений.
- Акции — скидки, промокоды через
b_sale_discount с фильтром по vendor_id.
Модерация и контроль качества
Одна партия контрафакта убивает репутацию площадки. Поэтому модерация — обязательный слой.
- Модерация товаров — статус
ACTIVE='N' до прохождения проверки. Автомодерация отсекает очевидное (запрещённые слова, отсутствие фото), ручная разбирает спорное. Обработчик OnBeforeIBlockElementUpdate не даёт обойти.
- Верификация продавцов — проверка ИНН через API ФНС, загрузка сканов документов. Статусы: новый → проверенный → премиум. Каждый уровень открывает лимиты по количеству товаров и комиссиям.
- Рейтинговая система — не просто звёзды. Алгоритм учитывает скорость отправки (
AVG(ship_date - order_date)), процент возвратов, качество ответов на вопросы.
- Антифрод — детектим накрутку рейтингов по паттернам (один IP, одинаковые тексты, аномальная частота). Дублирование аккаунтов ловим по ИНН и банковским реквизитам.
- Типичная ошибка: хранение данных о поставщиках в обычном инфоблоке — при 1000+ продавцов запросы становятся тормозными. Используйте highload-инфоблоки.
Как устроена система выплат продавцам?
Финансовый модуль — то, ради чего продавцы приходят на площадку.
- Расчёт комиссии — обработчик на смену статуса заказа. Комиссия зависит от категории, статуса продавца, текущих условий. Хранится в отдельной таблице
vendor_transactions.
- Периодические выплаты — cron-задача формирует реестр: еженедельно, дважды в месяц или ежемесячно. Минимальная сумма выплаты, холдирование до подтверждения получения.
- Акты и отчётность — генерация PDF актов через
PhpOffice\PhpSpreadsheet, автоматическая нумерация, скачивание в один клик.
- Холдирование — деньги удерживаются до получения товара. Снижает споры и возвраты.
- Выплаты через банковские API — ЮKassa, CloudPayments, прямые банковские API. Продавец получает деньги без звонков и напоминаний.
- Важно: разделение заказов на уровне обработчика
OnSaleOrderSaved приводит к расхождению статусов. Разделяйте на этапе корзины.
- Ручная фискализация каждого субзаказа нарушает 54‑ФЗ. Используйте единый чек с признаком «агент». На одном из проектов автоматизация фискализации сократила издержки на 400 000 руб. ежемесячно. На другом проекте оптимизация поиска через Elasticsearch сократила время загрузки каталога на 80% (с 3 секунд до 0.6 секунды).
Как мы строим архитектуру маркетплейса
- Определение бизнес-модели — выбираем тип маркетплейса и схему монетизации.
- Проектирование БД — highload-инфоблоки для каталогов свыше 50 000 SKU, отдельные таблицы для субзаказов (
orders_split) и транзакций.
- Разработка ядра — создаём модуль
marketplace.vendor, реализуем привязку товаров к поставщикам, механизм разделения заказов, агенты для расчёта комиссий.
- Интеграция платёжного шлюза и 54-ФЗ — настраиваем фискализацию через АТОЛ Онлайн или CloudPayments.
- Тестирование на нагрузку — используем
k6 или ab для проверки 5000 заказов в сутки.
Типичные ошибки при разработке маркетплейсов на Битрикс
- Хранение поставщиков в обычном инфоблоке — приводит к тормозам при >1000 записей. Используйте highload-инфоблоки.
- Разделение заказов после сохранения — нарушает статусную модель. Разделяйте на этапе корзины.
- Ручная фискализация каждого субзаказа — нарушает 54-ФЗ. Фискализируйте единым чеком с признаком агента.
- Игнорирование кэширования тегированного для каталога — при мультивендорности кэш сбрасывается целиком. Настраивайте теги по
vendor_id.
Технологический стек
- 1С-Битрикс «Бизнес» или «Энтерпрайз» — модуль
sale + catalog как фундамент. Мультивендорная обвязка — кастомные модули.
- Highload-инфоблоки — каталоги свыше 100 000 SKU. Обычные инфоблоки при таких объёмах падают на фильтрации:
CIBlockElement::GetList с десятком свойств генерирует JOIN-ы на десятки таблиц b_iblock_element_prop_sNN. Highload решает это плоской структурой.
-
Elasticsearch — полнотекстовый поиск. Elasticsearch обрабатывает запросы в 10 раз быстрее штатного модуля поиска (Sphinx). Пользователь пишет «кроссовки найки» — находит «Nike кроссовки».
- Очереди — импорт каталогов, расчёт выплат, генерация отчётов. Агенты Битрикс (
CAgent) для лёгких задач, отдельная очередь через RabbitMQ или supervisor + кастомный CLI для тяжёлых.
Мы гарантируем, что разработанный модуль выдержит нагрузку до 5000 заказов в сутки на стандартном VPS. Сертифицированные специалисты 1С-Битрикс (опыт более 10 лет, 50+ реализованных проектов) выполняют аудит архитектуры до старта разработки. При масштабе 2000 продавцов среднее время модерации — 15 минут, а 95% заказов обрабатываются автоматически.
Отраслевые маркетплейсы
Каждая ниша — свои грабли:
- Стройматериалы — расчёт доставки крупногабарита. Паллеты, тоннаж, подъём на этаж. Обычный калькулятор доставки не справляется, пишем кастомный
sale.delivery.handler.
- Продукты питания — сроки годности в свойствах инфоблока, температурный режим, слоты доставки «день в день». Ошибка в логистике = списание.
- Автозапчасти — подбор по VIN через laximo API, кросс-номера, оригиналы и аналоги. Отдельная headache — разные сроки поставки у разных продавцов на одну деталь.
- Одежда — размерные сетки (EU/US/RU), высокий процент возвратов. Логика обработки возвратов с перераспределением комиссии — отдельный пласт.
- Промоборудование — B2B с тендерами, запросами КП. Карточка товара с 50+ параметрами в табличном виде.
Сроки и этапы
Пытаться запустить всё сразу — надёжный способ не запустить ничего.
| Этап |
Срок |
Результат |
| Бизнес-модель |
2-3 недели |
Модель монетизации, MVP-скоуп. Отсекаем 80% хотелок, которые не нужны на старте. |
| Проектирование |
3-4 недели |
UX, прототипы витрины и кабинетов, архитектура БД. |
| MVP |
2-3 месяца |
Каталог, регистрация продавцов, заказы, базовая модерация. Первые реальные продажи. |
| Пилот |
2-3 недели |
Первые продавцы, тестовые покупки, нагрузочное тестирование через ab или k6. |
| Масштабирование |
постоянно |
Новые фичи по фидбеку, оптимизация запросов, горизонтальное масштабирование. |
MVP за 3-4 месяца. Полнофункциональная платформа — 6-12 месяцев итеративной разработки.
Что входит в работу
- Документация: архитектурная схема, описание API, инструкции для продавцов.
- Доступы: репозиторий с кодом, тестовый стенд, админка.
- Обучение: две сессии для администраторов и менеджеров.
- Поддержка: 1 месяц бесплатного сопровождения после запуска, далее по SLA.
- Гарантия на разработанные модули — 12 месяцев.
Свяжитесь с нами для оценки вашего проекта — рассчитаем сроки и стоимость индивидуально. Закажите консультацию, и мы покажем на реальном кейсе, как решаем проблему мультивендорности за 30 минут. Получите детальный план разработки вашего маркетплейса уже сегодня.