Вебформат

Главная/Как мы построили обмен с 1С/Технический разбор

Технический разборГлава 1 из 86 мин

Общая архитектура обмена

Из чего собран обмен интернет-магазина с 1С:ERP: сайт, зона обмена с журналом и очередью, сервис синхронизации - и два решения, на которых держится вся конструкция. С октября 2025 года обмен обработал более 75 000 выгрузок - около 750 в сутки - и работает без участия человека.

Общая архитектура
Общая архитектура

Зачем нужен обмен

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

Обмен решает две задачи:

  • витрина показывает актуальные данные из 1С - цены, наличие, сроки поставки - без ручного ввода на стороне сайта;
  • всё, что оформил покупатель, попадает в 1С, где с заказом дальше работает менеджер.

Требование к такому обмену одно: он должен работать без участия человека и не терять данные, даже когда одна из систем временно недоступна.

Участники обмена

Кто участвует в обмене и что получает
Покупатель
Дилер, дистрибьютор или розничный клиент
Работает только с сайтом
выбирает товар и оформляет заказ; сайт показывает его цену и живое наличие
Интернет-магазин
Витрина, личные кабинеты, заказы и заявки
на сайт - каталог, персональные цены, остатки и статусы заказов; обратно - заказы, заявки сервис-центра и файлы
1С:ERP
Здесь заводят и меняют: товары, цены, остатки, клиенты
заказ с сайта приходит в привычную программу
Менеджер
Работает только в 1С: ведёт номенклатуру, цены и заказы
Данные на сайте никто не заводит руками: всё, что видит покупатель, приходит из 1С.

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

Как устроена система

Обмен интернет-магазина с 1С:ERP - общая схема
1С:ERP
Ведёт товары, цены, остатки и клиентов
Принимает заказы и заявки с сайта
импорт: выгрузки - сжатые файлы; подтверждение приёма - сразу
Сайт: приём выгрузок
Работает на сайте (1С-Битрикс) - рядом с данными витрины и реестром пометок
файл - в очередь, запись - в журнал
Зона обмена: журнал + очередь
Каждая полученная выгрузка и её текущий статус
Архив выгрузок
Все выгрузки за всё время работы обмена
обработчик подхватывает выгрузки в течение секунд
Сервис синхронизации: обработчик очереди
Разбирает выгрузки и отмечает в журнале: обработана, были ли замечания
запись только изменений
Данные сайта
Каталог, цены, остатки, заказы, личные кабинеты
экспорт: оформлен заказ - пометка "передать в 1С"
Реестр пометок "что передать в 1С"
Сайт шлёт 1С мгновенное уведомление: появился заказ №N
1С сама обращается: "отдай заказ №N"
Сервис синхронизации: API выдачи данных
Читает заказ из данных сайта, отдаёт 1С заказы, заявки и файлы
заказ уходит в 1С
1С:ERP принимает заказ
Дальше с заказом работает менеджер - в привычной программе
Импорт: 1С передаёт выгрузку за доли секунды, тяжёлая обработка идёт отдельно. Экспорт: сайт помечает и уведомляет, а данные 1С забирает сама - когда готова их принять. Все запросы между системами идут по шифрованному каналу, с авторизацией.
Сайт, зона обмена и сервис синхронизации работают на одной площадке

Обмен построен на трёх составляющих, размещённых на одной площадке.

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

Ключевое решение: приём и обработка разделены

1С передаёт выгрузку и сразу получает подтверждение приёма - на это уходят доли секунды. Разбор данных выполняется отдельно, своим темпом, и 1С его не ждёт.

Такое разделение даёт три эффекта:

  • 1С не простаивает в ожидании, пока сайт обработает четверть миллиона строк;
  • тяжёлая обработка не мешает посетителям магазина;
  • если обработка по какой-то причине остановится, приём продолжит работать - выгрузки будут спокойно копиться в очереди.

Ключевое решение: заказы 1С забирает сама

Сайт не пытается "протолкнуть" заказ в 1С. Вместо этого он ставит пометку "передать в 1С" и отправляет короткое уведомление. За полными данными 1С обращается сама - тогда, когда готова их принять.

Уведомление лишь ускоряет обмен. Даже если оно не дойдёт, пометка останется в реестре, и 1С заберёт заказ при ближайшем плановом опросе. Потерять заказ между системами невозможно.

Обмен в цифрах

ПоказательЗначение
В промышленной эксплуатациис октября 2025 года
Обработано выгрузокболее 75 000
Выгрузок в суткиоколо 750
Обновление остатковкаждые 5 минут
Задержка между приёмом и обработкойсекунды
Записей в одной полной выгрузке цендо 260 000
Доля выгрузок с замечаниямименее 0,2%, и каждая видна администратору
Типов передаваемых данных21

Обзорная версия темы одной статьёй - статья про обмен целиком. Что вошло в проект помимо обмена - в кейсе B2B-платформы.

Нужен такой же обмен с вашей 1С?

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