Письмо прошло проверку на одном тестовом профиле, но часть клиентов получила пустой товарный блок или обращение «Здравствуйте, null». У одних нет имени, у других отсутствует история, у третьих модель не нашла допустимых товаров. Отсутствие данных оказалось обычной рабочей ситуацией, для которой не предусмотрели содержание.

Fallback, или запасной вариант, — заранее подготовленное поведение при невозможности использовать основную персонализацию. Это может быть другой блок, нейтральная формулировка, уменьшенное число карточек или отказ от сообщения. Выбор зависит от того, какая информация отсутствует и какую задачу решает письмо.

Разделите причины пустого результата

Нет истории покупок, сервис рекомендаций недоступен и все товары исключены из-за несовместимости — разные случаи. В первом можно использовать допустимую общую подборку. Во втором важно ограничить время ожидания. В третьем нельзя вернуть исключённые товары под видом запасной выдачи.

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

Подготовьте запасной текст отдельно от товаров

Если имя отсутствует или не подходит для обращения, используйте нейтральное приветствие. Не подставляйте email, номер телефона или внутренний идентификатор. Если персонализация опирается на неизвестную категорию, фразу «Подобрали для вашей кухни» необходимо заменить целиком, а не только удалить слово «кухни».

В Liquid фильтр default имеет собственные правила для пустых значений и логического false; параметр allow_false меняет обработку последнего. Этот пример показывает, почему запасное значение нужно проверять в конкретном шаблонизаторе. Ноль, отсутствие значения и явный отказ не должны случайно становиться одинаковыми.

Не применяйте текстовый default к разрешениям на контакт. Отсутствующее согласие нельзя превратить в разрешение только потому, что программист выбрал удобное значение по умолчанию.

Составьте дерево запасного контента

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

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

Если найдено два товара вместо четырёх, вёрстка должна корректно показать два. Не дублируйте их для заполнения сетки и не оставляйте пустые ячейки с кнопками без адресов. При отсутствии картинки можно использовать проверенный вариант оформления, если товар остаётся однозначно понятен.

Проверьте целостность сообщения

Заголовок, вводный текст, карточки и кнопка должны соответствовать одной ветке. Письмо «Аксессуары к вашему устройству» с общей подборкой техники в запасном блоке создаёт ложное обещание, даже если все ссылки работают.

Условный пример: у клиента неизвестна модель принтера. Вместо «Подходящие картриджи» письмо предлагает определить модель и перейти к подбору. Здесь меняются и заголовок, и действие. Подстановка самых продаваемых картриджей была бы технически заполненным, но содержательно неверным решением.

Как тестировать до отправки

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

Просмотрите каждую ветку целиком в письме и на посадочной странице. Тест одного успешного профиля подтверждает только основной маршрут. Отдельно проверьте, что повтор запроса не отправляет письмо дважды.

Как контролировать после запуска

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

Сравнивать эффективность веток напрямую осторожно: люди без истории отличаются от людей с богатым профилем. Для оценки альтернативного fallback назначайте варианты случайно внутри одной подходящей ситуации. Главная цель — сообщение, которое остаётся полезным и честным даже тогда, когда персональных данных оказалось меньше ожидаемого.

Источники

Shopify. Liquid filters: default. Документация Liquid. Параметр allow_false. Проверено 22.09.2026.