# SMS-уведомления о заказах, платежах и счетах

> Отправляйте по SMS подтверждения заказов, статусы доставки, чеки и уведомления о счетах в 228 направлений. Один вызов API на событие, подписанные вебхуки доставки, без KYC.

Для каждого события во внутренней системе отправьте запрос `POST /v1/messages`. Добавьте тег `campaign`, например `shipping`, собственную ссылку в `reference`, например номер заказа, и отметьте сообщение как транзакционное, чтобы ограничения по времени отправки не задерживали его. События доставки приходят на вебхук с той же ссылкой, поэтому система заказов может зафиксировать, что клиент уведомлён.

## Рекомендуемые настройки

- Тип трафика: Транзакционный
- Вызов API: `POST /v1/messages` для каждого события или `/batch` для ночной пакетной отправки
- Отслеживание: `reference` передаётся в ответах и вебхуках
- Группировка: Тег `campaign` для каждого типа уведомлений
- Длина: Один или два сегмента; при необходимости ссылка на ваш домен
- История: Отчёты по сообщениям хранятся 90 дней

## Шаги

1. Зафиксируйте событие: Когда система помечает заказ как отправленный или платёж как полученный, вызовите API. Используйте номер заказа в поле <code>reference</code> и в ключе идемпотентности.
2. Составьте шаблон: Бренд, факт и следующий шаг: «ACME: заказ 4821 отправлен. Отследить: acme.com/t/8fK2». По возможности уложитесь в один сегмент GSM-7.
3. Запишите результат: Сохраните рядом с заказом статус <code>delivered</code> или <code>failed</code>. Причина «неизвестный номер» указывает на неверные контактные данные клиента.
4. Анализируйте по типам: Тег кампании группирует уведомления о доставке, чеки и предупреждения в отчётах, поэтому снижение показателей отдельного типа сразу заметно.

## Каким должно быть транзакционное сообщение

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

Ставьте ссылки на собственный домен. Публичные сокращатели ссылок чаще попадают под фильтры и скрывают знакомый клиенту бренд.

## Надёжная отправка на вашей стороне

Формируйте `Idempotency-Key` из события, например `order-4821-shipped`. Если задача завершится с ошибкой и будет запущена повторно, API вернёт первоначальный ответ, а клиент получит одно сообщение. Повторяйте ответы 429 и 5xx с увеличивающейся задержкой; остальные ошибки 4xx требуют исправления запроса.

Для ночных задач, например напоминаний об оплате, пакетный метод принимает до 1000 сообщений в одном запросе API сообщений и возвращает причину отклонения каждой строки. Один неверный номер не останавливает весь пакет.

## Пример сообщения

От ACME: "ACME: заказ 4821 отправлен и прибывает в четверг. Отследите его: acme.com/t/8fK2"

```bash
curl https://api.smsmeteor.com/v1/messages \
  -H "Authorization: Bearer $SMSMETEOR_KEY" \
  -H "Idempotency-Key: order-4821-shipped" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+447700900123",
    "from": "ACME",
    "text": "ACME: заказ 4821 отправлен и прибудет в четверг. Отследить: acme.com/t/8fK2",
    "window": { "quiet_hours": "bypass" },
    "campaign": "shipping",
    "reference": "order-4821"
  }'
```

## Вопросы

**Требуется ли согласие на получение уведомлений о транзакциях?** Они вытекают из отношений с клиентом: подтверждение заказа или предупреждение о безопасности не требуют маркетингового согласия. Добавление рекламного контента меняет ситуацию, поэтому держите уведомления исключительно информационными.

**Можно ли отправлять уведомления ночью?** Да, если для window.quiet_hours задан режим bypass. Используйте его только для сообщений, которых ожидает клиент. Отправка рекламы в таком режиме нарушает правила допустимого использования.

**Как узнать, получил ли клиент сообщение?** Зарегистрируйте вебхук: события message.delivered и message.failed содержат вашу ссылку, а при ошибке — причину от оператора связи. Если направление поддерживает только подтверждение отправки, окончательным положительным статусом будет sent; это указано на странице направления.

**Что, если одно и то же событие будет обработано дважды?** Отправьте тот же ключ идемпотентности, и API вернет исходный ответ без повторной отправки в течение 24 часов.

**Можно ли отправлять уведомления в разные страны из одной интеграции?** Да. Направление определяется по номеру, стоимость рассчитывается по его опубликованному тарифу, а имя отправителя проверяется по местным правилам. Код интеграции остаётся тем же.

**Есть ли минимальный объём?** Нет. Одно уведомление стоит одно сообщение по опубликованному тарифу. Нет никакой ежемесячной платы и никакого договора.



---
Источник: https://smsmeteor.com/ru/use-cases/transactional-notifications (HTML). Создано SMSMeteor на основе тех же данных, что и страница. Сводка всего сайта: https://smsmeteor.com/ru/llms.txt
