Возможности Приложение Тарифы API Демо Блог Презентация Документация Запросить демо
← Все статьи

Свой SMS-шлюз: уведомления клиентам с SIM-карт ваших телефонов

Клиенты · 7 минут
Обложка: телефон с SIM-картами отправляет SMS клиентам по заданиям биллинга

Провайдер отправляет SMS каждый день: код для подписи договора, напоминание о долге, «монтажник приедет завтра с 10 до 13», ответ поддержки. Обычно всё это идёт через сервис рассылок — договор, подпись отправителя, плата за каждое сообщение. А в ящике стола у того же провайдера лежит пара старых Android-телефонов и SIM-карты с пакетами SMS, которые почти не тратятся. Мы сделали так, чтобы эти телефоны работали на биллинг.

Сколько стоит SMS у сервиса рассылок

Одна часть SMS у сервиса рассылок в октябре 2026 года стоит от 9 до 11 рублей в зависимости от оператора получателя: мы взяли медиану прайсов SMSC.ru, SMS Aero и SMS.ru.

Оператор получателяЦена одной части SMS
МТС9,69 ₽
Билайн9,80 ₽
МегаФон11,10 ₽
Т29,49 ₽
Другие9,25 ₽

Сообщение на кириллице длиннее 70 знаков — это уже две части. Напоминание о долге со ссылкой на оплату обходится в 20 рублей. Тысяча таких в месяц — двадцать тысяч.

Своя SIM-карта платит по своему тарифу: пакет SMS или фиксированная цена оператора. Договор с агрегатором не нужен, а сообщение клиенту приходит с обычного номера, на который можно ответить.

Телефон становится шлюзом

Android-телефон с одной или двумя SIM-картами превращается в SMS-шлюз биллинга. На него ставится приложение «СмИТ SMS Gateway», телефон кладётся на зарядку, подключается к интернету — и дальше живёт сам.

flowchart TB
  subgraph R1 [" "]
    direction LR
    B["Биллинг:<br/>уведомление, код,<br/>ответ поддержки"] --> S["SMS-сервер СмИТ:<br/>выбор SIM"]
    S --> T["Телефон на зарядке:<br/>SIM 1 · SIM 2"]
  end
  subgraph R2 [" "]
    direction LR
    O["Оператор связи"] --> C["Клиент"]
    C -.-> R["Отчёт о доставке:<br/>телефон → сервер → биллинг"]
  end
  R1 --> R2
  style R1 fill:none,stroke:none
  style R2 fill:none,stroke:none

Биллинг отдаёт сообщение нашему SMS-серверу. Сервер выбирает, с какой SIM его отправить, и передаёт задание телефону. Телефон отправляет SMS, сообщает «отправлено», а когда оператор пришлёт отчёт — «доставлено». Раз в минуту он рассказывает о себе: заряд, сигнал, тип сети, разрешения. Всё это возвращается в биллинг, подписанное ключом лицензии.

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

Приложение «СмИТ SMS Gateway»: экран подключения к биллингу
Подключение к биллингу: адрес, логин и пароль администратора

С какой SIM уйдёт сообщение

Телефонов может быть несколько, у каждого — одна или две SIM. Если у провайдера несколько компаний, каждую SIM закрепляют за своей: клиент получает SMS с номера той компании, у которой у него договор. Чужой организации сообщение не уйдёт никогда.

flowchart TD
  S["SMS клиенту<br/>организации N"] --> A{"Есть SIM организации<br/>на связи и с запасом<br/>по лимиту?"}
  A -- "да" --> M["Основная SIM<br/>или любая её SIM"]
  A -- "нет" --> F{"Можно с общих<br/>номеров?"}
  F -- "да" --> G["Общая SIM"]
  F -- "нет" --> W["Ждёт в очереди<br/>до 24 часов"]
  M -. "3 ошибки подряд" .-> N["Другая SIM<br/>той же организации"]

Три защиты от того, чтобы оператор заблокировал SIM за массовую рассылку: пауза между сообщениями (по умолчанию 3–6 секунд), суточный лимит на каждую SIM и переход на соседнюю SIM той же организации после трёх ошибок подряд. Первая же удачная отправка возвращает SIM в строй.

«Телефоны и номера»: телефон на связи, SIM с оператором, организацией, лимитом в день и балансом
«Телефоны и номера»: SIM, организация, сколько ушло сегодня из лимита и баланс

Деньги на SIM и пропавший телефон

SIM-карта без денег — самая частая причина, по которой «SMS перестали ходить». Поэтому телефон сам спрашивает у оператора баланс и остаток пакета USSD-запросом — по умолчанию раз в 6 часов. Ответ разбирает сервер: находит сумму и число SMS, отрезает рекламу, которую оператор дописывает к ответу. Коды для МТС, Билайна, МегаФона, Т2 и Yota уже заданы, свои можно поменять у каждой SIM.

В Telegram приходят три вида тревог:

«Отправлено» — ещё не «доставлено»

Это главное, что стоит понимать про любые SMS. «Отправлено» значит, что телефон передал сообщение оператору. «Доставлено» — что оператор прислал отчёт: SMS дошло до телефона клиента. Биллинг показывает оба статуса отдельно и никогда не откатывает статус назад.

sequenceDiagram
  participant B as Биллинг
  participant S as SMS-сервер
  participant T as Телефон
  B->>S: SMS клиенту
  Note over B: в очереди
  S->>T: задание
  T->>S: отправлено
  S-->>B: отправлено
  T->>S: доставлено (отчёт оператора)
  S-->>B: доставлено

Если телефон не смог отправить из-за временной беды — пропала сеть, сбой радиомодуля, режим полёта, — сервер сам повторит через 30 секунд, 2 и 10 минут, каждый раз заново выбирая SIM. Не вышло за три повтора — статус «ошибка» с причиной словами: «на SIM нет сети», «сбой радиомодуля или SIM». Постоянные ошибки (номер запрещён настройками SIM, короткий номер) не повторяются: повтор там ничего не изменит.

Тестовая отправка и «Последние SMS»: дата, получатель, текст и значок статуса доставки
Тестовая отправка и «Последние SMS»: две галочки — доставлено. Коды подтверждения в журнале скрыты

Какие сообщения идут через шлюз

Способ отправки выбирается по организации клиента одинаково везде, где биллинг шлёт SMS:

Рассылки по расписанию тоже умеют уходить SMS. С обычных номеров здесь особенно важны лимиты и паузы: оператор следит за массовыми отправками.

Клиент может ответить

У агрегатора SMS уходят от буквенного имени, и ответить на них нельзя. С обычной SIM — можно, и биллинг этим пользуется. Он читает входящие SMS на номерах шлюза и понимает короткие команды: «Баланс» — пришлёт баланс и тариф, «Оп» — обещанный платёж, «Да» — согласие с его условиями, «Блок» и «Вкл» — добровольная блокировка и её снятие. Всё остальное становится обращением в Поддержке, в ящике той организации, чей это номер.

«Входящие SMS от клиентов»: команды Баланс, Оп, Да, Блок, Вкл и настройки по номерам
Входящие SMS: какие команды выполнять — для всех номеров сразу или у каждого свой набор

Оповещения МЧС, сообщения оператора и рекламные рассылки с буквенных имён в журнал как SMS клиента не попадают. Ответ оператора о балансе SIM по-прежнему разбирается.

Что важно знать заранее

Как это работает в СмИТ Биллинге

Всё про SMS — в «Настройках» → «Сообщения» → «SMS». В поле «Чем отправлять» выбирают «Телефоны СмИТ — свои SIM-карты» или одного из агрегаторов. С модулем «Мультиорганизация» ниже есть таблица «Для организаций»: у каждой компании свой способ.

«Отправка SMS»: способ по умолчанию, скачать приложение, способы для организаций
«Отправка SMS»: способ по умолчанию и свой способ у каждой организации

Кнопка «Подключить телефон» показывает, где скачать приложение и какой адрес ввести, — телефон появляется в списке «Телефоны и номера» сам. Там же SIM назначают организации, задают лимит в день и смотрят баланс. На главной странице есть блок «SMS»: сколько отправлено, доставлено и ждёт за 30 дней и состояние каждой SIM. Тестовая отправка уходит по сохранённым настройкам, поэтому сначала сохраните, потом проверяйте.

Приложение «СмИТ SMS Gateway»: исходящие сообщения со статусами доставки
В приложении — исходящие и входящие сообщения этого телефона со статусами

Попробуйте шлюз сами

Чтобы понять, подойдёт ли вам свой SMS-шлюз, хватит одного телефона на Android с SIM-картой и десяти минут.

  1. Получите доступ к демо-стенду. Бот в Telegram попросит подтвердить номер телефона и пришлёт логин и пароль. Демо-стенд — полноценный биллинг с обезличенными данными.
  2. Скачайте приложение «СмИТ SMS Gateway» на телефон с SIM-картой и подключите его: адрес demo.billing.smit34.ru, логин и пароль из бота.
  3. Отправьте тестовое SMS. В биллинге откройте «Настройки» → «Сообщения» → «SMS» и нажмите «Тестовая отправка». Сообщение уйдёт с SIM вашего телефона, а статус «доставлено» вернётся в журнал «Последние SMS».

На демо-стенде тестовые SMS уходят только на номер из вашего профиля — тот, что вы подтвердили в боте. Приложение работает на Android 5 и новее.

Как это устроено внутриСборки, разборы сбоев и то, что меняется в биллинге каждый день, — в канале разработки.

Посмотреть на своих данных

Покажем платформу на живом стенде и разберём ваш случай. Или спросите ассистента прямо сейчас — он отвечает по документации и настройкам.

Поделиться ВКонтакте Telegram

Читайте также

6 мин
Клиенты

Договор подписывается на телефоне монтажника

Клиент расписывается пальцем на телефоне монтажника и подтверждает подпись кодом из СМС. Простая электронная подпись по 63-ФЗ, PDF со штампом в реестре и копия клиенту — в день подключения.

Читать →
8 мин
Клиенты

Рассылка по расписанию и с согласованием

Рассылку можно отправить в 11:00 без будильника, увидеть стоимость в SMS до отправки и дать согласовать маркетологу. Как устроены запланированные рассылки и кто может их отправить.

Читать →
8 мин
Клиенты

Написать клиенту первым: аккаунты Telegram, MAX и ВКонтакте в биллинге

Бот не может написать человеку первым, а SMS дорогая и непрочитанная. Как аккаунт компании в Telegram, MAX и ВКонтакте пишет должникам, новым заявкам и клиентам перед выездом монтажника — и не попадает в бан.

Читать →