Настройка синхронизации штрихкодов из 1С в Битрикс: выгрузка и поиск

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

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

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

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

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

Вы запустили интернет-магазин на 1С-Битрикс, товары из 1С импортируются, но штрихкоды не передаются. Покупатели в B2B требуют EAN-13 для загрузки в свои системы, а стандартный обмен CommerceML их игнорирует. Мы сталкивались с этой задачей десятки раз — вот как её решаем. Наш опыт позволяет гарантировать корректную синхронизацию за 3–5 дней, сократив ручной ввод на 90%.

Как штрихкоды хранятся в 1С

В 1С:УТ 11 и других конфигурациях штрихкоды хранятся в регистре сведений ШтрихкодыНоменклатуры. Структура: Номенклатура (ссылка на справочник), Характеристика (если привязан к SKU), Единица измерения (разные EAN для штуки, коробки, поддона), Штрихкод (строка EAN-8, EAN-13, Code128, QR, Datamatrix), Тип штрихкода. Один товар может иметь несколько штрихкодов: EAN-13 для единицы, EAN-13 для упаковки (6 штук), Code128 для поддона, дополнительный штрихкод поставщика.

Почему стандартный CommerceML не подходит?

В CommerceML 2.08 есть тег Штрихкод, но поддержка в стандартном модуле обмена Битрикс ограничена. Штрихкод передаётся как дополнительный реквизит или внутри <Товар>:

<Товар><Ид>товар-guid</Ид><Штрихкод>4607025491117</Штрихкод></Товар>

Некоторые версии модуля обмена Битрикс записывают этот тег в свойство CML2_BAR_CODE. Проверьте: если это свойство существует после первого импорта — штрихкод передаётся стандартно. Если нет — нужен обработчик события импорта.

Параметр Стандартный CommerceML Кастомный обработчик
Количество штрихкодов Один на товар Множественные (по единицам измерения)
Поддержка SKU Нет Да
Гибкость Ограничен Полный контроль — в 3 раза больше возможностей
Сложность настройки Минимальная Средняя (требуется программист)

Как передать множественные штрихкоды из 1С

Для нескольких штрихкодов (по единицам измерения) стандартного тега недостаточно. Используем ДополнительныеРеквизиты:

<ДополнительныеРеквизиты>
  <ЗначениеРеквизита>
    <Наименование>ШтрихкодШтука</Наименование>
    <Значение>4607025491117</Значение>
  </ЗначениеРеквизита>
  <ЗначениеРеквизита>
    <Наименование>ШтрихкодКоробка</Наименование>
    <Значение>4607025491124</Значение>
  </ЗначениеРеквизита>
</ДополнительныеРеквизиты>

В Битрикс создаём свойства инфоблока BARCODE_UNIT и BARCODE_BOX с типом «Строка». Обработчик события OnIBlockCMLImport2ElementAdd заполняет эти свойства:

AddEventHandler('catalog', 'OnIBlockCMLImport2ElementAdd',
    'fillBarcodeProperties');

function fillBarcodeProperties(&$arFields, &$arProps, $arXML) {
    if (isset($arXML['BARCODE_UNIT'])) {
        $arProps['BARCODE_UNIT'] = $arXML['BARCODE_UNIT'];
    }
    if (isset($arXML['BARCODE_BOX'])) {
        $arProps['BARCODE_BOX'] = $arXML['BARCODE_BOX'];
    }
}

Штрихкоды у торговых предложений (SKU)

Если штрихкод привязан к характеристике (например, разные EAN у красной и синей футболки), передаём его на уровне предложения. В XML предложения:

<Предложение>
  <Ид>товар-guid#характеристика-guid</Ид>
  <Штрихкод>4607025491131</Штрихкод>
</Предложение>

В инфоблоке предложений создаём свойство BARCODE и аналогичный обработчик для события OnIBlockCMLImport2OfferAdd.

Поиск по штрихкоду

После заполнения свойства BARCODE поиск реализуется через стандартный компонент поиска Битрикс или кастомно:

$result = CIBlockElement::GetList(
    [],
    ['IBLOCK_ID' => CATALOG_IBLOCK_ID, 'PROPERTY_BARCODE' => $scannedCode],
    false, false, ['ID', 'NAME', 'DETAIL_PAGE_URL']
);

Для мобильного сайта подключаем библиотеку для сканирования через камеру (ZXing или QuaggaJS). Пользователь сканирует упаковку — сайт мгновенно открывает карточку товара.

Кейс: B2B-площадка с EDI (из нашей практики)

Производитель продуктов питания с EDI-интеграцией: ритейлеры требуют EAN-13 на каждую позицию прайс-листа. Штрихкоды велись в 1С, но исторически не выгружались на B2B-портал. Наш клиент тратил 2 часа в день на ручной ввод.

Решение: единовременная выгрузка всех штрихкодов из 1С (внешняя обработка → CSV), загрузка в Битрикс через скрипт массового обновления свойства BARCODE. Время: 4 часа на 12 тыс. позиций. Настроили последующую синхронизацию при обмене: новые товары приходят со штрихкодом в ДополнительныеРеквизиты, обработчик заполняет свойство. Изменение штрихкода существующей позиции — через тот же механизм. Ручной ввод сократился на 95%.

Пошаговая инструкция: как настроить выгрузку штрихкодов
  1. Проанализируйте текущую схему обмена: версии 1С, конфигурацию, модуль обмена.
  2. Создайте свойства инфоблока для штрихкодов (основной и для SKU).
  3. Настройте передачу штрихкодов из 1С через дополнительные реквизиты или стандартный тег.
  4. Разработайте обработчик событий импорта для заполнения свойств.
  5. Проверьте синхронизацию на тестовом контуре.
  6. Обучите менеджеров работе с штрихкодами.

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

  • Анализ текущей схемы обмена (версии 1С, конфигурация, модуль обмена)
  • Настройка свойств инфоблоков и предложений
  • Разработка обработчика событий импорта
  • Тестирование синхронизации на тестовом контуре
  • Документация по настройкам и доработкам
  • Обучение менеджеров (1–2 часа)
  • Поддержка месяц после внедрения

Сроки и стоимость

Сроки: от 3 до 7 дней в зависимости от сложности (множественные штрихкоды, SKU, EDI). Стоимость рассчитывается индивидуально после анализа вашей схемы. Получите консультацию по вашей задаче — оценим проект бесплатно.

Мы занимаемся интеграциями 1С и Битрикс более 10 лет, выполнили более 200 проектов. Гарантируем результат, закреплённый в договоре и техническом задании. Закажите настройку выгрузки — и забудьте о ручном вводе штрихкодов.