Редакция
22.01.2016
Статьи

Формат номера телефона для SMS-рассылки

Перед SMS-рассылкой номера телефонов нужно привести к единому формату. Это снижает число ошибок при загрузке базы, помогает убрать дубли и упрощает работу API, CRM и учетных систем.

Для обмена номером между системами обычно используют международный формат E.164: код страны и национальный номер без пробелов, скобок и дефисов. В международном номере может быть не более 15 цифр.

Как выглядит международный формат E.164

В пользовательском интерфейсе номер часто пишут со знаком «+». Например: +79991234567. При хранении и передаче через API некоторые системы используют тот же номер без знака «+»: 79991234567.

Главное правило - не смешивать в одной базе разные варианты записи. Если часть контактов сохранена как +79991234567, часть как 8 999 123-45-67, а часть как 79991234567, один и тот же получатель может оказаться в базе несколько раз.

Формат российского номера телефона

Код страны России и Казахстана - +7. Российский мобильный номер в международной записи обычно состоит из кода страны и 10 цифр национального номера: +7 999 123-45-67.

Внутри России пользователи часто вводят номер через 8, например 8 999 123-45-67. Для базы его нужно нормализовать к выбранному международному виду. Не применяйте это преобразование к иностранным номерам: сначала определите страну и правила ее нумерации.

Как привести базу к единому виду

  1. Сохраните исходный номер в отдельном поле, если он нужен для истории клиента.
  2. Удалите из рабочего значения пробелы, скобки, дефисы и другие разделители.
  3. Определите страну номера и добавьте или сохраните код страны.
  4. Для российских номеров приведите запись через 8 к формату с кодом 7.
  5. Проверьте длину номера по правилам страны.
  6. Сравните нормализированные значения и удалите дубли.

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

Примеры преобразования

Исходная записьНормализованный вариант
8 (999) 123-45-6779991234567
+7 999 123 45 6779991234567
7-999-123-45-6779991234567

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

Типовые ошибки в базе телефонов

  • номер записан с добавочным, комментарием или именем клиента в одной ячейке;
  • в базе есть пробелы, неразрывные пробелы, скобки и дефисы;
  • номер сохранен как число и таблица убрала важные символы или изменила формат;
  • один контакт присутствует в вариантах через 8, 7 и +7;
  • для иностранного номера автоматически применили российское правило;
  • в рассылку попали не номера телефонов, а произвольный текст или пустые значения.

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

Подготовка номеров для SMS-рассылки

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

После подготовки базы можно запускать сообщения через TargetSMS, подключить SMS API или использовать готовую интеграцию.

Частые вопросы

Сколько цифр в российском мобильном номере?

В международной записи с кодом страны +7 - 11 цифр. После кода страны остается 10 цифр национального номера.

Нужно ли хранить знак «+»?

Это зависит от требований системы. В интерфейсе знак «+» делает международный формат понятнее, а в техническом поле часто хранят только цифры. Важно выбрать один вариант и соблюдать его во всех интеграциях.

Можно ли определить оператора по номеру?

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

Подготовить базу и запустить SMS-рассылку