Неактуальные остатки — прямая угроза выручке. Если в 1С:УТ осталось 5 единиц, а на сайте отображается 0, клиент уходит к конкуренту. Если на сайте 5, а реально 0 — вы получаете возврат, порчу репутации и ручную отмену. Для среднего интернет-магазина потери от таких расхождений достигают 200 000 ₽ в месяц. Мы настраиваем выгрузку остатков под ключ с гарантией точности до минуты. Оценим ваш проект за один день — свяжитесь с нами.
Проблемы, которые решаем
Разрыв между складом и сайтом. Из-за задержек обмена или неверной фильтрации остаток на сайте расходится с реальным. Устраняем настройкой узла обмена и cron-задач.
Сложность мультискладового учёта. При нескольких складах (основной, транзитный, брак) нужно выгружать только отгрузочные остатки. Иначе покупатель видит товар, который физически не может получить.
Резервирование без дублей. Когда два заказа оформляются параллельно на последнюю единицу, без резерва вы продадите «воздух». Внедряем немедленное резервирование с автоматическим снятием при неоплате.
Как остатки хранятся в УТ и передаются в Битрикс
В 1С:УТ 11 остатки хранятся в регистре накопления ТоварыНаСкладах. Остаток = приход − расход по каждому складу для каждой номенклатуры (и характеристики, если используется характеристический учёт).
В CommerceML 2.0 остатки передаются в файле предложений (offers.xml) в теге <Остатки>:
<Предложение>
<Ид>товар-guid#характеристика-guid</Ид>
<Остатки>
<Остаток>
<ИдСклада>склад-guid</ИдСклада>
<Количество>15</Количество>
</Остаток>
<Остаток>
<ИдСклада>склад2-guid</ИдСклада>
<Количество>3</Количество>
</Остаток>
</Остатки>
</Предложение>
На стороне Битрикс каждый склад из УТ должен быть создан в разделе Торговый каталог → Склады с совпадающим XML_ID (GUID склада из УТ). Битрикс суммирует остатки по всем складам или показывает по каждому отдельно — в зависимости от настроек.
Почему важна фильтрация складов?
Часто в УТ есть несколько складов: основной склад, производственный, брак, транзитный. На сайт нужен только остаток со склада отгрузки — не суммарный по всем.
В настройках узла обмена УТ выбираем конкретные склады для выгрузки. Это критически важно: если передать суммарный остаток включая «Брак» или «В пути» — покупатель увидит наличие товара, которого фактически нет в состоянии отгрузки.
Свободный остаток vs. физический. В УТ можно настроить выгрузку свободного остатка (физический минус зарезервированный). Это правильная практика: если 10 штук зарезервировано под существующие заказы, сайт должен показывать реально доступное количество. Настройка в узле обмена: параметр «Остатки: учитывать резервы» — включить.
Как настроить мультискладовой учёт на сайте?
Если у магазина несколько складов (разные города, несколько точек выдачи), покупатель может хотеть видеть наличие в каждом конкретном городе. Это требует передачи остатков в разрезе складов — не суммарного.
В Битрикс для этого нужно:
- Создать склады в торговом каталоге (соответствие GUID)
- В компоненте каталога включить отображение остатков по складам
- При оформлении заказа — предлагать самовывоз с того склада, где есть товар
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 секунд. Экономия времени администратора — до 40 часов в месяц, которые раньше уходили на ручную выверку.
Что входит в настройку
- Аудит текущего обмена (ошибки, несоответствия складов)
- Настройка узла обмена в 1С:УТ (фильтр складов, учёт резервов)
- Создание складов в Битрикс с корректным GUID
- Настройка cron-задач с подобранной частотой
- Разработка HTTP-сервиса реального времени (опционально)
- Тестирование на 10–20 тестовых заказах
- Документация и обучение вашего администратора
Пошаговый план настройки
- Анализ текущей схемы — выявляем все склады в УТ и их GUID.
- Фильтрация — исключаем неотгрузочные склады.
- Настройка узла обмена — включаем учёт резервов.
- Создание складов в Битрикс — привязка по XML_ID.
- Выбор частоты — от 5 до 60 минут в зависимости от бизнеса.
- Реализация cron — ставим задачу на сервере.
- Опционально: HTTP-сервис — для запросов в реальном времени.
- Тестирование — проверяем на тестовых заказах.
Сравнение подходов
| Подход | Время от изменения до отображения | Точность |
|---|---|---|
| Стандартный обмен (каждые 30 мин) | до 30 минут | Высокая (с задержкой) |
| Частый обмен (каждые 5 мин) | до 5 минут | Высокая |
| HTTP-сервис в реальном времени | 150–300 мс | Абсолютная |
HTTP-сервис в реальном времени обрабатывает запрос в 600 раз быстрее стандартного обмена (300 мс против 30 минут). Ручная выгрузка остатков через Excel занимает в среднем 2–3 часа в день — мы автоматизируем этот процесс, сокращая время до нуля.
Мы работаем с Битрикс и 1С более 5 лет, выполнили свыше 50 интеграций. Гарантируем, что после настройки остатки на вашем сайте будут актуальны с точностью до минуты. Получите консультацию — свяжитесь с нами, и мы оценим ваш проект за один день.







