Автоматизация · 11 мин
Как установить модуль обмена 1С и Битрикс
Как установить и настроить модуль обмена между 1С и 1С-Битрикс: требования к версиям, установка, настройка выгрузки товаров и заказов, проверка и ошибки.
Обмен данными между 1С и сайтом на 1С-Битрикс решает две задачи: выгрузку каталога товаров с ценами и остатками из 1С на сайт и передачу заказов с сайта в учётную систему. Для этого используется стандартный механизм обмена по протоколу CommerceML, который уже встроен в типовые конфигурации 1С (Управление торговлей, Управление нашей фирмой, Комплексная автоматизация, ERP) и в редакции Битрикс начиная с «Малый бизнес».
В большинстве случаев отдельный «модуль» устанавливать не нужно: функциональность обмена входит в поставку обеих систем. Дополнительный модуль требуется только для старых конфигураций 1С без встроенного обмена или когда нужны расширенные возможности — например, обмен в режиме реального времени через модуль для Битрикс. Ниже разобраны оба сценария: работа со встроенным механизмом и установка отдельного модуля обмена.
Перед началом убедитесь, что у вас есть доступ администратора к сайту, права на настройку обмена в 1С и резервная копия базы 1С. Первая выгрузка каталога может изменить структуру инфоблоков на сайте, поэтому тестировать обмен лучше на копии сайта, а не на рабочем проекте.
Проверка совместимости версий и редакций
Первый шаг — убедиться, что обе системы поддерживают обмен. На стороне Битрикс обмен с 1С доступен в редакциях «Малый бизнес» и «Бизнес» продукта «Управление сайтом». В редакции «Старт» обмена нет, и никакой модуль это не исправит — потребуется переход на старшую редакцию.
На стороне 1С встроенный обмен с сайтом есть в актуальных версиях «Управление торговлей 11», «Управление нашей фирмой», «Комплексная автоматизация 2» и «ERP». В старых конфигурациях (например, «Управление торговлей 10.3») обмен тоже существует, но реализован иначе и давно не обновляется — с ним чаще возникают ошибки при выгрузке на современные версии Битрикс.
Дополнительно проверьте окружение сайта: PHP и настройки сервера должны соответствовать требованиям установленной версии Битрикс, а на сайте должно хватать дискового пространства — файлы обмена с картинками могут занимать сотни мегабайт. Медленный хостинг с жёсткими лимитами времени выполнения скриптов — частая причина обрывов выгрузки.
Администрирование → Обновления → лицензия: в «Старте» обмена нет
Раздел «Синхронизация данных» должен присутствовать в меню
Без полных прав узел обмена не создать
Первая выгрузка меняет структуру инфоблоков
Включение обмена на стороне Битрикс
На сайте обмен включается в административном разделе. Перейдите в «Настройки → Настройки продукта → Настройки модулей → Интернет-магазин» (в новых версиях — «Магазин → Настройки → Интеграция с 1С») и откройте вкладку интеграции с 1С. Здесь задаются параметры приёма данных: максимальный размер файла за один шаг, интервал одного шага в секундах, использование контрольных сумм и режим работы с заказами.
Создайте отдельного пользователя специально для обмена — не используйте учётную запись администратора. Пользователю нужны права на выполнение обмена (группа с доступом к /bitrix/admin/1c_exchange.php) и на изменение инфоблоков каталога. Так вы сможете отозвать доступ, сменив один пароль, не трогая основные учётные записи, а в журнале событий будет видно, какие действия выполнял именно обмен.
Обратите внимание на параметр «Интервал одного шага»: если сервер ограничивает время выполнения скрипта, уменьшите интервал до 20–30 секунд и размер файла за шаг. Это замедлит выгрузку, но исключит обрывы по таймауту на слабом хостинге.
Настройка узла обмена в 1С
В типовой конфигурации откройте раздел «Администрирование → Синхронизация данных» (в УТ 11 — «НСИ и администрирование → Синхронизация данных») и включите флажок «Синхронизация данных». Затем создайте новую настройку: «Синхронизация данных → Настройки синхронизации данных → Создать → Обмен с сайтом». В появившемся мастере укажите адрес сайта в формате https://домен/bitrix/admin/1c_exchange.php, имя пользователя и пароль, созданные на предыдущем шаге.
После проверки соединения мастер предложит настроить состав выгрузки: какие виды номенклатуры выгружать, по какому типу цен брать цены, с какого склада брать остатки, выгружать ли картинки и характеристики (торговые предложения). Для обмена заказами укажите организацию, подразделение и способ подстановки контрагентов — обычно заказы с сайта привязывают к одному фиктивному контрагенту «Розничный покупатель» либо создают контрагента по данным заказа.
Сохраните настройку и запустите обмен вручную кнопкой «Выполнить обмен». Первый сеанс будет долгим: 1С формирует полный файл каталога. Последующие обмены по умолчанию передают только изменения, если включён режим выгрузки изменений.
- 1Включите «Синхронизацию данных» в разделе администрирования
- 2Создайте настройку «Обмен с сайтом» и укажите URL, логин и пароль
- 3Проверьте соединение кнопкой «Проверить подключение»
- 4Настройте отбор номенклатуры, тип цен и склад остатков
- 5Настройте параметры загрузки заказов и контрагентов
- 6Выполните первый обмен вручную и проверьте результат на сайте
Установка отдельного модуля обмена
Когда отдельный модуль действительно нужен
Отдельный модуль потребуется в двух ситуациях. Первая — старая конфигурация 1С, в которой встроенного обмена нет или он несовместим с текущей версией Битрикс. Вторая — потребность в обмене в реальном времени: для этого на сайт устанавливается расширение из маркетплейса Битрикс, а в 1С — соответствующая обработка, и данные передаются сразу при изменении, без расписания.
Установка модуля на стороне сайта
Модули для Битрикс устанавливаются через «Marketplace → Установленные решения» или «Обновление решений»: найдите решение по названию, установите его и при необходимости запустите мастер настройки. После установки проверьте, что модуль появился в списке «Настройки → Модули», и обновите кеш сайта. Если в списке модулей решения нет — проверьте, что обновления сайта работают и лицензия активна.
Установка обработки на стороне 1С
Для 1С модуль обмена обычно распространяется как внешняя обработка (.epf) или поставка конфигурации расширения. Внешнюю обработку подключают через «Администрирование → Печатные формы, отчёты и обработки → Дополнительные отчёты и обработки», предварительно включив сам механизм дополнительных обработок. Расширение конфигурации устанавливается через «Конфигурация → Расширения конфигурации» в режиме конфигуратора или через «НСИ и администрирование → Печатные формы, отчёты и обработки → Расширения» в пользовательском режиме.
Настройка расписания и автоматический обмен
После успешного ручного обмена настройте автоматику. В 1С в настройке узла обмена есть вкладка «Расписание»: задайте периодичность — для каталога обычно достаточно обмена раз в час или несколько раз в день, для заказов — чаще, например каждые 15–30 минут. Расписание работает через регламентное задание, поэтому в файловой базе 1С она должна быть запущена, а в клиент-серверной — проверьте, что регламентные задания не заблокированы.
Разнесите обмен каталога и обмен заказами по времени, чтобы они не выполнялись одновременно: параллельные сеансы могут конфликтовать при записи данных. Если каталог большой, полную выгрузку с картинками планируйте на ночь, а в рабочее время оставьте только выгрузку изменений цен и остатков.
Для обмена в реальном времени (через дополнительный модуль) расписание не нужно — события отправляются при изменении документа или товара. Но такой режим создаёт постоянную нагрузку на сайт и требует стабильного канала, поэтому его включают только там, где критична актуальность остатков в течение минут.
Наиболее устойчивая схема на практике: заказы с сайта загружаются каждые 15–30 минут, цены и остатки — каждый час, полный каталог с картинками — раз в сутки ночью. Чаще почти никогда не нужно, а нагрузку на сайт такая схема даёт заметно меньшую.
Проверка результата и типичные ошибки
После первого обмена проверьте сайт: в каталоге должны появиться разделы и товары из 1С, у товаров — цены и остатки. Затем оформите тестовый заказ на сайте и убедитесь, что он появился в 1С после очередного сеанса обмена заказами. В 1С журнал обмена показывает статус каждого сеанса, на сайте ошибки видны в журнале событий и в ответе страницы обмена.
Если обмен не запускается, откройте адрес обмена в браузере: страница должна запросить авторизацию. Ошибка 401 означает неверный логин или пароль, 404 — неверный URL или отключённую компоненту обмена, 500 — ошибку на стороне сервера (смотрите логи PHP). Сообщение «failure» с текстом в ответе страницы обычно прямо указывает причину — например, превышение размера файла или отсутствие прав на инфоблок.
Как проверить результат обмена
Разделы и товары соответствуют отбору в 1С, цены и остатки актуальны
Дубли разделов, товары без цен, лишняя номенклатура
Появился в 1С с корректным контрагентом и составом
Заказ не загружается или создаёт дубли контрагентов
Статус «Выполнено» без предупреждений
Ошибки соединения, отказ в авторизации
success или progress при запросе
failure с текстом ошибки, коды 401/404/500
FAQ: частые вопросы по установке модуля обмена
Нужно ли покупать отдельный модуль обмена для типовой УТ 11?
Нет. В «Управление торговлей 11» обмен с сайтом встроен в поставку конфигурации, а на стороне Битрикс соответствующий функционал входит в редакции «Малый бизнес» и «Бизнес». Отдельные модули нужны только для старых конфигураций или для режима реального времени.
Почему 1С не подключается к сайту при проверке соединения?
Чаще всего причины: неверный URL (должен заканчиваться на /bitrix/admin/1c_exchange.php), ошибка в логине или пароле, блокировка со стороны хостинга или файрвола, проблема с SSL-сертификатом при HTTPS. Проверьте адрес в браузере — он должен запросить авторизацию.
Можно ли настроить обмен, если сайт и 1С в разных сетях?
Да, это стандартная схема: 1С сама инициирует соединение с сайтом по HTTPS, поэтому достаточно, чтобы компьютер с 1С имел доступ в интернет. Пробрасывать порты или открывать 1С наружу не требуется.
Что делать, если выгрузка каталога обрывается на середине?
Уменьшите в настройках обмена на сайте размер файла за один шаг и интервал шага, отключите выгрузку картинок для проверки и посмотрите логи PHP на предмет превышения лимита времени или памяти. На слабом хостинге большой каталог выгружают частями, предварительно увеличив лимиты сервера.
Удалит ли обмен существующие товары на сайте?
При корректной настройке обмен сопоставляет товары по уникальному идентификатору и обновляет их, а не удаляет. Однако включённый режим деактивации отсутствующих в выгрузке позиций может снять с публикации товары, не попавшие в файл обмена. Первую выгрузку всегда выполняйте на тестовой копии и проверяйте настройки деактивации.
Как перенести настройку обмена на другой сайт или копию?
В 1С создайте отдельный узел обмена для нового адреса — не меняйте URL в существующем узле, иначе собьётся сопоставление объектов с боевым сайтом. Для тестовой копии сайта используйте отдельного пользователя обмена и отдельный узел, чтобы сеансы не пересекались.
Что важно запомнить
В типовых конфигурациях 1С и редакциях Битрикс от «Малый бизнес» модуль обмена встроен: достаточно включить интеграцию на сайте, создать отдельного пользователя и настроить узел обмена в 1С с проверкой соединения. Отдельный модуль нужен только для старых конфигураций или обмена в реальном времени. Первую выгрузку выполняйте на копии, обмен настраивайте по HTTPS, а расписания товаров и заказов разносите по времени.