
Редакция Romanov Lab · Опубликовано
Покупатель собрал инструмент, аккумулятор и зарядное устройство, но узнал об их несовместимости после доставки. Другой заказ получил статус «в наличии», хотя один компонент набора продавался отдельно и уже закончился. Обе ошибки возникают, когда каталог хранит красивое общее название, а правила состава остаются в голове менеджера.
Для сложного товара нужна проверяемая модель: из каких позиций он состоит, какие сочетания допустимы, что резервируется и что получит покупатель. Ниже рассматриваются именно связи между самостоятельными товарами. Выбор размера или цвета одной модели требует другой модели вариантов.
Разделите три способа продажи
- Готовый комплект. Коробка производителя со своим артикулом, неизменным составом и отдельным складским остатком. Магазин не собирает её из свободных компонентов.
- Набор магазина. Несколько самостоятельных позиций, продаваемых вместе. Доступность зависит от компонентов, которые могут одновременно продаваться по отдельности.
- Конфигурация покупателя. Состав меняется в допустимых границах: один блок питания, один корпус, от одного до нескольких модулей. После выбора получается конкретная спецификация.
Отдельно храните рекомендации «часто покупают вместе». Такая связь не доказывает ни обязательность аксессуара, ни совместимость. Если покупатель может использовать основной товар без дополнения, не представляйте допродажу как необходимую часть комплекта.
Одинаковое слово «набор» в CMS может означать разное поведение. Например, документация Shopify различает фиксированные и настраиваемые bundles. Перед выбором реализации проверьте именно списание, резервирование и состав заказа в своей платформе, а не только возможность вывести несколько карточек рядом.
Опишите совместимость как отдельное утверждение
Минимальная запись совместимости содержит идентификатор основного изделия, идентификатор компонента, допустимые исполнения, ограничения и источник проверки. Источником может быть инструкция производителя, техническая спецификация или заключение ответственного специалиста. Сохраняйте версию документа и причину изменения связи.
У связи должно быть как минимум три состояния: подтверждена, несовместима, не проверена. Отсутствие запрета не превращается в подтверждение. Для неопределённого сочетания интерфейс предлагает уточнить модель или запросить подбор, а не показывает зелёную галочку.
Для условного аккумуляторного инструмента одинакового напряжения недостаточно: в учебной модели каталога проверяются платформа крепления, серия и ограничения производителя. Конкретные технические правила для реального оборудования должен подтвердить поставщик. Опасно выводить совместимость из сходства названий, фотографий или результатов поиска.
В Schema.org существует свойство isAccessoryOrSparePartFor, связывающее аксессуар или запчасть с продуктом. Оно позволяет выразить связь в данных, но само по себе не проверяет инженерную совместимость. Сначала нужен подтверждённый реестр, затем его представление на сайте.
Учебный расчёт доступности набора
Пусть набор магазина включает один инструмент T, два аккумулятора B и одно зарядное устройство C. Свободно для продажи 7 инструментов, 9 аккумуляторов и 6 зарядных устройств. Если сборка ведётся из одного доступного склада и все компоненты учитываются поштучно, можно собрать минимум из значений 7, целая часть 9 / 2 и 6. Получается 4 набора.
Это расчёт доступного количества, а не создание ещё четырёх физических товаров на складе. Продажа двух аккумуляторов отдельно уменьшает возможное число наборов до трёх. Самостоятельный остаток «4 набора» без связи с компонентами быстро станет неверным.
При заказе двух наборов система должна зарезервировать 2 T, 4 B и 2 C как одну согласованную операцию. Если не хватило C, нельзя оставить скрытый резерв остальных частей. Операция либо подтверждается целиком, либо освобождает частичные резервы и возвращает понятную причину отказа.
Склады усложняют правило. Три компонента в разных городах ещё не означают один доступный набор. До публикации количества решите, допускается ли перемещение, кто его оплачивает и как оно влияет на обещание срока. Для первого запуска проще разрешить наборы только из одного склада, чем показывать недоказанную доступность по сумме всех остатков.
Сохраните состав, цену и версии в заказе
В карточке покажите число каждого компонента, его точное исполнение, включённые расходники и то, что докупается отдельно. Для конфигуратора полезна закреплённая сводка: обязательные позиции, выбранные дополнения и сумма. Несовместимый выбор объясняют рядом с полем: какой параметр не подходит и какие варианты доступны.
В заказ сохраняют снимок состава с идентификаторами компонентов и версией правил, действовавших при подтверждении. Изменение текущего набора в каталоге не должно переписывать уже принятый заказ. Название «Стартовый комплект» слишком расплывчато для сборщика и претензии покупателя.
Если набор стоит дешевле суммы частей, заранее определите распределение скидки по строкам и округление. Это нужно для учёта и обработки допустимого возврата. Условия частичного возврата, гарантий и замены согласуйте отдельно с ответственными за продажи и юридические вопросы; состав данных не определяет права покупателя.
Что делать, если компонент закончился
При повторной проверке перед оформлением остановите подтверждение устаревшей конфигурации. Сохраните выбранный состав, выделите проблемную позицию и предложите доступные варианты: дождаться поставки, выбрать подтверждённую замену или отказаться от набора. Замена меняет спецификацию и иногда цену, поэтому её нельзя выполнять молча.
После сбоя резервирования сверяйте состояние операции по её идентификатору. Повторный клик не должен резервировать второй такой же комплект. Если заказ уже принят, передайте его ответственному сотруднику как исключение; удаление товара из карточки не решает проблему обязательств перед покупателем.
Приёмочные сценарии
- Заказать набор и отдельный компонент одновременно при ограниченном остатке. Система подтверждает только обеспеченные операции.
- Попытаться подставить несовместимый компонент через запрос к серверу. Проверка не ограничивается интерфейсом.
- Изменить состав набора в каталоге и открыть старый заказ. Его спецификация остаётся прежней.
- Отменить неоплаченный резерв и убедиться, что вернулось точное количество каждой позиции.
- Сымитировать недоступность одного склада. Каталог не складывает его остаток с доступными без предусмотренного сценария перемещения.
- Пройти подбор с неполной моделью оборудования. Сайт честно показывает неопределённость, а не обещает совместимость.
Рабочий результат проектирования — реестр связей, формула доступности, снимок комплектации в заказе и воспроизводимые проверки конкурирующих покупок. Они полезнее длинного списка аксессуаров без ответственного за его достоверность.
Нужен план для вашего проекта? Напишите нам в Telegram или по электронной почте. Обсудим разработку, продвижение или поддержку сайта.


