Чтобы отправлять клиентам сообщения, где подставляются имя, номер заказа или сумма, необязательно покупать CRM. Достаточно прямого SMPP-соединения и файла с переменными. Эта статья — инструкция для микро-, малого и среднего бизнеса Беларуси: как за час настроить подстановку параметров через SMPP и не переплачивать за лишние системы. Вы сможете сделать это самостоятельно, без программистов и дорогих сервисов.
Как работает подстановка параметров в SMS через SMPP?
SMPP — это протокол, по которому ваш софт или скрипт напрямую общается с SMS-центром оператора. Вместо того чтобы записывать каждое сообщение вручную, вы передаёте шаблон текста с «метками» — например {name} или {order_id}. Отдельно прикладываете список значений: для каждого номера — своя строка с данными. Сервер на ходу заменяет метки на реальные цифры и слова.
Никакой CRM не нужно. Данные можно брать из обычного CSV-файла, Google Sheets или простого скрипта на PHP/Python. Для малого бизнеса это означает: сделали заказ → выгрузили строки из учётной системы → отправили SMS с именем клиента и составом заказа.
Пример: шаблон «{first_name}, ваш заказ №{order_id} готов к выдаче». Для Ивана и заказа 1234 получается «Иван, ваш заказ №1234 готов к выдаче». Для Ольги и заказа 5678 — «Ольга, ваш заказ №5678 готов к выдаче». Всё.
Что нужно настроить на стороне SMPP, чтобы подстановка работала?
Для персонализации через SMPP потребуется три вещи: соединение, правильная кодировка и контроль доставки.
1. Получить SMPP-доступ и уложиться в таймаут
Вы заключаете договор с поставщиком SMPP-услуг (агрегатором). Вам выдаются логин, пароль и IP-адрес сервера. При подключении сервер даёт 10 секунд, чтобы отправить команду BIND_TRANSMITTER или BIND_TRANSCEIVER. Если опоздать — соединение разрывают. Это стандартное требование, оно указано в документации к SMPP-серверу.
2. Выбрать кодировку: кириллица требует UCS-2
Если ваши SMS содержат белорусские или русские буквы, нужно указывать кодировку UCS-2 (data_coding=8). Латинские цифры и символы укладываются в GSM 7-bit (data_coding=0), что даёт до 160 знаков на одно SMS. Кириллица в UCS-2 занимает 70 знаков на сегмент, поэтому длинное сообщение может разбиться на несколько — это влияет на стоимость. Детально разница разобрана в статье UCS-2 или GSM 7-bit: что выгоднее для SMS через SMPP. Если ошибиться с кодировкой, вместо «Прывітанне» клиент увидит «?????????».
3. Настроить обработку DLR, чтобы не платить за мёртвые номера
DLR (Delivery Report) — это статус доставки. Вы получаете отчёт: доставлено, не доставлено, просрочено, отклонено. Без анализа DLR вы будете платить за SMS на несуществующие или неактивные номера. Как читать DLR и экономить — в материале SMPP-статусы: как читать DLR и не тратить деньги на мёртвые номера.
Пример настройки для микробизнеса в Беларуси
Допустим, вы — мастер по ремонту обуви в Витебске. Ведёте учёт заказов в Excel. Клиент сдал пару, вы записали его имя «Сяргей» и номер заказа «В-45». Хотите отправить SMS: «Сяргей, заказ №В-45 готов. Забрать до 20:00». Без CRM это делается так:
- Экспортируете из Excel два столбца: телефон, имя, номер заказа, например в CSV.
- Пишете скрипт (или используете готовую утилиту), который читает CSV и шлёт каждую строку через SMPP с текстом
{name}, заказ №{order} готов. - Указываете кодировку UCS-2, так как имена и город — кириллица.
- После отправки проверяете DLR: если статус «DELIVRD» — всё ок, если «UNDELIV» — номер недоступен, не платите за повтор.
Всё это без дорогих CRM-систем, только SMPP-доступ и пара строк кода. Для тех, кто хочет автоматизировать цепочки (напоминание, благодарность, повтор), есть пошаговая настройка триггерных SMS-цепочек без CRM для сервисного бизнеса.
Типичные ошибки при подстановке параметров через SMPP
- Неправильная кодировка. Кириллица в GSM 7-bit превращается в знаки вопроса. Проверяйте data_coding=8.
- Слишком длинные SMS. Одно кириллическое сообщение — 70 символов. Если текст больше, он режется на части, каждая оплачивается отдельно. Укладывайтесь в лимит или используйте латиницу.
- Игнорирование DLR. Вы платите за отправку, даже если номер мёртвый. Без анализа DLR бюджет утекает впустую.
- Пропуск таймаута BIND. 10 секунд на подключение — стандарт. Если ваш скрипт делает долгую инициализацию, соединение рвётся.
- Передача пустых значений. Если в CSV вместо имени стоит пустая ячейка, клиент получит «, ваш заказ...». Добавьте проверку на пустоту.
- Тестирование на живых номерах. Всегда сначала пробуйте на свой собственный номер, проверяйте подстановку и кодировку.
3 шага, которые можно сделать сегодня:
- Получить SMPP-логин у SMS-агрегатора. Если ещё нет — заключите договор и настройте соединение с учётом таймаута 10 секунд.
- Подготовить файл с параметрами (имя, номер заказа, сумма) в формате CSV. Убедитесь, что кодировка файла — UTF-8.
- Отправить тестовое SMS с подстановкой на свой мобильный. Проверьте отображение кириллицы и корректность переменных.
После этого можно внедрять персонализированные рассылки для напоминаний, подтверждений заказов и акций — без CRM и лишних затрат.



