К статье
Практический материал

Автоматизация · 13 мин

Как синхронизировать 1С и Битрикс

Пошаговая инструкция по синхронизации 1С и Битрикс: выбор способа обмена, настройка модуля, обмен товарами и заказами, расписание, ошибки и проверка результата.

Синхронизация 1С и Битрикс решает две практические задачи: каталог товаров, цены и остатки из учётной системы попадают на сайт без ручного ввода, а заказы с сайта возвращаются в 1С для обработки, резервирования и проведения оплат. Без обмена менеджеры вынуждены переносить данные вручную, что неизбежно приводит к расхождениям в ценах, продаже отсутствующих товаров и потерянным заказам.

Обмен между 1С и Битрикс построен на открытом протоколе CommerceML. Для типовых конфигураций 1С (Управление торговлей, Комплексная автоматизация, ERP, УНФ) существует готовый модуль обмена с сайтом, который устанавливается в конфигурацию и настраивается без программирования. Для нетиповых конфигураций или особых требований используют REST API Битрикса или промежуточные файлы.

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

Какой способ обмена выбрать

Существует три основных подхода к синхронизации. Первый — типовой модуль обмена с сайтом от 1С-Битрикс, который встраивается в конфигурацию и работает по протоколу CommerceML через HTTP-запросы к сайту. Он покрывает большинство сценариев: выгрузка товаров, цен, остатков, загрузка заказов и статусов. Это вариант по умолчанию для типовых конфигураций.

Второй подход — обмен через REST API Битрикса. Его выбирают, когда нужна нестандартная логика: обмен произвольными сущностями, интеграция с самописной 1С, двусторонняя синхронизация контрагентов в реальном времени. Такой вариант требует разработки и сопровождения, поэтому без веской причины начинать с него не стоит.

Третий вариант — файловый обмен через CSV, XML или CommerceML-файлы, выгружаемые по расписанию на FTP или в общую папку. Он подходит как временное решение или для случаев, когда прямое соединение между 1С и сайтом невозможно по требованиям безопасности.

Сравнение способов обмена

Типовой модуль обмена

Подходит для типовых конфигураций 1С. Настраивается без программирования, поддерживает товары, цены, остатки и заказы. Ограничение — только стандартные сценарии обмена.

REST API Битрикса

Подходит для нестандартной логики и самописных конфигураций. Требует разработки, тестирования и постоянного сопровождения.

Файловый обмен (CSV/XML)

Подходит как временное решение или при запрете прямых соединений. Минус — задержки в обмене и ручной контроль загрузок.

Что подготовить перед настройкой

До начала настройки убедитесь, что конфигурация 1С входит в список поддерживаемых модулем обмена: это Управление торговлей 11, Комплексная автоматизация 2, ERP 2, Управление нашей фирмой и ряд других. Версия платформы и конфигурации должна соответствовать требованиям конкретной версии модуля — они указаны в описании модуля на маркетплейсе 1С-Битрикс.

Со стороны сайта потребуется: доступ в административный раздел Битрикс с правами на настройку интеграций, адрес сайта, доступный из сети, где работает 1С, и отдельный пользователь с правами на обмен. Не используйте для обмена учётную запись главного администратора — создайте технического пользователя с минимально необходимыми правами.

Также проверьте сетевую доступность: сервер 1С должен иметь возможность обращаться к сайту по HTTP/HTTPS, а сайт (при обмене заказами в реальном времени) — к сервисам 1С, если используется такой режим. Если 1С работает в закрытой сети, согласуйте с администратором открытие исходящих соединений.

Установка и настройка модуля обмена в 1С

Модуль обмена с сайтом распространяется бесплатно через маркетплейс 1С-Битрикс. После скачивания он устанавливается в конфигурацию через режим «Конфигуратор» или загрузкой расширения — способ зависит от версии модуля и конфигурации. После установки в интерфейсе 1С появляется раздел «Обмен с сайтом» (обычно в подсистеме интеграции или администрирования).

Основной объект настройки — узел обмена с сайтом. В нём указываются: адрес сайта вида https://site.ru с путём к скрипту обмена (модуль подставляет его автоматически), имя и пароль технического пользователя, режим обмена (выгрузка товаров, обмен заказами или оба), а также отборы — какие товары, склады и типы цен участвуют в синхронизации.

Порядок настройки узла обмена
  1. 1
    Установите модуль обмена с сайтом в конфигурацию 1С
  2. 2
    Создайте на сайте технического пользователя с правами на обмен
  3. 3
    В 1С создайте узел обмена: укажите адрес сайта, логин и пароль
  4. 4
    Настройте отбор товаров: группы номенклатуры, склады, типы цен
  5. 5
    Сопоставьте единицы измерения, валюты и ставки НДС
  6. 6
    Выполните тестовое соединение и первую выгрузку в режиме изменений
  7. 7
    Проверьте каталог на сайте и включите обмен по расписанию

Обратите внимание на настройку соответствия полей. Модуль позволяет указать, какое свойство товара в 1С в какое свойство инфоблока на сайте выгружается. Если на сайте уже есть каталог, а в 1С — своя номенклатура, сначала выполните сопоставление по уникальному полю (артикул, код, внешний идентификатор), иначе на сайте появятся дубли товаров.

Выгрузка товаров, цен и остатков

Первая выгрузка всегда выполняется в полном режиме: 1С формирует файлы CommerceML с описанием групп каталога, товаров, свойств, цен и остатков и передаёт их на сайт порциями. При большом каталоге (десятки тысяч позиций) полная выгрузка может занять значительное время — планируйте её на нерабочие часы и следите за логом обмена.

После первой выгрузки включите режим выгрузки только изменений: 1С регистрирует изменённые объекты и передаёт на сайт только их. Это резко сокращает время обмена и нагрузку. Режим изменений работает корректно, только если не менялась структура отборов узла обмена — при изменении отборов потребуется повторная полная выгрузка.

Цены и остатки можно выгружать отдельно от описаний товаров и чаще — например, остатки каждые 15–30 минут, а полный каталог раз в сутки. Это разумный баланс между актуальностью данных и нагрузкой на системы. Учтите, что остаток на сайте всегда отстаёт от реального на время интервала обмена: при высоких продажах настраивайте резерв или контроль остатков при оформлении заказа.

Обмен заказами: с сайта в 1С и обратно

Обмен заказами работает в обе стороны. С сайта в 1С загружаются новые заказы с составом, контактами покупателя, способом доставки и оплаты. В 1С на их основании создаются документы «Заказ клиента» (или аналог), контрагенты подставляются по настроенным правилам поиска — по ИНН, телефону, email или создаются новые.

Обратно на сайт передаются статусы заказов, сведения об оплате и отгрузке. Покупатель видит в личном кабинете актуальное состояние заказа без звонка менеджеру. Для этого в настройках модуля задаётся соответствие статусов: какой статус в 1С какому статусу на сайте соответствует.

Типичная проблема — дубли контрагентов. Один и тот же покупатель может оформлять заказы с разных телефонов или email, и 1С создаст несколько карточек. Настройте в модуле правила поиска контрагентов и периодически проводите свёртку дублей штатными средствами 1С.

Типичные ошибки при обмене заказами
01
Не настроено соответствие статусов — заказы на сайте зависают в статусе «Новый», покупатели звонят уточнить состояние
02
Не заданы правила поиска контрагентов — база 1С заполняется дублями покупателей
03
Заказы загружаются без привязки к складу или организации — документы приходится исправлять вручную
04
Отменённые на сайте заказы не отменяются в 1С — товар остаётся зарезервированным

Расписание и автоматизация обмена

Обмен по расписанию в 1С настраивается через регламентные задания. Для файловой базы задания выполняются, пока запущен сеанс 1С с включённым выполнением регламентных заданий; для клиент-серверной — на сервере 1С автоматически. Рекомендуемая схема: обмен заказами каждые 5–15 минут, выгрузка изменений каталога — каждые 1–4 часа, полная выгрузка — раз в неделю в нерабочее время.

Альтернатива — запуск обмена из планировщика Windows через командную строку 1С с параметрами запуска обработки обмена. Этот способ используют, когда регламентные задания недоступны или нужен запуск вне сеансов пользователей.

Со стороны Битрикса убедитесь, что агенты сайта исполняются на cron, а не на хитах: при редкой посещаемости сайта агенты на хитах выполняются с задержками, и обмен «плывёт» по времени. Проверить это можно в настройках главного модуля и в журнале агентов.

Не ставьте слишком частый обмен полным каталогом: каждая полная выгрузка переиндексирует каталог на сайте и может замедлять его для посетителей. Частыми должны быть только короткие обмены — заказы и остатки в режиме изменений.
ПЗ
Практическое замечание

Проверка результата и диагностика ошибок

После настройки проверьте обмен по контрольным точкам: товар из 1С появился на сайте с верной ценой и остатком, заказ с сайта создал документ в 1С с правильным контрагентом и составом, смена статуса в 1С отразилась в личном кабинете покупателя. Проверяйте на 2–3 тестовых товарах и заказах, прежде чем считать настройку завершённой.

Основной инструмент диагностики — журнал обмена в 1С и логи на стороне сайта. Модуль обмена фиксирует каждую сессию: что выгружено, какие ошибки возникли. Типичные причины сбоев: истёк пароль технического пользователя, превышен лимит времени выполнения скрипта на сервере, недостаточно места на диске сайта, изменились настройки инфоблока после обновления Битрикса.

Контрольные точки

Как проверить результат

Товар на сайте
Норма

Цена, остаток и описание совпадают с данными 1С

Тревожный признак

Товар-дубль, нулевая цена или устаревший остаток

Заказ в 1С
Норма

Создан документ с верным контрагентом, составом и складом

Тревожный признак

Документ не создан, дубль контрагента, пустой состав

Статусы заказов
Норма

Смена статуса в 1С видна на сайте в течение интервала обмена

Тревожный признак

Статусы не меняются или меняются на неверные

Журнал обмена
Норма

Сессии завершаются без ошибок

Тревожный признак

Повторяющиеся ошибки соединения или таймауты

Когда типового модуля недостаточно

Типовой модуль не покрывает ряд сценариев: обмен произвольными документами (счета, акты, возвраты в нестандартной логике), синхронизация нескольких сайтов с разной структурой каталога, обмен с самописной или сильно доработанной конфигурацией, требования к мгновенной (real-time) синхронизации остатков при высоких оборотах.

В таких случаях решение строится на REST API Битрикса или веб-сервисах 1С (HTTP-сервисы, OData). Это проект разработки: потребуется описание форматов обмена, обработка ошибок и конфликтов, мониторинг. Прежде чем идти этим путём, проверьте, не закрывается ли задача настройкой отборов и соответствий в типовом модуле — часто «нестандартная» задача решается штатными средствами.

Маршрут решения

Как выбрать действие

Типовая конфигурация 1С и стандартный каталог на сайтеИспользуйте типовой модуль обмена с сайтом — это быстрее и дешевле в сопровождении
Нужна мгновенная актуальность остатков при высоких продажахРассмотрите обмен через REST API с событийной синхронизацией вместо расписания
Прямое соединение 1С с сайтом запрещено политикой безопасностиНастройте файловый обмен через защищённую папку обмена
На сайте уже есть каталог, заполненный вручнуюСначала выполните сопоставление товаров по артикулу или внешнему коду, затем включайте обмен

Частые вопросы

Какие конфигурации 1С поддерживают обмен с Битриксом?

Типовой модуль обмена поддерживает Управление торговлей 11, Комплексную автоматизацию 2, ERP Управление предприятием 2, Управление нашей фирмой и ряд других конфигураций. Актуальный список и требования к версиям платформы указаны в описании модуля на маркетплейсе 1С-Битрикс — сверьтесь с ним перед установкой.

Можно ли синхронизировать 1С с Битрикс24 вместо сайта?

Да, для Битрикс24 существуют отдельные решения: типовая интеграция CRM с 1С через приложение из маркетплейса Битрикс24 или обмен через REST API. Механика отличается от обмена с сайтом — синхронизируются счета, товары CRM и компании, а не каталог интернет-магазина.

Как часто нужно выгружать остатки на сайт?

Зависит от оборачиваемости. При умеренных продажах достаточно обмена раз в 1–4 часа, при высоких — каждые 15–30 минут в режиме изменений. Полную выгрузку каталога делайте редко, она нужна только при массовых изменениях структуры или отборов.

Что делать, если после обмена на сайте появились дубли товаров?

Причина почти всегда в отсутствии сопоставления по уникальному полю. Удалите дубли на сайте, настройте в узле обмена соответствие по артикулу или внешнему идентификатору, выполните повторную выгрузку и проверьте результат на нескольких позициях. Перед этим сделайте резервную копию базы сайта.

Безопасно ли открывать доступ к сайту для 1С?

Да, при соблюдении мер: используйте HTTPS, отдельного технического пользователя с минимальными правами, сложный пароль и, при возможности, ограничение доступа к скрипту обмена по IP-адресу сервера 1С. Пароль меняйте при увольнении сотрудников, имевших к нему доступ.

Обмен перестал работать после обновления Битрикса — в чём причина?

Обновления могут менять структуру инфоблоков или настройки безопасности. Проверьте журнал обмена в 1С, права технического пользователя, целостность настроек инфоблока каталога и протестируйте соединение из узла обмена. В большинстве случаев достаточно перепроверить настройки и повторить выгрузку изменений.

Итог

Что важно запомнить

Для типовых конфигураций синхронизация 1С и Битрикс решается модулем обмена с сайтом: настройте узел обмена, сопоставьте товары, цены и статусы, включите расписание. Перед первой выгрузкой делайте резервные копии, после — проверяйте результат по контрольным точкам. Нестандартные сценарии реализуются через REST API, но сначала проверьте возможности типового модуля.