Написать нам в Telegram

Интеграция сайта с 1С: сценарии, сроки и где ломается

Разработка
Фото Максим Козлов
Максим КозловРуководитель отдела разработки

Интеграция сайта с 1С — обмен данными между учётной системой и сайтом: товары, цены, остатки, заказы, статусы. Задача звучит просто, но объём работы определяется не сайтом, а состоянием учёта.

Что обычно передают

ДанныеКудаКак частоЧто учесть
Каталог: товары, свойства, категорииИз 1С на сайтРаз в сутки или по изменениюНужны единые идентификаторы, иначе появятся дубли
Цены, в том числе по типам покупателейИз 1С на сайтНесколько раз в деньПравила для оптовых и персональных цен продумывают заранее
Остатки по складамИз 1С на сайтЧем чаще, тем лучшеСамое частое место расхождений и жалоб покупателей
ЗаказыС сайта в 1ССразу после оформленияНужны правила для повторов и отмен
Статусы и документыИз 1С на сайтПо событиюДаёт покупателю понятную историю заказа

Два режима обмена

По расписанию. Данные выгружаются пакетами: ночью каталог, днём цены и остатки. Просто, дёшево, устойчиво к сбоям. Минус — данные на сайте всегда немного отстают.

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

Сколько занимает

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

Что ломается чаще всего

  • Дубли товаров. Разные идентификаторы в учёте и на сайте — и после обмена каталог удваивается.
  • Остатки не сходятся. Резервы, отгрузки и возвраты считаются в 1С по своим правилам, а сайт показывает «в наличии».
  • Цены не для тех. Оптовая цена утекает в розницу или наоборот — почти всегда следствие несогласованных правил.
  • Обмен встал молча. Без мониторинга поломка обнаруживается, когда покупатели уже жалуются. Нужны уведомления о неуспешной выгрузке.
  • Нагрузка. Полная выгрузка каталога в час пик кладёт сайт. Решается расписанием и порционной передачей.

Что подготовить до старта

  1. Навести порядок в справочниках: единые идентификаторы и наименования.
  2. Описать правила: какие цены кому показываем, что делать при нулевом остатке.
  3. Завести отдельного пользователя для обмена с ограниченными правами.
  4. Договориться, кто отвечает за учёт со стороны компании: без этого человека проект встанет.

Такие работы ведём в рамках разработки сайтов и сервисов. Если интеграция нужна ради каталога, посмотрите также как устроено SEO интернет-магазина — правила обмена влияют на индексацию карточек.

Фото Максим Козлов
Максим КозловРуководитель отдела разработки

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

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

Если конфигурация 1С типовая и каталог простой — да. Доработанный учёт, несколько складов и типов цен почти всегда требуют настройки правил под компанию.

Чем чаще, тем меньше жалоб на «товар был на сайте». Обычно делают частый обмен по остаткам и редкий по каталогу, чтобы не нагружать систему.

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

Человек, отвечающий за учёт: он принимает решения по справочникам и правилам. Без него проект упирается в вопросы, на которые никто не отвечает.