Полное руководство по обмену между 1С:Автосервис и Битрикс
Представьте: интернет-магазин автозапчастей, 45 тысяч позиций, каждая с OEM-номером, кросс-аналогами и привязкой к автомобилям. Все эти данные живут в 1С:Автосервис — а на сайте их нужно не только отобразить, но и обеспечить быстрый поиск и фильтрацию. В типовой реализации CommerceML передаёт только наименование и артикул — а для автосервиса критически важны OEM-номер, кросс-аналоги и привязка к автомобилям. Если не настроить правильно, покупатель не найдёт нужную деталь, а обмен будет тормозить сайт часами.
Мы сталкивались с такими кейсами десятки раз, и каждый раз возникали одни и те же проблемы: стандартный CommerceML не передаёт сложную структуру применяемости, обмен «подвешивает» сервер, а кросс-номера теряются при импорте. Разберём, как настроить интеграцию, чтобы она работала стабильно и быстро, с конкретными примерами конфигураций и оптимизаций.
Свяжитесь с нами для аудита вашей конфигурации 1С и Битрикс — мы предложим оптимальную схему интеграции.
Как настроить обмен 1С:Автосервис и 1С-Битрикс?
Номенклатура в 1С:Автосервис
Конфигурация хранит запчасти с расширенными атрибутами:
- Артикул производителя (OEM-номер)
- Кросс-номера (аналоги других производителей)
- Применяемость (марка, модель, год выпуска, двигатель)
- Бренд/производитель
- Признак «новая/б/у»
- Гарантийный срок
Стандартный CommerceML передаёт наименование и артикул. OEM-номера, кросс-номера и применяемость — через ДополнительныеРеквизиты. На стороне Битрикс каждый из этих реквизитов должен стать свойством инфоблока с правильным типом (строка, множественное значение для кросс-номеров, привязка к справочнику для применяемости). Согласно официальной документации CommerceML, эти реквизиты можно передавать без ограничения количества, но важно правильно настроить обработчик импорта.
Применяемость: самая сложная часть
Применяемость запчасти — это связь «многие-ко-многим»: одна запчасть подходит к нескольким автомобилям, один автомобиль использует множество запчастей. В 1С:Автосервис применяемость хранится в регистре сведений. В CommerceML нет стандартного способа передать эту структуру. Рассмотрим два подхода.
Вариант 1: JSON в реквизите. В 1С формируем JSON-строку с применяемостью и кладём в ДополнительныйРеквизит:
[
{"make":"Toyota","model":"Camry","year_from":2006,"year_to":2011,"engine":"2AZ-FE"},
{"make":"Toyota","model":"RAV4","year_from":2005,"year_to":2012,"engine":"2AZ-FE"}
]
В Битрикс — свойство типа «Текст» с хранением JSON. Фильтрация по применяемости — через полнотекстовый поиск или отдельную таблицу.
Вариант 2: Отдельный инфоблок применяемости. Создаём в Битрикс отдельный инфоблок «Применяемость» (марка/модель/год/двигатель) и инфоблок «Запчасти» с привязкой через свойство типа «Привязка к элементам». Это правильная архитектура для полноценного подбора по автомобилю, но синхронизировать её из 1С сложнее — нужен кастомный обработчик импорта.
Выбор подхода зависит от масштаба. Для каталога до 100 тысяч позиций с нечастым подбором по авто достаточно JSON, для крупных магазинов с активным фильтром — отдельный инфоблок.
Почему обмен может тормозить сайт и как это исправить
При полном обмене каталогом из 45 тысяч позиций стандартный CommerceML генерирует огромный XML-файл (до 100 МБ), который сервер обрабатывает десятки минут. Во время импорта база данных блокируется, сайт «подвисает». Решения: выгружать только позиции в наличии, изображения передавать через FTP отдельно от XML, использовать инкрементальный обмен (delta-обмен) — передавать только изменившиеся за период записи.
| Параметр | Полный обмен | Инкрементальный обмен |
|---|---|---|
| Объём данных | Весь каталог | Только изменения с последней синхронизации |
| Время выполнения | 12–40 минут | 1–3 минуты |
| Нагрузка на сервер | Высокая (блокировка таблиц) | Минимальная |
| Частота запуска | 1 раз в сутки (ночью) | Каждые 30 минут |
Инкрементальный обмен работает в 6 раз быстрее полного при сопоставимом объёме данных, а нагрузка на сервер снижается на 80%.
Как настроить поиск по кросс-номерам?
Кросс-номера — это коды одной запчасти под разными брендами. Покупатель ищет по кросс-номеру на сайте — должна найтись запчасть, даже если продаётся аналог другого производителя. В Битрикс кросс-номера хранятся как множественное свойство инфоблока. Поиск по ним — через компонент bitrix:catalog.smart.filter или кастомный поиск с использованием CIBlockElement::GetList с фильтром по свойству.
При импорте из 1С:Автосервис кросс-номера передаются через ДополнительныеРеквизиты с множественными значениями:
<ЗначениеРеквизита>
<Наименование>КроссНомер</Наименование>
<Значение>BP-35</Значение>
</ЗначениеРеквизита>
<ЗначениеРеквизита>
<Наименование>КроссНомер</Наименование>
<Значение>ATE-603310</Значение>
</ЗначениеРеквизита>
Обработчик импорта в Битрикс должен собирать несколько значений одного реквизита в массив.
Заявки на работы: специфика Автосервиса
В 1С:Автосервис кроме продажи запчастей ведутся «Заказ-наряды» — документы на выполнение работ. На сайте это может быть форма записи на обслуживание или онлайн-диагностика. Передача заявок с сайта в 1С:Автосервис: обычно это не CommerceML, а REST-запрос к HTTP-сервису 1С. Заявка создаётся как «Обращение» или «Заказ-наряд» в статусе «Новый».
Кейс: магазин б/у запчастей (из нашей практики)
Разборка легковых автомобилей: 45 тыс. позиций б/у запчастей, у каждой — фото, состояние (1-5), применяемость. Полный обмен с 1С:Автосервис занимал 40 минут и «подвешивал» сервер.
Оптимизация:
- Фильтр выгрузки: только «В наличии» (остаток > 0)
- Изображения через FTP отдельно от XML (XML без base64 вдвое меньше)
- Применяемость — JSON в одном поле (не отдельный инфоблок)
- Инкрементальный обмен каждые 30 минут: только позиции с изменённым остатком
Результат: полный обмен — 12 минут (ночью), инкрементальный — 2 минуты. Сайт перестал тормозить, поиск стал быстрым.
Типичные ошибки при настройке обмена
- Использование одного и того же XML-файла для полного и инкрементального обмена
- Отсутствие фильтра по остаткам при выгрузке
- Передача изображений в XML через base64 вместо FTP или URL
- Неправильная настройка прав на временные папки для кэша 1С
- Забывают настроить индекс по свойству
КроссНомер— поиск тормозит
Что входит в работу
При заказе настройки обмена вы получаете:
- Аудит текущей конфигурации 1С:Автосервис и структуры данных в Битрикс
- Проектирование схемы импорта (поля, типы свойств, связь с автомобилями)
- Разработку обработчика импорта (CommerceML + кастомные реквизиты)
- Настройку REST-сервиса для заявок (если нужен)
- Оптимизацию производительности (инкрементальный обмен, фильтры)
- Тестирование на боевых данных и мониторинг ошибок
- Документацию по поддержке и регламент обмена
Наш опыт и гарантии
Мы занимаемся интеграцией 1С и Битрикс более 10 лет, реализовали свыше 50 проектов для автосервисов и магазинов запчастей. Среди клиентов — крупные разборки и сети СТО. Все работы ведутся с соблюдением официальных рекомендаций 1С-Битрикс и 1С:Предприятие. На каждую интеграцию даём гарантию 6 месяцев.
Получите консультацию — оценим ваш проект и предложим оптимальное решение. Закажите настройку обмена уже сегодня, чтобы ваш интернет-магазин работал без сбоев.







