Эффективные скрипты для SMS-напоминаний о покупках — это заранее подготовленные текстовые шаблоны, которые автоматически отправляются клиентам в ключевые моменты воронки: брошенная корзина, предстоящая оплата, подтверждение заказа или повторная продажа. Они сокращают рутину, повышают конверсию за счёт персонализации и тайминга, а также снижают долю забытых заказов до 30% при правильной настройке триггеров.
Что такое скрипты SMS-напоминаний и зачем они нужны
Скрипт SMS-напоминания — это стандартизированный текст сообщения с переменными полями (имя клиента, номер заказа, сумма, ссылка на оплату), который подставляется в рассылку программно. В отличие от ручной рассылки, скрипты гарантируют единый тон-оф-वойс, соблюдение лимитов символов и мгновенную доставку в заданное окно времени.
Основные функции: восстановление брошенных корзин, напоминание об оплате по счёту, подтверждение доставки, стимулирование повторной покупки (реактивация), информирование об изменении статуса заказа. Каждый сценарий требует своей логики триггеров и формулировок.
Основные типы скриптов для напоминаний о покупках
Выбор типа скрипта зависит от этапа воронки и цели коммуникации. Ниже — сравнительная таблица с ключевыми параметрами.
| Тип скрипта | Триггер | Цель | Окно отправки | Ключевой CTA |
|---|---|---|---|---|
| Брошенная корзина | Нет активности 30–60 мин после добавления товара | Вернуть клиента к оформлению | 1 час, 24 часа | «Завершить заказ» |
| Ожидание оплаты | Создан заказ, статус «Ожидает оплаты» | Снизить долю неоплаченных заказов | 15 мин, 3 часа, 24 часа | «Оплатить сейчас» |
| Подтверждение заказа | Успешная оплата | Снизить тревожность, дать трек-номер | Мгновенно | «Отследить отправку» |
| Реактивация / повторная продажа | Нет заказов 30–90 дней | Вернуть «спящего» клиента | Раз в 7–14 дней | «Вернуться с бонусом» |
| Изменение статуса доставки | Переход в «В пути», «На пункте выдачи» | Информирование, снижение выкупа | По событию | «Получить заказ» |
Структура эффективного SMS-скрипта: обязательные элементы
Любой высококонвертный скрипт состоит из пяти блоков. Пропуск любого снижает CTR и повышает риск жалоб на спам.
- Идентификатор бренда — имя отправителя (Alpha-name) или название в начале текста. Клиент должен узнать отправителя за 0,5 секунды.
- Контекст / триггер — почему вы пишете прямо сейчас: «Вы оставили товар в корзине», «Ваш заказ №12345 ожидает оплаты».
- Ценность для клиента — что он получает: «Скидка 10% действует ещё 2 часа», «Товар зарезервирован за вами».
- Чёткий призыв к действию (CTA) — одна ссылка, один глагол: «Оплатить», «Завершить», «Посмотреть». Не давайте выбор.
- Опт-аут / контакт поддержки — короткая ссылка на отписку или номер поддержки. Обязательно по ФЗ-152 и GDPR.
Длина сообщения: 160 символов (один сегмент) для базового тарифа. Если нужен длинный текст — используйте конкатенацию (до 3 сегментов), но учитывайте, что стоимость растёт пропорционально.
Готовые шаблоны под разные сценарии
Ниже — проверенные шаблоны с переменными. Замените значения в фигурных скобках на данные из CRM/экосистемы.
1. Брошенная корзина — 1 час
{{Brand}}: Вы оставили {{item_name}} в корзине. Зарезервировали за вами на 24ч. Завершить заказ: {{deep_link}}. Вопросы? 8-800-XXX-XX-XX. Стоп: {{unsub_link}}2. Брошенная корзина — 24 часа (последнее напоминание)
{{Brand}}: Последний шанс — {{item_name}} ждёт вас. Скидка 5% по промо {{promo_code}} до 23:59. Оформить: {{deep_link}}. Отказ: {{unsub_link}}3. Ожидание оплаты — 15 минут
{{Brand}}: Заказ №{{order_id}} на {{amount}} руб. создан. Оплатите за 15 мин, чтобы зафиксировать цену: {{pay_link}}. Поддержка: {{support_phone}}4. Ожидание оплаты — 3 часа (с альтернативой)
{{Brand}}: Заказ №{{order_id}} всё ещё не оплачен. Можно оплатить картой, СБП или при получении: {{pay_link}}. Нужна помощь? Пишите в чат: {{chat_link}}5. Подтверждение заказа + трек-номер
{{Brand}}: Заказ №{{order_id}} оплачен! Трек-номер: {{track_number}}. Отследить: {{track_link}}. Доставка {{delivery_date}}. Спасибо за покупку!6. Реактивация (нет заказов 60 дней)
{{Brand}}: Скучаем! Вернитесь с бонусом 300 руб. на любую покупку до {{date}}. Активировать: {{deep_link}}. Не хотите получать? {{unsub_link}}Ошибки, которые снижают конверсию, и как их избежать
- Отправка без сегментации. Массовая рассылка «Всем подряд» даёт CTR <1%. Решение: сегментируйте по RFM, LTV, категории товаров, источнику прихода.
- Игнорирование тайм-зон. SMS в 03:00 местного времени раздражает и вызывает жалобы. Решение: используйте
send_at_local_timeв API шлюза. - Длинные ссылки без UTM. Клиент не видит, куда ведёт ссылка, и не кликает. Решение: короткие брендированные домены (brand.link/abc) + обязательные UTM-метки для аналитики.
- Отсутствие A/B-тестов. Один вариант текста на месяц — упущенная выгода. Решение: тестируйте заголовок, CTA, тайминг, наличие скидки. Минимум 2 варианта на сегмент.
- Нарушение частоты. Более 2–3 SMS в неделю от одного бренда — путь в чёрный список. Решение: frequency capping на уровне платформы рассылок.
Автоматизация и интеграция: от API до триггерных цепочек
Ручная загрузка баз в личный кабинет шлюза не масштабируется. Современный стек подразумевает event-driven архитектуру: событие в CRM/экосистеме → вебхук / Kafka / RabbitMQ → воркер формирует payload → HTTP-запрос к SMS-шлюзу.
Пример payload для шлюза (JSON)
{ "to": "+79XXXXXXXXX", "from": "BrandName", "text": "{{Brand}}: Заказ №{{order_id}} на {{amount}} руб. ожидает оплаты. Ссылка: {{pay_link}}. Отказ: {{unsub_link}}", "tag": "payment_reminder_15min", "validity_period": 28800, "callback_url": "https://crm.example.com/sms/status"
}Ключевые параметры: validity_period (срок жизни сообщения в секундах, обычно 8 часов для напоминаний), tag для аналитики по сценариям, callback_url для получения DLR (delivery receipts).
Триггерные цепочки (drip-кампании)
Пример цепочки для брошенной корзины:
- T+1 час: мягкое напоминание с резервом товара.
- T+24 часа: последнее напоминание + маленький промокод.
- T+72 часа: предложение похожих товаров (cross-sell) или сбор обратной связи «Почему не купили?».
Каждое следующее сообщение отправляется только если предыдущее не привело к целевому событию (оплата). Реализуется через флаги в профиле пользователя или событие purchase_completed, которое останавливает цепочку.
Заключение: чек-лист перед запуском
Перед стартом любой кампании пройдитесь по пунктам:
- Альфа-имя зарегистрировано и согласовано с операторами.
- Все шаблоны прошли модерацию у шлюза (нет запрещённых слов, длина ≤ лимита сегментов).
- Настроены UTM-метки и короткие ссылки для каждого сценария.
- Включен frequency capping (макс. 1 SMS/день, 3 SMS/неделя на номер).
- Реализован opt-out: ссылка на отписку работает, база стоп-листа синхронизируется в реальном времени.
- Настроены алерты на delivery rate < 90% и spam complaint rate > 0.1%.
- Проведен A/B-тест на 10% аудитории, победитель раскачан на 100%.
Системный подход к скриптам — это не про «тексты», а про инженерную воронку, где каждое сообщение имеет измеримую роль в юнит-экономике. Начните с двух сценариев (брошенная корзина + ожидание оплаты), замерьте инкрементальную выручку, затем масштабируйте.
FAQ: частые вопросы про SMS-скрипты для напоминаний
Какая оптимальная длина SMS-скрипта?
Один сегмент — 160 символов (кириллица 70). Старайтесь укладываться в один сегмент. Если нужно больше — используйте конкатенацию до 3 сегментов, но стоимость вырастет в 3 раза.
Нужно ли согласовывать каждый шаблон с операторами связи?
В России альфа-имя согласовывается один раз. Тексты шаблонов модерация проходит на стороне SMS-шлюза (обычно автоматически за 5–15 минут). Запрещённые темы: азартные игры, микрозаймы, фарма без лицензии, политические призывы.
Как измерить инкрементальную выручку от SMS-напоминаний?
Запустите holdout-тест: 5–10% аудитории не получают SMS (control group). Сравните выручку за 7 дней между тестовой и контрольной группами. Разница — чистый прирост от канала.
Можно ли использовать эмодзи в SMS-скриптах?
Технически да (UCS-2 кодировка), но длина сегмента падает до 70 символов. Эмодзи уместны в реактивации и поздравлениях, в транзакционных напоминаниях (оплата, доставка) лучше обойтись текстом.
Как обрабатывать возвраты и отмены заказов в цепочках?
Событие order_cancelled или refund_initiated должно мгновенно останавливать все активные цепочки по данному order_id и, при необходимости, триггерить отдельный информационный SMS.
Какие шлюзы поддерживают отправку по тайм-зоне получателя?
Почти все крупные российские провайдеры (MTS Exolve, Beeline Cloud, MegaFon, SMS.ru, Unisender, ePochta) имеют параметр send_at_local_time или timezone в API. Проверьте документацию вашего шлюза.
Как избежать попадания в спам-фильтры операторов?
Соблюдайте частоту, используйте зарегистрированное альфа-имя, всегда добавляйте рабочий opt-out, не используйте CAPS LOCK во всём тексте, избегайте слов «бесплатно», «гарантия», «кредит» без контекста. Регулярно мониторьте delivery rate и жалобы через колбэки шлюза.