Если у вас интернет-магазин и каталог одновременно ведётся в 1С и на сайте, рано или поздно вы упираетесь в одну и ту же проблему: остатки разошлись, цены отличаются, новые товары приходится забивать дважды. Решение — настроить обмен 1С с сайтом, чтобы данные синхронизировались автоматически. В статье без кода и шагов разбираю, как этот обмен устроен, что именно синхронизируется, кто что делает на стороне 1С и на стороне сайта — и где он обычно ломается, когда товаров становится много.
Что такое обмен 1С с сайтом и зачем он интернет-магазину
Обмен 1С с сайтом — это автоматический перенос данных между учётной системой компании (1С) и интернет-магазином: товары, цены, остатки, заказы. Вместо того чтобы держать каталог в двух местах и вручную синхронизировать его глазами, вы настраиваете один источник правды и регулярную выгрузку оттуда на сайт.
Как обычно выглядит работа без автообмена:
- Менеджер заводит новый товар сначала в 1С, потом отдельно на сайте — и где-то путает SKU или забывает картинку
- Цены меняются в 1С на закупке, на сайте — раз в неделю «когда дойдут руки», и клиент видит старую цену
- Остатки на сайте отстают: пробит товар на кассе, а сайт всё ещё показывает «в наличии», заказ принят, выкатывается извинение и возврат
- Заказы с сайта менеджер вручную перебивает в 1С — теряется время и появляются ошибки в номенклатуре
Когда обмен настроен, всё это происходит само: вы добавили товар или поменяли цену в 1С — через час-два это уже на сайте. Заказ с сайта автоматически попадает в 1С с правильными позициями и контактами клиента. Менеджеры работают только в одной системе, ошибок становится в разы меньше.
Как работает обмен — без кода, на пальцах
На уровне принципа обмен 1С с сайтом — это согласованный формат файлов, который 1С умеет генерировать, а сайт умеет принимать. Никакой магии: одна система говорит «вот мой каталог, вот мои цены», другая получает эти данные и применяет их у себя.
CommerceML — общий язык обмена
Формат обмена называется CommerceML — это стандарт, который придумали 1С и 1С-Битрикс ещё много лет назад. По сути это набор XML-файлов с описанием каталога, цен, остатков и заказов. Метафора простая: 1С выгружает свой каталог в виде «накладной» по стандартному шаблону, а сайт читает эту накладную и обновляет у себя данные.
CommerceML понимают все нормальные плагины и модули обмена — это базовый формат. Версий стандарта несколько (2.04, 2.05, 2.08, 2.10), но для большинства задач разницы вы не почувствуете — современные плагины поддерживают актуальные версии и обратную совместимость.
Две стороны обмена — кто что делает
В любом обмене всегда есть две стороны, и важно сразу понять, кто за какую отвечает:
- Сторона 1С. Здесь живут данные. Здесь настраивается узел обмена с сайтом, выбирается, что именно выгружать (вся номенклатура или одна группа), на каких условиях, по какому расписанию. Это работа 1С-специалиста — программиста или франчайзи 1С. Я в этой части не работаю.
- Сторона сайта. Здесь данные принимаются и применяются: создаётся плагин обмена, настраивается приём выгрузки, маппинг полей (свойство в 1С → атрибут в WooCommerce), правила импорта картинок, обработка ошибок. Это моя зона работ.
Это не «делёж ответственности подрядчиков», а архитектурная реальность: невозможно настроить обмен только из сайта или только из 1С — обе стороны должны быть подготовлены и согласованы.
Односторонний или двусторонний обмен
На практике обмен бывает двух типов, и от этого зависит сложность и цена настройки:
- Односторонний (1С → сайт). Из 1С на сайт уходят товары, цены, остатки, картинки. Заказы с сайта менеджер забирает руками или через выгрузку в виде Excel. Это самый частый сценарий для малого и среднего магазина: каталог автоматический, заказы — полуручные.
- Двусторонний (1С ↔ сайт). Дополнительно к выгрузке из 1С заказы с сайта автоматически попадают в 1С. В 1С создаётся документ «Заказ покупателя» с правильной номенклатурой, контактами, способом оплаты. Менеджер только подтверждает и собирает.
Двусторонний обмен — это уже про автоматизацию всего цикла продажи, а не только каталога. Настройка сложнее: нужно согласовать маппинг статусов заказа (на сайте «принят» = в 1С «новый» = в учёте «черновик») и правила обновления (что делать, если клиент изменил состав после оформления). Но он окупается для магазинов, где заказов больше десятка в день — иначе ручная работа менеджера дешевле.
Что именно синхронизируется
Стандартный набор данных в обмене 1С с сайтом такой:
- Каталог товаров — название, артикул (SKU), описание, бренд
- Структура категорий — иерархия групп, в которые товары попадают на сайте
- Свойства и характеристики — цвет, размер, материал, мощность (всё, что в 1С отмечено как реквизиты номенклатуры)
- Цены — обычно один или несколько типов цен из 1С (розница, опт, со скидкой) маппятся на цены WooCommerce
- Остатки — текущее количество на складах, с учётом нескольких складов или агрегировано в один остаток для сайта
- Изображения — главная картинка товара и галерея, если в 1С они привязаны к номенклатуре
- Заказы (в двусторонней схеме) — состав, контакты, способ оплаты и доставки, статус
- Статусы заказов (в двусторонней схеме) — синхронизация статусов между сайтом и 1С: оплачен / собран / отгружен
Что обычно не попадает в стандартный обмен и требует отдельной доработки: отзывы клиентов, рейтинги товаров, SEO-метаданные (title/description), привязки к маркетинговым акциям сайта. Эти сущности живут на стороне сайта и в 1С отсутствуют, поэтому переносить их неоткуда.
Как часто обновляются данные — расписание обмена
Обмен может работать в трёх режимах, и выбор зависит от размера магазина и того, как быстро у вас меняются остатки.
- По запросу (вручную). Менеджер заходит в 1С, нажимает «Выгрузить на сайт», ждёт. Подходит, если изменения редкие и хочется контролировать момент выгрузки. На практике используется на старте, пока обмен только настраивают, или для тестовых выгрузок.
- По расписанию (cron). Обмен запускается автоматически каждые N часов — например, каждые два часа или раз в сутки ночью. Самый частый и разумный режим для большинства магазинов. Остатки и цены обновляются регулярно, но без избыточной нагрузки на сервер.
- «Реалтайм». Каждое изменение в 1С сразу пушится на сайт. На бумаге звучит идеально, на практике — почти никогда не нужен и почти всегда создаёт проблемы. Нагрузка на 1С и сайт растёт, а реальный выигрыш для клиента — секунды против десятков минут.
В подавляющем большинстве магазинов работает расписание раз в час-два, и этого достаточно. Если у вас оборот не как у Wildberries, реальная разница между «остаток обновился 5 минут назад» и «10 минут назад» для клиента нулевая, а конверсия от этого не зависит.
Обмен 1С с WooCommerce — как это делается на практике
На WordPress интернет-магазин почти всегда строится на плагине WooCommerce — это де-факто стандарт для WP-магазинов. Для обмена WooCommerce с 1С есть готовые плагины, которые принимают CommerceML-выгрузку из 1С и применяют её к каталогу WooCommerce.
Готовые плагины обмена для WooCommerce
На рынке стабильно есть несколько решений, и я с ними работал в разных проектах. Свёл основные в таблицу.
| Плагин | Что умеет | Подходит для |
|---|---|---|
woocommerce-1c (sgtpep) |
Базовый односторонний обмен 1С → WooCommerce, open-source, бесплатный | Небольшие магазины с типовым каталогом и небольшим объёмом данных |
WC1C |
Более развитая версия с настройками маппинга, поддержкой нескольких типов цен и расписания | Средние магазины, где нужны кастомизации маппинга |
EDI (ediplugin.org) |
Коммерческий плагин с расширенной поддержкой CommerceML и обработкой больших каталогов | Магазины 5–50 тысяч SKU, требовательные к стабильности |
| itgalaxy «WooCommerce — 1С:Предприятие Обмен данными» | Коммерческое решение с двусторонним обменом и платной поддержкой | Магазины, где важна поддержка вендора и двусторонний обмен заказами |
Какой именно плагин подобрать для конкретного магазина — зависит от размера каталога, числа типов цен, нужен ли двусторонний обмен заказами и от вашего бюджета. Это часть моей работы: подобрать решение, которое не придётся через полгода менять.
Моя зона работ — сторона сайта
На стороне WordPress и WooCommerce я делаю всё, что нужно, чтобы обмен заработал и стабильно жил:
- Подбираю плагин обмена под ваш каталог и сценарий
- Устанавливаю и настраиваю его в админке WordPress — точку приёма выгрузки, авторизацию, маппинг полей
- Согласовываю с вашим 1С-специалистом, какие данные и в каком формате будут приходить — состав CommerceML, версия стандарта, схема цен
- Прогоняю тестовую выгрузку, ловлю ошибки маппинга (свойства не легли в нужный атрибут, картинки не подтянулись, цены пошли не в ту колонку)
- Настраиваю обработку картинок — оптимизация, ресайз, генерация миниатюр под темплейт
- Если каталог большой — настраиваю порционную обработку и тюню окружение под продолжительные выгрузки (об этом ниже)
- Веду поддержку после запуска — мониторю ошибки в логах, разбираю инциденты типа «не подтянулась новая категория»
Полный цикл — от первого тестового файла CommerceML до стабильного автообмена в продакшене.
Большие каталоги — где обмен обычно ломается
Это та часть, где даже на типовом решении начинаются нестыковки и где владельцу магазина важно заранее понимать, чего ждать.
На небольшом каталоге (до 5000 товаров) обмен обычно работает «из коробки»: установил плагин, прописал параметры, оно поехало. На каталоге в десятки тысяч позиций начинаются проблемы:
- Таймауты PHP. На шаред-хостинге стандартный лимит — 30–60 секунд на запрос. Большая выгрузка просто не успевает обработаться за один проход и обрывается посередине.
- Память сервера. Импорт держит в памяти большие куски XML и обработанные данные. Стандартного лимита 128–256 МБ может не хватить.
- База данных. Тысячи UPDATE-запросов подряд тормозят, индексы не успевают перестраиваться, отдача сайта посетителям проседает во время выгрузки.
- Картинки. Если в выгрузке несколько тысяч новых изображений, их скачивание и обработка превращается в долгий процесс, который сам по себе может упасть.
Решается это несколькими приёмами:
- Порционная обработка. Выгрузка разбивается на части — например, по 500 товаров за запуск, — и плагин по очереди их обрабатывает. Каждый запрос укладывается в таймаут, остальные части догоняются следующими запусками.
- Тюнинг окружения. Поднимаются лимиты PHP (memory_limit, max_execution_time), включается opcache, оптимизируются таблицы WooCommerce.
- Переезд на VPS. Если шаред-хостинг уже не тянет, нужен переезд на VPS с подходящей конфигурацией — там у вас полный контроль над окружением, и обмен стабилизируется.
- Тонкая выгрузка из 1С. Согласовываем с 1С-специалистом, чтобы из 1С выгружались только изменённые позиции (delta), а не весь каталог каждый раз — это снижает объём в десятки раз.
Кто что делает — граница работ
Чтобы у вас была чёткая картинка, кто что делает на старте:
Сторона 1С — делает 1С-специалист:
- Настраивает узел обмена с сайтом в самой конфигурации 1С
- Выбирает, какие данные выгружать (вся номенклатура, отдельная группа, конкретные типы цен)
- Настраивает расписание автоматической выгрузки
- Дорабатывает конфигурацию 1С, если стандартного функционала не хватает (например, нужно выгружать кастомные реквизиты или специфичные типы цен)
- Решает вопросы внутри 1С: ошибки выгрузки, дубли номенклатуры, кривые группы товаров
Сторона сайта — делаю я:
- Подбираю и устанавливаю плагин обмена под WooCommerce
- Настраиваю приём выгрузки и маппинг полей 1С → WooCommerce
- Тюню окружение под объём данных (порционная обработка, лимиты PHP)
- Веду отладку: разбираю, почему конкретный товар не лёг как ожидалось, доделываю обработку
- Делаю интеграции на стороне сайта, если нужны (например, фильтры по характеристикам, специфичный вывод цен)
- Веду поддержку после запуска — мониторю обмен, ловлю инциденты в логах
Если у вас уже есть свой 1С-специалист или франчайзи 1С — мы с ним согласовываем технические детали (формат и состав CommerceML, расписание, схемы цен), и каждый делает свою часть.
Если своего 1С-специалиста нет — это нормально, разовая настройка узла обмена со стороны 1С делается у любого 1С-франчайзи в вашем городе или удалённо за фиксированную сумму. Это однократная работа, после которой 1С уже умеет регулярно выгружать данные, и дальше я подхватываю на стороне сайта.
Битрикс vs WordPress/WooCommerce — где обмен проще
В 1С-Битрикс обмен с 1С работает из коробки — это часть «штатной комплектации» CMS, потому что 1С-Битрикс и 1С — это партнёрские продукты одного семейства. Поставил Битрикс, в админке уже есть готовый узел обмена с 1С — нужно только подключить.
В WordPress/WooCommerce такой штатной фичи нет, но есть готовые плагины обмена, которые закрывают ту же задачу. Качество и зрелость лучших из них вполне на уровне Битриксового решения — это не «костыль», а полноценная альтернатива.
Главные доводы за WordPress/WooCommerce в сравнении с Битриксом для интернет-магазина:
- Лицензия и поддержка дешевле в разы — у Битрикса платная редакция с обновлениями стоит десятки тысяч в год, WooCommerce бесплатен
- Экосистема плагинов и тем больше — выбор внешних решений шире
- Хостинг проще и дешевле — WordPress отлично крутится на стандартных шаредах, Битриксу часто нужен VPS или специализированный тариф
- Поддержка и доработки доступнее — WP-разработчиков на рынке кратно больше
Битрикс остаётся разумным выбором, если у вас уже крупный отдел продаж на 1С, корпоративные процессы и есть бюджет на полную «1С + Битрикс» связку. Для большинства же интернет-магазинов малого и среднего размера WooCommerce — и проще, и дешевле, а обмен с 1С там настраивается и работает не хуже.
Частые проблемы обмена 1С с сайтом
Что обычно идёт не так и что чаще всего приходится править после первой настройки:
- Дубли товаров на сайте. 1С выгружает одну и ту же номенклатуру под разными SKU, или плагин не находит уже существующую запись и создаёт новую. Решается настройкой ключа сопоставления (обычно по уникальному идентификатору 1С, а не по названию или артикулу).
- Кривая структура категорий. На сайте появляются пустые группы, дубли веток, странные названия. Причина — рассинхронизация дерева номенклатуры 1С и категорий сайта. Лечится правилом «структуру делаем в 1С, на сайте показываем как есть» или ручным маппингом.
- Не подтягиваются картинки. Картинки лежат в 1С, но на сайт не приезжают: проблема с правами доступа к файлам выгрузки, с форматом картинок (например, BMP вместо JPG) или с тем, что плагин не понимает структуру вложений в CommerceML. Разбираемся по логам.
- Цены и остатки не обновляются. Выгрузка проходит, в логах всё ОК, а на сайте по-старому. Чаще всего проблема в кэше WooCommerce или в неправильном маппинге типа цены — не та колонка. Решается отладкой.
- Таймаут на большом каталоге. Об этом был отдельный раздел выше — лечится порционной обработкой и тюнингом окружения.
- Кодировка свойств. Кириллица иногда приезжает в виде вопросов или абракадабры. Причина — рассинхронизация кодировок XML на стороне 1С и на стороне сайта. Лечится явной настройкой на обеих сторонах.
- Заказы не уходят в 1С (в двусторонней схеме). Сайт пытается отправить заказ, но 1С его не видит. Обычно проблема в правах пользователя 1С или в правилах преобразования заказа в документ — это уже сторона 1С-специалиста.
Большинство этих болячек ловятся ещё на этапе тестовой выгрузки, до боевого запуска. Поэтому я всегда сначала прогоняю обмен на стейджинге или копии сайта, разбираю ошибки и только после этого переключаю на продакшен.
Сколько стоит и как я работаю
Настройка обмена 1С с сайтом на WooCommerce — от 20 000 ₽. Финальная цена зависит от нескольких факторов:
- Размер каталога (до 5000 SKU, от 5000 до 50000, или больше)
- Количество типов цен в 1С (одна розница или несколько уровней с правилами)
- Односторонний обмен или двусторонний (заказы обратно в 1С)
- Состояние сайта и хостинга — иногда нужен тюнинг окружения или переезд на VPS
Работаю как самозанятый, плательщик НПД. Чек выдаю через приложение «Мой налог», по запросу делаю акт — это полноценный документ для бухгалтерии и НДС-учёта.
Честно проговариваю на старте: для обмена нужна настроенная сторона 1С (узел обмена, выгрузка). Если её ещё нет — это разовая работа клиентского 1С-специалиста или франчайзи 1С, я её не делаю. Зато беру на себя всю сторону сайта: подбор и настройку плагина, маппинг, отладку, поддержку. От «у меня товары в 1С, а на сайте бардак» до «обмен работает по расписанию, остатки и цены актуальные».
Подробности по формату работы, перечню задач и условиям — в карточке услуги интеграции с 1С.
Частые вопросы
Читайте также
Если выбираете канал автоматизации продаж в магазине, посмотрите ещё:
- Сколько стоит разработать чат-бота для бизнеса в 2026 — про другую сторону автоматизации интернет-магазина: ИИ-бот, который отвечает клиентам по каталогу и принимает заявки.
- Сколько стоит сопровождение сайта в 2026 — про формат регулярной работы с сайтом: что входит в абонентское обслуживание после запуска интеграции.
- ИИ-бот для мессенджера MAX — как поднять автоматизацию диалогов с клиентами в новом российском мессенджере с поддержкой 1С-интеграций на бэкенде.