Настройка выгрузки остатков по складам из 1С:УТ в 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка выгрузки остатков по складам из 1С:УТ в 1С-Битрикс
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1173
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    745
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Настройка выгрузки остатков по складам из 1С:УТ в 1С-Битрикс

Остатки — самая «горячая» часть обмена. Цены меняются раз в день, номенклатура — раз в неделю, а остатки могут меняться каждые несколько минут в активном магазине. Неактуальный остаток = заказ товара, которого нет = недовольный клиент + ручная работа по отмене. Поэтому настройка выгрузки остатков требует отдельного внимания к частоте, точности и архитектуре складов.

Как остатки хранятся в УТ и передаются в Битрикс

В 1С:УТ 11 остатки хранятся в регистре накопления ТоварыНаСкладах. Остаток = приход − расход по каждому складу для каждой номенклатуры (и характеристики, если используется характеристический учёт).

В CommerceML остатки передаются в файле предложений (offers.xml) в теге Остатки:

<Предложение>
  <Ид>товар-guid#характеристика-guid</Ид>
  <Остатки>
    <Остаток>
      <ИдСклада>склад-guid</ИдСклада>
      <Количество>15</Количество>
    </Остаток>
    <Остаток>
      <ИдСклада>склад2-guid</ИдСклада>
      <Количество>3</Количество>
    </Остаток>
  </Остатки>
</Предложение>

На стороне Битрикс каждый склад из УТ должен быть создан в Торговый каталог → Склады с совпадающим XML_ID (GUID склада из УТ). Битрикс суммирует остатки по всем складам или показывает по каждому отдельно — в зависимости от настроек.

Фильтрация складов: что передавать на сайт

Часто в УТ есть несколько складов: основной склад, производственный, брак, транзитный. На сайт нужен только остаток со склада отгрузки — не суммарный по всем.

В настройках узла обмена УТ выбираем конкретные склады для выгрузки. Это критически важно: если передать суммарный остаток включая «Брак» или «В пути» — покупатель увидит наличие товара, которого фактически нет в состоянии отгрузки.

Свободный остаток vs. физический. В УТ можно настроить выгрузку свободного остатка (физический минус зарезервированный). Это правильная практика: если 10 штук зарезервировано под существующие заказы, сайт должен показывать реально доступное количество.

Настройка в узле обмена: параметр «Остатки: учитывать резервы» — включить.

Мультискладовый учёт на сайте

Если у магазина несколько складов (разные города, несколько точек выдачи), покупатель может хотеть видеть наличие в каждом конкретном городе. Это требует передачи остатков в разрезе складов — не суммарного.

В Битрикс для этого нужно:

  1. Создать склады в торговом каталоге (соответствие GUID)
  2. В компоненте каталога включить отображение остатков по складам
  3. При оформлении заказа — предлагать самовывоз с того склада, где есть товар

Для сайта с несколькими точками выдачи остатки по складам — ключевая функциональность. XML-обмен поддерживает эту структуру нативно.

Частота обновления и техническая реализация

Тип бизнеса Рекомендуемая частота Комментарий
Большой интернет-магазин (FMCG) 5–10 мин Высокая частота изменений
Средний магазин 15–30 мин Баланс нагрузка/актуальность
Магазин с медленным оборотом 60 мин Мебель, крупная техника
Оптовый склад 30 мин + ручная синхронизация при бронировании

Реализация частого обмена остатками — через cron на сервере, а не через «автообмен» в интерфейсе Битрикс (он менее надёжен). Скрипт запуска обмена:

# Запуск обмена остатками каждые 15 минут
*/15 * * * * www-data /usr/bin/php /var/www/html/bitrix/modules/main/tools/cron_events.php

Или через прямой вызов обработчика обмена с параметром type=sale (только заказы) или type=catalog (каталог + остатки).

Резервирование при оформлении заказа

Когда покупатель оформляет заказ на Битрикс, нужно решить: резервировать ли товар немедленно (до оплаты) или только после подтверждения оплаты?

  • Немедленное резервирование: товар резервируется в Битрикс при создании заказа (статус «ожидает оплаты»). При передаче заказа в УТ — создаётся резерв в регистре ТоварыВРезервеНаСкладах. Следующий обмен остатками вернёт актуальный свободный остаток уже с учётом резерва.

  • Резервирование после оплаты: риск продать «воздух» при параллельных заказах, но меньше «висячих» резервов от незавершённых оплат.

Для большинства B2C магазинов — немедленное резервирование при создании заказа с автоматической отменой резерва через N часов, если оплата не поступила.

Кейс: склад с высокой оборачиваемостью

Оптово-розничный склад электроники: 15 тыс. позиций, пиковые дни — до 200 заказов в час. Проблема: при обмене остатками раз в 30 минут успевали оформиться 5–10 заказов на один товар, которого оставалось 1–2 штуки.

Решение: двухуровневая система. Обмен остатками — каждые 5 минут. Дополнительно — прямой запрос к HTTP-сервису УТ при добавлении товара в корзину: получаем актуальный остаток в реальном времени и показываем пользователю. Полный обмен (с номенклатурой) — раз в ночь.

HTTP-сервис УТ возвращает JSON с остатком за 150–300 мс. На высоконагруженных страницах результат кешируется на 60 секунд.