Интеграция SMS-сервиса SMS.ru с Битрикс24
Типичная ситуация: компания отправляет транзакционные SMS через SMS.ru — подтверждения заказов, коды авторизации, уведомления о доставке. CRM работает в Битрикс24. Менеджеры переключаются между двумя системами, маркетинговые рассылки живут отдельно от воронки продаж, а статусы доставки никто не отслеживает. Интеграция сводит всё в одно окно: SMS уходят прямо из CRM, статусы возвращаются, аналитика собирается в одном месте.
Регистрация провайдера через messageservice.sender.add
Битрикс24 работает с SMS-провайдерами через модуль messageservice. Чтобы SMS.ru появился в списке доступных сервисов, его нужно зарегистрировать через REST API:
messageservice.sender.add({
CODE: "smsru",
TYPE: "SMS",
HANDLER: "https://your-domain.com/handler/smsru.php"
})
HANDLER — URL скрипта, который принимает запросы от Б24 и пересылает их в API SMS.ru. Битрикс24 отправляет POST-запрос с полями: номер получателя (message_to), текст (message_body), идентификатор сообщения (message_id).
Обработчик на вашей стороне:
- Получает данные от Б24.
- Формирует запрос к SMS.ru API:
https://sms.ru/sms/send?api_id=YOUR_KEY&to=NUMBER&msg=TEXT&json=1. - Получает ответ от SMS.ru с
sms_idи статусом. - Сохраняет маппинг
message_id(Б24) →sms_id(SMS.ru) для последующего отслеживания доставки. - Возвращает Битрикс24 подтверждение приёма.
После регистрации провайдер доступен в роботах CRM, в ручной отправке SMS из карточки и в CRM-маркетинге.
Webhook для статусов доставки
SMS.ru поддерживает callback-уведомления о смене статуса сообщения. В личном кабинете SMS.ru задаётся URL обработчика, который будет получать POST-запросы при изменении статуса:
- 100 — сообщение в очереди
- 101 — передано оператору
- 102 — доставлено
- 103 — не доставлено (просрочено)
- 104 — не доставлено (ошибка)
Обработчик принимает sms_id и status, находит связанный message_id из Битрикс24 и вызывает метод обновления статуса в Б24. Без этого механизма все сообщения в CRM будут показывать статус «Отправлено», даже если реально абонент недоступен.
На практике callback от SMS.ru приходит с задержкой от нескольких секунд до минуты. Для критичных сценариев (подтверждение оплаты) дополнительно настраиваем поллинг через метод sms.ru/sms/status с проверкой по sms_id раз в 30 секунд.
Транзакционные и маркетинговые SMS
Разделение принципиально важно — и технически, и юридически.
Транзакционные SMS — уведомления, привязанные к действию клиента: подтверждение заказа, смена статуса доставки, напоминание о записи. Отправляются автоматически через роботов CRM:
- Сделка переходит на стадию «Подтверждён» → робот «Отправить SMS» → текст с номером заказа и суммой
- Запись в смарт-процессе «Запись на приём» перешла на стадию «За день до» → SMS-напоминание
Для транзакционных SMS в SMS.ru используется стандартный маршрут отправки. Имя отправителя (alphanumeric sender ID) регистрируется в личном кабинете SMS.ru и подтверждается документами.
Маркетинговые SMS — рассылки по базе: акции, спецпредложения, реактивация. Отправляются через CRM-маркетинг Б24: сегмент контактов → создание SMS-рассылки → выбор провайдера SMS.ru → отправка.
Ключевые отличия:
| Параметр | Транзакционные | Маркетинговые |
|---|---|---|
| Инициатор | Действие клиента (заказ, запись) | Компания (рассылка по базе) |
| Согласие | Подразумевается при оформлении заказа | Обязательное opt-in |
| Стоимость | Стандартный тариф SMS.ru | Тариф SMS.ru (тот же, но объём выше) |
| Настройка в Б24 | Роботы CRM / бизнес-процессы | Раздел CRM-маркетинг |
| Ограничение | Нет лимита по количеству | SMS.ru может ограничивать частоту |
Автоматизация через роботы CRM
Роботы — основной инструмент автоматической отправки. Настраиваем типовые сценарии:
Воронка продаж:
- Новый лид → SMS «Спасибо за обращение, менеджер свяжется в течение 15 минут»
- Сделка на стадии «Ожидает оплату» → SMS со ссылкой на оплату (подстановка
#DEAL_UF_PAYMENT_LINK#) - Сделка закрыта успешно → SMS с благодарностью и просьбой оставить отзыв
Автоматизация вне воронки:
- Пропущенный звонок (триггер) → SMS «Мы заметили ваш звонок, перезвоним»
- День рождения контакта (бизнес-процесс по расписанию) → поздравительное SMS
В тексте робота доступны поля CRM: #CONTACT_NAME#, #DEAL_TITLE#, #DEAL_OPPORTUNITY#, пользовательские поля через #DEAL_UF_XXX#.
Оптимизация расходов
SMS.ru тарифицирует по количеству сегментов (1 SMS = 70 символов кириллицей или 160 латиницей). Способы снизить затраты:
- Короткие шаблоны. Каждый лишний символ после 70 — это второй сегмент. Шаблон «Ваш заказ №{ORDER} на сумму {SUM} руб. подтверждён. Доставка {DATE}.» — 80 символов, два сегмента. Убираем «руб.», сокращаем — 68 символов, один сегмент. Экономия 50% на каждом сообщении.
-
Фильтрация дублей. Робот может сработать дважды при откате стадии. Добавляем условие в робот: отправлять только если пользовательское поле
UF_CRM_SMS_SENTпустое, после отправки записываем дату. -
Проверка номеров. SMS.ru возвращает ошибку при отправке на невалидный номер, но тарифицирует попытку. Перед массовой рассылкой прогоняем базу через
sms.ru/sms/cost— метод возвращает стоимость без отправки, позволяя выявить невалидные номера.
Сроки внедрения
| Масштаб | Что входит | Срок |
|---|---|---|
| Базовый | Подключение SMS.ru, один робот, ручная отправка из карточки | 3–5 дней |
| Стандартный | 3–5 роботов по стадиям, callback статусов, шаблоны с подстановкой | 1 неделя |
| Расширенный | Массовые рассылки через CRM-маркетинг, поллинг статусов, фильтрация дублей, аналитика | 1.5–2 недели |
Что настраиваем
- Регистрация SMS.ru как провайдера через
messageservice.sender.add - Обработчик запросов Б24 → API SMS.ru
- Callback-обработчик для статусов доставки
- Alphanumeric sender ID (имя отправителя)
- Роботы CRM для транзакционных SMS по стадиям воронки
- Массовые рассылки через CRM-маркетинг
- Шаблоны SMS с подстановкой полей CRM
- Проверка и нормализация телефонных номеров в базе
- Тестирование: отправка из карточки, срабатывание робота, получение callback, массовая рассылка на тестовый сегмент







