Интеграция сайта с 1С, CRM и ERP — как настроить обмен товарами, ценами и заказами
Как устроена интеграция сайта с 1С и CRM: какие данные передаются, чем типовой обмен 1С-Битрикс по CommerceML отличается от REST API, как настроить обмен с 1С:УТ и УНФ, как связать 1С с Битрикс24, сколько стоит интеграция и где она ломается.
Обсудим ваш проект?
Оставьте телефон, перезвоним и ответим на вопросы по теме статьи.
Коротко
1Из 1С на сайт обычно уходят товары, цены и остатки, обратно приходят заказы и их статусы, а заявки с форм попадают в CRM.
2Для сайтов на 1С-Битрикс есть типовой обмен по CommerceML с конфигурациями 1С:УТ и УНФ, он настраивается за дни, а не за месяцы.
3Нестандартную логику цен и складов связывают через REST API или промежуточный сервис, это недели работы и отдельное тестирование.
4Чаще всего интеграции ломаются не из-за кода, а из-за того, что не определили, в какой системе правят данные.
Интеграция сайта с 1С нужна, когда менеджер каждый день вручную переносит заказы в учёт, а покупатель видит на сайте товар, которого уже нет на складе. Сайт и учётная система живут отдельно, данные расходятся, и ошибки ловят клиенты. Ниже разбираем, какие данные передавать, какими способами связать сайт с 1С и CRM и почему обмен, который работал при запуске, через полгода начинает сбоить.
Какие данные передаются между сайтом, 1С и CRM
Прежде чем выбирать способ обмена, договариваются о составе данных и направлениях. Типичная схема для интернет-магазина или корпоративного сайта с каталогом выглядит так.
Данные
Откуда и куда
Как часто
Товары с характеристиками и группами
из 1С на сайт
раз в сутки или при изменениях
Цены по типам и остатки по складам
из 1С на сайт
каждые 15–60 минут
Заказы с составом и данными покупателя
с сайта в 1С
сразу или каждые несколько минут
Статусы заказов, оплат и отгрузок
из 1С на сайт
каждые 15–60 минут
Заявки с форм, звонки, источники трафика
с сайта в CRM
сразу
Клиенты и их скидки
между учётом, CRM и сайтом
по договорённости
Главное решение на этом этапе касается источника правды. Если цены правят и в 1С, и на сайте, каждая выгрузка затирает чьи-то изменения. Обычно номенклатура и цены живут в 1С. Описания с фотографиями ведут на сайте, а клиентов со сделками в CRM. Схему лучше записать в документ, который подпишут и программист 1С, и веб-разработчик.
Способы интеграции сайта с 1С
Технически связать сайт с 1С можно несколькими способами. Выбор зависит от платформы сайта, конфигурации 1С и того, насколько нестандартны ваши процессы.
Типовой обмен по протоколу CommerceML. Поддерживается в типовых конфигурациях 1С и в модуле обмена 1С-Битрикс, для WordPress есть готовые модули. Подходит, если каталог и цены устроены стандартно.
REST API или OData на стороне 1С. Сайт и учёт обмениваются данными через веб-сервисы, логику можно настроить под любые правила, но её нужно программировать и поддерживать.
Промежуточный сервис или интеграционная шина. Нужен, когда систем больше двух, например сайт с 1С, CRM и маркетплейсы, и обмен должен идти через одну точку с журналом ошибок.
Выгрузка файлов CSV или XML по расписанию. Самый простой вариант для небольших каталогов, где остатки меняются редко.
Для сайтов на WordPress с WooCommerce обмен с 1С делают через модули, которые понимают тот же протокол CommerceML. Работают они хорошо на небольших каталогах. С десятками тысяч товаров и несколькими складами модуль начинает упираться в время выполнения на хостинге, выгрузка обрывается на середине, и часть товаров остаётся со старыми ценами. Тогда обмен переносят в фоновые задачи или пишут свой загрузчик. Это не катастрофа. Но закладывать такой сценарий лучше заранее.
На практике начинают с типового обмена и дописывают только то, что в него не помещается. Полностью собственная интеграция оправдана, когда типовой протокол не справляется с объёмом или с правилами, например с индивидуальными ценами для каждого дилера.
Отдельно выбирают режим обмена. Пакетный обмен по расписанию проще и надёжнее, раз в полчаса сайт забирает изменения и не нагружает 1С лишними запросами. Онлайн-обмен через веб-сервисы нужен, когда остатки меняются каждую минуту и продажа товара, которого уже нет, обходится дорого. Например, при продаже штучного или дорогого оборудования. Ещё одно решение касается направления. Односторонний обмен только выгружает каталог на сайт, двусторонний возвращает в учёт заказы и данные покупателей, и для него нужна проверка конфликтов.
Как настроить обмен 1С с сайтом на Битриксе
Модуль обмена 1С-Битрикс работает с типовыми конфигурациями 1С:Управление торговлей, 1С:УНФ и рядом других. На стороне 1С создают узел обмена с сайтом и указывают адрес сайта и учётную запись для обмена. Затем выбирают, какие группы номенклатуры, типы цен и склады выгружать, и задают расписание. На стороне сайта настраивают соответствие типов цен и складов, свойств товаров и правил для заказов.
Первую выгрузку делают на тестовой копии сайта. Она показывает реальное состояние справочников в 1С, а оно редко бывает образцовым. Одинаковые товары под разными кодами, характеристики в названии вместо отдельных реквизитов, архивные позиции, которые никто не помечал. Чистка справочников часто занимает больше времени, чем сама настройка, и её стоит заложить в план.
У типового обмена есть ограничения, о которых лучше знать заранее. Он хорошо справляется с товарами, ценами и остатками, но характеристики вроде размера или цвета приходят на сайт только в том виде, в каком заведены в 1С. Если в учёте размер записан в названии товара, на сайте не получится сделать по нему фильтр без доработки. Индивидуальные цены для конкретных клиентов, сложные скидки и комплекты в типовой протокол тоже не помещаются и требуют отдельной логики.
Обмен заказами настраивают отдельно. Решают, в каком статусе заказ попадает в 1С, кто подтверждает наличие и как статус отгрузки возвращается на сайт, чтобы покупатель видел его в личном кабинете. В 1С:УТ 11 и УНФ схемы различаются, поэтому одну инструкцию для всех конфигураций дать нельзя. Если конфигурация доработана, без программиста 1С не обойтись.
Интеграция сайта с CRM и Битрикс24
С CRM сайт связывают ради заявок. Каждая форма, звонок через коллтрекинг и сообщение из чата создают сделку с источником трафика и ответственным менеджером. Для amoCRM и Битрикс24 есть готовые виджеты и вебхуки, их подключение занимает дни. Сложности начинаются с дублями, когда один клиент оставил три заявки и получил три сделки у разных менеджеров. Правило объединения по телефону или почте настраивают сразу.
Когда в компании одновременно работают 1С и Битрикс24, их тоже связывают между собой. У Битрикс24 есть штатная интеграция с типовыми конфигурациями 1С, через неё передаются контрагенты и товары, а также сделки. Получается цепочка, в которой заявка с сайта становится сделкой в CRM, а после оплаты превращается в документ в 1С. Выбор самой CRM подробно разобран в статье какую CRM выбрать.
Связка сайта с CRM даёт ещё и сквозную аналитику. В отчёте видно не число заявок с рекламы, а сколько сделок и денег принесла каждая кампания. Без этого рекламу оценивают по кликам, и бюджет уходит туда, где много дешёвых заявок, а не туда, где реальные продажи.
Отдельный вопрос — доступ. Для интеграции сайту нужна учётная запись в 1С или CRM с правами только на нужные операции, а не логин главного бухгалтера. Пароли и ключи API хранят в настройках сервера, а не в коде сайта, и меняют при смене подрядчика. Это простые правила, но при аудите чужих интеграций мы регулярно видим обратное.
Интеграция с ERP и сложные случаи
В крупных компаниях вместо или вместе с 1С:УТ работает ERP-система, например 1С:ERP или иностранная платформа, которую заменяют отечественной. Здесь сайт редко подключают напрямую. Обмен идёт через промежуточный слой, который собирает данные из нескольких систем, проверяет их и отдаёт сайту в готовом виде. Так проще пережить переход с одной ERP на другую, потому что меняется только одна сторона интеграции.
Отдельная история с B2B, где у каждого дилера своя цена и свой кредитный лимит. Такие сценарии мы разбирали в статье о B2B-интернет-магазине.
Сроки и стоимость интеграции
Типовой обмен 1С-Битрикс с типовой конфигурацией настраивается за несколько дней и стоит десятки тысяч рублей. Это если справочники в порядке. Двусторонняя интеграция с доработками в 1С и на сайте, онлайн-обменом остатков и личными кабинетами занимает недели и стоит от сотен тысяч. Сроки чаще всего растягивает не программирование, а согласования между командами сайта и 1С. Они работают у разных подрядчиков, отвечают за разные системы и нередко узнают о проблемах друг друга только на общем созвоне, который собирают, когда обмен уже остановился.
Сам проект интеграции проходит в несколько шагов. Сначала обследуют обе системы и составляют протокол обмена, в нём перечислены поля, направления и частота. Потом настраивают обмен на тестовых копиях и прогоняют реальные сценарии, от заказа с оплатой картой до возврата. Только после этого включают обмен на рабочих системах, а первые две недели проверяют журнал ошибок каждый день. Пропуск тестового этапа экономит неделю и стоит месяца разбирательств с расхождениями.
Через полгода после запуска даже хорошо сделанный обмен может начать сбоить без видимых признаков. Когда нас зовут разобраться со старой или чужой интеграцией, причина обычно одна из этих.
Не определён источник правды. Цены правят в двух местах, и каждая выгрузка затирает чьи-то изменения.
Нет обработки дублей. Клиент с тремя обращениями превращается в три сделки, и менеджеры звонят ему по очереди.
Нет мониторинга. После обновления 1С обмен молча перестаёт работать, а узнают об этом по жалобам покупателей.
Всё держится на одном человеке. Программист, который настраивал обмен, ушёл, документации нет.
Поэтому обмену нужен присмотр и после сдачи. Мы берём его на техническую поддержку и держим уведомления о сбоях у себя, чтобы узнавать о проблеме раньше покупателей. Если системы уже работают и вы не знаете, как связать их между собой, опишите их в брифе, и мы предложим схему обмена.
Остатки и цены для активно продающего магазина обновляют раз в 15–60 минут, каталог с описаниями раз в сутки. Заказы передают в 1С сразу после оформления или пакетом каждые несколько минут.
Типовой обмен 1С-Битрикс с типовой конфигурацией 1С настраивается по инструкции, если каталог и цены в 1С ведутся аккуратно. Доработанная конфигурация, несколько складов с разными правилами или нестандартные цены требуют программиста 1С и веб-разработчика.
Обычно сбивается связь по идентификаторам, например после пересоздания номенклатуры в 1С или ручного переноса товаров на сайт. Решается сопоставлением по внешнему коду и проверкой настроек узла обмена.
Настройка типового обмена на 1С-Битрикс обходится в десятки тысяч рублей. Двусторонняя интеграция с доработками в 1С и на сайте, личными кабинетами и онлайн-обменом стоит от сотен тысяч и занимает недели.
CRM отвечает за клиентов и сделки, туда приходят заявки с сайта. ERP или учётная система вроде 1С отвечает за товары, склады и деньги, оттуда берутся цены и остатки и туда уходят заказы.