Как проверить номер клиента перед SMS и не тратить бюджет впустую

Номер в базе выглядит рабочим, а сообщение уходит в никуда: клиент опечатался при регистрации, сменил оператора, номер уже год как отключён. Каждое такое SMS — это деньги, которых вы не вернёте, и искажённая статистика по кампании. Разберём, как перед отправкой отсеять мусор в базе: какие проверки имеет смысл делать, где их встроить в процесс и что потом делать с номерами, которые не прошли тест.
Почему номер в базе может быть невалидным
Список причин короче, чем кажется, и все они знакомы любому, кто собирал контакты через сайт или офлайн-точку.
- Опечатка при вводе: клиент набрал 9 цифр вместо 9, пропустил код оператора, дописал лишний символ.
- Формальный ввод: человек не хочет давать настоящий номер и вбивает 1111111 или набор из головы.
- Смена номера: клиент купил новый SIM, старый заблокировал, а в базе осталась старая запись.
- Дубли: один и тот же человек оставил заявку дважды с разницей в символах, и в CRM появились две карточки.
- Корпоративные номера: сотрудник уволился, номер перешёл другому или вообще отключён компанией.
Каждая из этих ситуаций даёт один и тот же результат: SMS уходит оператору, оператор его принимает и списывает деньги с вашего баланса. Ответ клиента вы не получаете, потому что получателя нет.
Что именно стоит проверять до отправки
Полноценная валидация — это не одна проверка, а несколько уровней. Чем раньше вы её встроите, тем меньше мусора попадёт в базу вообще.
| Уровень проверки | Что ловим | Где применять |
|---|---|---|
| Формат | Лишние символы, неверная длина, буквы в номере | При вводе на сайте, в форме заявки, в приложении |
| Маска оператора | Код оператора, которого нет в стране | В момент сохранения контакта |
| Подтверждение кодом | Номер чужой, введён наугад | При регистрации, оформлении заказа |
| Актуальность (HLR/ping) | Номер отключён или переведён на другого владельца | Перед массовой или триггерной рассылкой |
Первые два уровня дешёвые и делаются на стороне сайта или CRM обычной проверкой. Третий снижает отток бюджета сильнее всего, потому что реально подтверждает: за этим номером есть живой человек. Четвёртый нужен перед крупной кампанией — но стоит денег, поэтому запускают его не каждый день.
Как настроить проверку на практике: пошагово
Начинать логично с формы ввода. Простая валидация ловит опечатки ещё до того, как контакт попал в базу.
- Задайте маску ввода в форме: 9 цифр без «+375» в начале или 12 с кодом — как вам удобнее хранить.
- Отсеките невозможные сочетания: код оператора, которого нет; последовательности вида 000000000.
- Добавьте подтверждение по SMS-коду при первом оформлении заказа — так вы фиксируете, что номер принадлежит клиенту, а не выдуман.
- Раз в квартал прогоняйте базу через проверку актуальности, если сервис отправки такую услугу поддерживает.
- Заведите в CRM отдельное поле «статус номера»: подтверждён / не подтверждён / непроходимый.
Пятый пункт важнее, чем кажется. Когда у каждого контакта есть статус, вы перестаёте отправлять SMS «всей базе» и начинаете работать только с подтверждёнными номерами. По обзорам SMS-маркетинга, сегментация аудитории сама по себе даёт прирост конверсии в районе 15–30% — а отсев нерабочих номеров это первая и самая простая её ступень (SMSBlog).
Как встроить проверку в автоматические сценарии
Ручные проверки не масштабируются: 30 заказов в день ещё можно разобрать глазами, 300 — уже нет. Поэтому логика проверки должна стоять на входе данных в систему, а не на выходе.
Если SMS уходят из CRM по триггерам (подтверждение заказа, напоминание, статус доставки), настройте правило: сообщение не уходит, если номер не прошёл базовую проверку или отсутствует в поле «подтверждён». Настройки персонализации и триггеров удобнее делать один раз и по понятной схеме — об этом есть отдельный материал про персонализацию SMS для интернет-магазина. Цепочка статусов заказа — отдельный сценарий, её разбирают в гайде по SMS-цепочке статуса заказа.
Если заявок много и часть клиентов явно не читает SMS, стоит добавить резервный канал. Логику связки двух каналов описывает статья про каскад «SMS → мессенджер»: сообщение уходит в мессенджер, а SMS используется как подстраховка, когда основной канал недоступен. Так вы не тратите SMS-бюджет на тех, кто и так прочитает сообщение, и не теряете тех, кто мессенджеры игнорирует.
Что делать с номерами, которые не прошли проверку
Не спешите удалять их из базы. Часть номеров возвращается в строй: клиент мог быть в роуминге, сменить оператора с сохранением номера или подключить SIM заново.
- Переведите «непроходимые» контакты в отдельную папку и не отправляйте им рассылки.
- Раз в полгода перепроверяйте — постоянная часть вернётся.
- Если номер недоступен больше года и клиент давно ничего не покупал, контакт можно архивировать.
- По дублям — объедините карточки в CRM, оставив тот номер, который подтверждён кодом.
Такой подход экономит бюджет и, что важнее, выравнивает отчётность. Когда вы видите реальную доставляемость, а не «100% отправлено», решения по кампаниям становятся точнее.
Типичные ошибки
- Отправлять SMS «по всей базе», не разделяя подтверждённые и сомнительные номера.
- Доверять только формату: правильная длина не значит, что номер живой.
- Не сохранять статус номера в CRM — тогда каждая новая рассылка начинается с нуля.
- Пропускать этап подтверждения кодом при регистрации — это самый дешёвый способ отсеять выдуманные номера.
- Забывать о дублях: одному клиенту может уходить два одинаковых сообщения на разные карточки.
- Считать, что проверка нужна только перед массовыми рассылками — триггерные сообщения уходят чаще и стоят дороже в пересчёте на контакт.
Три шага, которые можно сделать на этой неделе:
- Добавьте маску и базовую валидацию в форму заявки на сайте.
- Введите поле «статус номера» в CRM и отметьте контакты, которые уже подтверждали телефон кодом.
- Настройте правило: триггерные SMS уходят только подтверждённым номерам, остальные попадают в отдельный список на перепроверку.


