От задачи к работающему сайту на Битрикс
  1. Требования

    Каталог, роли, интеграции и сценарии

  2. Редакция

    Функции платформы и ограничения лицензии

  3. Сборка

    Дизайн, данные и обмен с внешними системами

  4. Приёмка

    Проверка сценариев и передача доступа

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

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

Что означает стандартный обмен

Для связи 1С и интернет-магазина используется протокол с форматом CommerceML. Описание протокола 1С разделяет передачу каталога и работу с заказами. Формат задаёт взаимодействие систем, но бизнес-правила конкретного магазина нужно определить отдельно.

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

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

Составьте матрицу владельцев данных

Пример карты обмена между сайтом и 1С
ДанныеВозможный источникПравило, которое нужно утвердить
Артикул и вариант1ССтабильный идентификатор и обработка объединений
Описание для покупателяСайтЗащита редакторского текста от перезаписи
Продажная цена1С или согласованный расчётТип цены, скидка, округление и момент фиксации
Доступное количествоУчёт с резервамиСклады и вычитание уже занятых единиц
Новый заказСайтЦелевой документ и повторная передача
ОтгрузкаОтветственная системаСобытие подтверждения и обратный статус

Это пример структуры задания, а не готовая модель для каждой компании. У одного магазина описания ведёт контент-менеджер, у другого — товарная команда в 1С. Назначьте один источник для каждого поля и явно разрешённые исключения. Иначе два сотрудника будут по очереди перезаписывать работу друг друга.

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

Отделите физический остаток от доступного

На складе может быть товар, уже зарезервированный для другого канала. Определите, какие склады участвуют в интернет-продаже, как учитываются резервы и ожидаемые поступления. Затем решите, что сайт показывает во время задержки обмена. Эти правила относятся к логистике и продажам, а не к выбору кнопки в модуле.

Условный пример: на складе 12 единиц, 5 зарезервированы, ещё 2 магазин оставляет как согласованный запас на задержку. Сайт предлагает 5 единиц. Если просто выгрузить физические 12, он может принять лишние заказы. Значения приведены для объяснения метода; собственный запас определяют по частоте изменений и допустимому риску.

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

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

У заказа должен быть устойчивый внешний идентификатор. Повтор сообщения после обрыва связи должен обновлять тот же объект, а не создавать новую покупку. Для каждого состояния определите разрешённое действие: создать документ, изменить реквизиты, отметить оплату или передать отгрузку.

Не объединяйте оплату и исполнение в одно поле «готово». Покупка может быть оплачена частично, собрана не полностью или отменена после одного из этапов. Если такие сценарии нужны, включите их в карту обмена и испытания. Для обычной продажи и частичного возврата могут понадобиться разные данные.

Ручное изменение заказа тоже требует правила. Кто может менять состав после оплаты? Должна ли правка в 1С вернуться на сайт? Что происходит, если сообщение пришло с задержкой? В настройке обмена заказами эти вопросы решают до рабочего запуска.

Как устроить пробный запуск

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

Затем испытайте повтор, прерывание и ошибку одной строки. Журнал должен показывать, какая операция не завершилась и кому её исправлять. Общая отметка «обмен выполнен» мало помогает, если часть каталога пропущена. После исправления повтор должен продолжить работу без дублирования уже принятых данных.

Тестовая среда и рабочая база должны быть разделены. Отключите непредусмотренную отправку клиентских сообщений и реальные операции, согласуйте необходимые проверки с владельцем. Доступы выдавайте под задачу, а технические секреты передавайте защищённым способом.

Из чего складывается стоимость интеграции

В смету входят обследование связки, карта объектов, подготовка данных, настройка либо доработка, испытания и передача правил эксплуатации. Отдельно учитываются лицензии, права на обновления, сторонние модули и последующее обслуживание. Цена зависит от числа процессов и исключений, а не только от количества товаров.

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

Чек-лист передачи обмена в работу

  • У каждого поля определён источник и приоритет изменения.
  • Товары и варианты связаны устойчивыми идентификаторами.
  • Правила цен, скидок и резервов приняты ответственными сотрудниками.
  • Повтор сообщения и прерывание обмена проверены.
  • Согласованные состояния заказа отражаются в обеих системах.
  • Есть журнал ошибок, получатель уведомлений и порядок повторного запуска.
  • Изменения версий и модулей имеют ответственного за проверку совместимости.

Вопросы об обмене с 1С

Обновление должно идти каждую секунду?

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

Можно менять цену вручную на сайте?

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

Кто отвечает за неверные данные?

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

Что подготовить к оценке

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