Пока в магазине сотня товаров, цены и остатки можно поправить вручную. Когда товаров тысячи, а продажи идут одновременно через сайт, розницу и оптовый отдел, ручной перенос превращается в постоянный источник ошибок: на сайте продаётся то, чего уже нет на складе, цены отстают от прайса, менеджеры перебивают заказы из почты в учётную систему. Интеграция с 1С решает эти проблемы — но только если понимать, как она работает, и заранее договориться о правилах.
Зачем магазину обмен с 1С
Учётная система — это источник правды о товарах, ценах, остатках и деньгах. Сайт — витрина, которая должна показывать актуальные данные и передавать в учёт полученные заказы. Обмен между ними позволяет не вести две базы параллельно.
Помимо экономии времени, интеграция снижает количество ошибок. Если менеджер вручную переносит заказ из почты в 1С, он может перепутать артикул, количество или адрес. Если заказ приходит в учёт автоматически, этот риск исчезает. А если остатки на сайте обновляются каждые несколько минут, магазин перестаёт продавать товар, которого нет, и сокращается число неприятных звонков «извините, товар закончился».
Для владельца бизнеса важно и другое: единая отчётность. Когда заказы с сайта попадают в 1С вместе с розничными и оптовыми продажами, видна реальная картина — какие товары продаются, какой канал приносит выручку, где скапливаются остатки.
Какие данные передаются и в какую сторону
Обмен двусторонний. Из 1С на сайт идут данные о товарах, из сайта в 1С — данные о заказах. Важно заранее определить, какая система является главной для каждого типа данных, иначе изменения будут затирать друг друга.
| Данные | Направление | Комментарий |
|---|---|---|
| Номенклатура: название, артикул, группа | 1С → сайт | Основа каталога; изменения в 1С обновляют карточки |
| Характеристики и свойства | 1С → сайт | Используются для фильтров; требуют аккуратного заполнения в учёте |
| Торговые предложения (размеры, цвета) | 1С → сайт | Характеристики номенклатуры превращаются в варианты товара |
| Цены по типам | 1С → сайт | Розничная, оптовая, дилерская — каждая для своей группы покупателей |
| Остатки по складам | 1С → сайт | Общий остаток или по каждому складу и магазину |
| Описания и фото | Чаще на сайте | Маркетинговый контент обычно удобнее вести в админке сайта |
| Заказы | Сайт → 1С | Состав, покупатель, доставка, оплата |
| Статусы заказов | 1С → сайт | Собран, отгружен, доставлен — для уведомлений покупателя |
Отдельный вопрос — контент. Описания, фото, SEO-тексты технически можно хранить в 1С, но работать с ними там неудобно, и учётчики не любят, когда в их базу добавляют маркетинговые поля. Мы обычно оставляем в 1С учётные данные, а контент ведём на сайте. При этом обмен настраивается так, чтобы выгрузка из 1С не затирала описания, отредактированные на сайте.

Как технически устроен обмен
Самый распространённый способ — стандартный протокол обмена с сайтом, встроенный в типовые конфигурации 1С: Управление торговлей, Розница, Комплексная автоматизация, УНФ. 1С по расписанию формирует файлы в формате CommerceML (это XML со строгой структурой) и отправляет их на сайт по HTTP. Сайт принимает файлы, разбирает и обновляет каталог, а в ответ отдаёт файл с новыми заказами.
У 1С-Битрикс приём таких файлов встроен в модуль интернет-магазина. Для WordPress/WooCommerce, OpenCart и других платформ есть модули, которые реализуют тот же протокол. Для проектов на фреймворке мы пишем обработчик сами — так получается быстрее и точнее под задачу. Подробнее о том, как платформа влияет на интеграции, мы писали в материале о выборе платформы для магазина.
Второй способ — обмен через API или промежуточный сервис. Он применяется, когда стандартный протокол не справляется: очень большой каталог, нужна мгновенная передача остатков, нестандартная конфигурация 1С или несколько учётных баз. В этом случае на стороне 1С пишется обработка, которая отдаёт или принимает данные в нужном формате, а на стороне сайта — сервис, который их обрабатывает.
Полная и частичная выгрузка
Полная выгрузка передаёт весь каталог целиком. Она нужна при первом запуске и иногда для сверки, но на каталоге в 30 000 товаров с фото может занимать часы. Поэтому в ежедневной работе используется частичная выгрузка — только изменённые с прошлого обмена данные. Остатки и цены часто выносят в отдельный лёгкий обмен, который запускается каждые 5–15 минут, а номенклатуру обновляют раз в несколько часов или ночью.
Фотографии и тяжёлые файлы
Отдельная головная боль — изображения. Если фото товаров хранятся в 1С и передаются в каждом пакете обмена, объём выгрузки вырастает в десятки раз. Правильнее передавать фото только при их изменении или вовсе загружать их на сайт отдельно, а из 1С передавать лишь ссылку или имя файла. Это сокращает время обмена с часов до минут и снижает нагрузку на сервер в рабочее время.
Если вместо 1С — МойСклад
Небольшие компании часто ведут учёт не в 1С, а в облачном МойСклад. Принцип тот же: товары, цены и остатки идут на сайт, заказы — обратно. Разница в том, что у МойСклад открытый API и вебхуки, поэтому обмен можно сделать почти мгновенным — изменение остатка сразу отражается на витрине. Для многих магазинов на старте это удобная и недорогая альтернатива.
Типичные проблемы и как их избежать
Большинство проблем с интеграцией связано не с программированием, а с данными в учётной системе. 1С ведут годами, разные люди, по разным правилам, и при выгрузке на сайт всё это становится видно.
Хаос в номенклатуре
Один и тот же товар заведён дважды, в названиях служебные пометки «НЕ ИСП», «старый», характеристики записаны в названии, а не в свойствах. На сайте это превращается в дубли и мусор.
Затирание данных
Менеджер поправил название на сайте, а ночная выгрузка вернула старое. Решается чётким разделением полей: какие ведутся в 1С, какие — на сайте.
Медленный обмен
Полная выгрузка вместо частичной, тяжёлые фото в каждом пакете, отсутствие индексов в базе сайта. Обмен идёт часами и мешает работе магазина.
Контрагенты-дубли
Каждый заказ с сайта создаёт в 1С нового контрагента, даже если покупатель уже есть в базе. Нужна настройка поиска по телефону, а для юрлиц — по реквизитам организации.
Именно поэтому любой проект интеграции мы начинаем с аудита данных в 1С. Иногда оказывается, что перед подключением сайта нужно две-три недели наводить порядок в справочниках: объединять дубли, выносить характеристики в свойства, создавать недостающие виды цен. Эта работа выполняется на стороне заказчика или его программиста 1С, и её стоит закладывать в план заранее.
Пример из практики: у производителя сантехнической арматуры размеры и материал были записаны прямо в названии номенклатуры — «Кран шаровой 1/2 ВР-НР латунь». Чтобы сделать фильтры на сайте, пришлось вынести эти параметры в отдельные свойства для 3 400 позиций. Программист 1С сделал это обработкой за два дня, но без этого шага фильтрация была бы невозможна.
Заказы, оплаты и статусы
Передача заказов в 1С — вторая половина обмена. Заказ должен прийти в учёт с корректными данными: товары с правильными артикулами и вариантами, цены с учётом скидок, стоимость доставки отдельной строкой, данные покупателя, способ оплаты и отметка, оплачен ли заказ онлайн.
Обратный поток — статусы. Когда склад собрал заказ, бухгалтерия провела оплату, а служба доставки забрала посылку, эти изменения можно передавать на сайт. Покупатель видит актуальный статус в личном кабинете и получает уведомления, а менеджерам не нужно отвечать на звонки «где мой заказ». Если в процессе участвует ещё и CRM, схема усложняется: нужно договориться, где создаётся сделка и какая система передаёт заказ в учёт. Подробности о платёжной части — в статье о подключении онлайн-оплаты.
Для B2B-магазинов добавляются персональные цены и договоры: каждому контрагенту в 1С назначен свой тип цен или скидка, и сайт должен показывать авторизованному покупателю именно его условия. Это стандартная задача, но её обязательно нужно предусмотреть в техническом задании.
Порядок работ и сроки
Интеграция — отдельный этап проекта со своими участниками: разработчики сайта, программист 1С заказчика и ответственный со стороны бизнеса, который знает, как устроены процессы.
Аудит учётной базы
Изучаем конфигурацию и версию 1С, структуру номенклатуры, свойства, виды цен и склады. Составляем список того, что нужно привести в порядок.
Карта обмена
Фиксируем, какие данные, в каком направлении и как часто передаются, какая система главная для каждого поля, как сопоставляются группы 1С и категории сайта.
Настройка и разработка
Настраиваем стандартный обмен или пишем собственный обработчик, дорабатываем модуль под особенности базы.
Тестовый обмен
Выгружаем данные на тестовую копию сайта, проверяем товары, варианты, цены, остатки, создаём тестовые заказы и смотрим, как они приходят в 1С.
Запуск и наблюдение
Включаем обмен на рабочем сайте, первые две недели отслеживаем журнал обмена и исправляем расхождения.
Простая интеграция типовой конфигурации с Битриксом занимает от одной до трёх недель. Сложная — с несколькими складами, персональными ценами, нестандартной 1С и CRM — от месяца. Ориентир по стоимости — от 40 000 ₽ для отдельной интеграции, а интернет-магазин с интеграцией 1С «под ключ» мы делаем от 290 000 ₽ за 8–14 недель. Подробности — на странице интеграции с 1С и CRM.
Что важно унести с собой
Интеграция с 1С превращает учётную систему в единый источник данных о товарах, а сайт — в витрину, которая сама передаёт заказы в учёт. Это экономит часы ручной работы, снижает количество ошибок и даёт честную картину продаж по всем каналам.
Успех интеграции на три четверти зависит от подготовки. Наведите порядок в номенклатуре до начала работ. Чётко договоритесь, какая система управляет каждым полем. Разделите тяжёлый обмен каталогом и лёгкий обмен остатками. Проверьте на тестовой копии все сценарии, включая скидки, доставку и возвраты. И заложите пару недель наблюдения после запуска — именно тогда всплывают редкие случаи, которые сложно предусмотреть заранее.
Нужен сайт или интернет-магазин?
Обсудим задачу, подскажем подходящую платформу и оценим сроки и бюджет — бесплатно и без обязательств.
Обсудить проект
