+7 (495) 278-08-54

Задача

Когда для F5IT разрабатывали B2B-портал, стало понятно: стандартного обмена между сайтом и 1С мало.

Нужно было решить три конкретные проблемы:

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

  2. Резервы в 1С. Решение о резервировании принимается в 1С — там живут остатки и бизнес-правила. Значит, портал должен получать следующие данные: резерв или конечный заказ создан, сколько, до какой даты и что с ним произошло дальше.

  3. Редактирование заказа на стороне контрагента. Контрагенту важно иметь возможность исправить заказ после оформления (количество, позиции, условия) — но так, чтобы: не появлялись дубли и «разорванные» заказы; 1С могла корректно пересчитать резервы и вернуть обновленный результат на портал.

Под эти задачи и был разработан модуль «Сотбит: Резервирование» — связка между 1С и B2B-порталом, которая занимается только резервами и оффлайн-заказами.

Что делает модуль в целом

Если говорить простыми словами, модуль отвечает за три потока данных:

  • Передает заказы с портала в 1С как задачи на резервирование или как реальный заказ;

  • Возвращает фактические резервы из 1С на портал;

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

При этом 1С остается единственным источником правды: именно там хранится, что в итоге зарезервировано, какие заказы оформлены и какие документы по ним проведены.

Настройки обмена: куда, что и как часто передавать

В 1С для модуля добавляется отдельный блок настроек. Через него можно:

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

  • Выбрать, в каком объеме выгружать информацию: полная выгрузка (когда настраиваемся или проверяем все сразу) или, только изменения с момента последней успешной синхронизации;

  • Задать, как запускать обмен: вручную — для тестов и разовых операций или, по расписанию — для регулярной фоновой работы;

  • Включить расширенное логирование, чтобы при проблеме можно было посмотреть, какие данные ушли, что вернулось и на каком шаге возникла ошибка.

Для конечного бизнеса это означает предсказуемое поведение: понятно, когда и какие данные обмениваются между 1С и порталом.

Настройки обмена: куда, что и как часто передавать

Заказы с портала → в 1С как задачи на резерв

Когда контрагент оформляет заказ в B2B-портале, модуль делает следующее:

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

  2. Передает эти данные в 1С в структурированном виде.

  3. В 1С это попадает в специально настроенный регистр задач резервирования.

Дальше уже вступают в игру правила F5IT в 1С:

  • Система решает, можно ли оформить резерв в полном объеме;

  • Вносит изменения по остаткам;

  • Фиксирует результаты обработки (успешно, частично, отказ и т.п.).

Главная мысль: портал не «придумывает» резерв, он только запускает процесс в 1С. Все, что связано с учетом, по-прежнему живет в учетной системе.

Заказы с портала → в 1С как задачи на резерв

Редактирование заказа контрагентом: как модуль поддерживает изменения

Чтобы редактирование работало корректно, важно было обеспечить две вещи: единый жизненный цикл заказа и корректную пересборку резервов в 1С без дублей и ручных “разборов”.

Что именно может менять контрагент

  • Изменить количество по позициям;

  • Добавить или удалить позиции;

  • Заменить номенклатуру (по согласованным правилам);

  • Скорректировать параметры заказа (например, комментарий/условия, которые учитываются в 1С);

  • Отменить заказ, если он больше не актуален.

Что происходит при сохранении изменений

После сохранения правок модуль запускает управляемый сценарий синхронизации:

  1. Портал формирует новую версию заказа (ревизию), сохраняя связь с исходным заказом/задачей резервирования.

  2. В 1С изменения попадают как обновление задачи (или как новая задача, связанная с исходной — в зависимости от правил проекта).

  3. 1С пересчитывает резервирование по каждой строке: если количество уменьшили — излишек резерва снимается; если количество увеличили — 1С пытается дозарезервировать доступный остаток; если позицию удалили — резерв по ней снимается;если позицию добавили — 1С обрабатывает её как новую строку на резерв.

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

Редактирование заказа

Резервы из 1С → обратно в личный кабинет

После того как 1С обработала задачи, модулю нужно вернуть результат контрагенту в понятном виде.

Для этого:

  1. Модуль выбирает в 1С актуальные записи по резервированию — последние завершенные состояния по каждой позиции заказа.

  2. Формирует из них компактный пакет данных (без лишнего «шума»).

  3. Отправляет его на сайт.

На стороне портала это превращается в нормальный интерфейс:

  • В карточке заказа видно, по каким позициям оформлен резерв;

  • В каком объеме он подтвержден;

  • На какой срок действует;

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

То есть контрагент видит не просто статус «в работе», а конкретный результат, рассчитанный в 1С.

Как это выглядит для контрагента и для F5IT

Для контрагента все довольно прозрачно:

  • Он оформляет заказ в кабинете;

  • При необходимости редактирует его;

  • Через некоторое время видит, что по позициям появились резервы с понятным статусом и сроком;

Для F5IT модуль дает несколько важных вещей:

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

  • Гибкие настройки обмена. Можно регулировать, как часто и в каком объеме идти на сайт, где писать логи, как действовать при ошибках.

  • Полная картина по контрагенту. В личном кабинете и в 1С видна одна и та же история заказов, без разрывов.

Результат

Разработка и интеграция модуля позволили:

  • Превратить заказы с B2B-портала в управляемые задачи в 1С, а не в разрозненные записи обмена;

  • Дать контрагенту возможность редактировать заказ после оформления, при этом сохранив корректный учёт и пересчёт резервов в 1С;

  • Показывать в личном кабинете реальное состояние резервов, рассчитанное в учетной системе;

  • Навести порядок в обмене: понятно, что, куда и когда уходит, и как это диагностировать при проблеме.

За счет этого B2B-портал F5IT стал не отдельной системой, а полноценной частью контура 1С — с нормальными резервами, понятной историей заказов и предсказуемым поведением для контрагентов.

Нужны управляемые резервы и единая логика в 1С? Напишите нам — проведём бесплатный аудит вашей 1С и предложим вариант разработки под текущую конфигурацию.