Зачем подключать Telegram OTP
Telegram OTP подходит продуктам, пользователи которых регулярно работают с Telegram и готовы получать там сервисные сообщения. Один и тот же канал можно использовать для подтверждения регистрации, входа, восстановления доступа или отдельного действия.
Cascade закрывает техническую часть доставки:
- создаёт шестизначный код;
- отправляет его через Telegram;
- ограничивает срок действия пятью минутами;
- принимает серверную проверку кода;
- возвращает результат API-запроса;
- сохраняет историю операций в кабинете.
Это сервис исходящей доставки на номер вашего пользователя. Cascade не арендует временные номера и не принимает чужие коды от сторонних платформ.
Telegram OTP для разных продуктов
| Тип продукта | Пример применения |
|---|---|
| SaaS | Вход, приглашение сотрудника, восстановление доступа |
| Интернет-магазин | Подтверждение клиента или важного изменения заказа |
| Fintech | Дополнительное подтверждение действия с учётом уровня риска |
| CRM | Проверка номера клиента или сотрудника |
| Мобильное приложение | Регистрация и вход по номеру |
| Внутренний сервис | Подтверждение доступа к административному действию |
OTP не заменяет полноценную модель безопасности. Для критичных операций добавьте проверку сессии, лимиты, антифрод и при необходимости второй фактор.
Интеграция через единый API
Telegram не требует отдельной клиентской интеграции. Ваш бэкенд вызывает общий endpoint Cascade и явно передаёт канал:
curl -X POST "https://cascade.kz/api/otp/send" \
-H "Authorization: Bearer $CASCADE_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"phone":"77001234567","purpose":"signup","channel":"telegram"}'
После ввода кода пользователем сервер вызывает:
curl -X POST "https://cascade.kz/api/otp/verify" \
-H "Authorization: Bearer $CASCADE_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"phone":"77001234567","code":"482910","purpose":"signup"}'
Номер и purpose при проверке должны совпадать с отправкой. Завершайте действие только после success: true.
Стоимость и тестирование
Успешная Telegram-доставка стоит 3 кредита. Абонентской платы нет. При создании аккаунта начисляется 1000 стартовых кредитов для тестового сценария.
В пилоте измеряйте:
- успешную доставку;
- время до ввода кода;
- долю успешного verify;
- число повторных отправок;
- ошибки недоступного канала;
- кредиты на одного подтверждённого пользователя.
Объём запросов сам по себе не показывает качество: бизнесу важен завершённый вход, регистрация или операция.
Telegram и WhatsApp в одном продукте
Оба канала имеют одинаковую стоимость в Cascade и используют одну серверную интеграцию. Их можно включать в зависимости от настроек компании и доступности для аудитории.
Не следует утверждать, что один мессенджер всегда доставляет лучше другого. Проведите пилот на собственных пользователях и сравните фактические delivery, verify и resend.
Полное сравнение опубликовано на странице WhatsApp, Telegram или SMS.
Ограничения
- Telegram должен быть доступен конкретному получателю.
- Внешний канал может временно задержать или не доставить сообщение.
- Bearer-токен разрешено хранить только на сервере.
- Send и verify требуют независимых rate limits.
- Resend должен иметь cooldown.
- Публичный SMS-провайдер пока не запущен, поэтому нельзя обещать SMS fallback.
Запуск
Создайте аккаунт, сохраните API-ключ в серверных секретах и проведите пилот на тестовых номерах с согласия получателей. До реального трафика проверьте успешный код, неверный код, истечение TTL, resend и поведение интерфейса при 422 и 429.