Кейс

Интеграция SMS-шлюза с несколькими провайдерами

SaaS / Authentication

Confidential 2 weeks PHP Laravel Redis PostgreSQL REST APIs

Задача

Мультитенантной SaaS-платформе требовались SMS OTP-аутентификация и транзакционные уведомления в 12 странах. Единственный используемый SMS-провайдер имел 6–8% неуспешных доставок на ряде целевых рынков, что приводило к неудачным входам и обращениям в поддержку от пользователей, не получивших коды.

Решение

Мы создали слой абстракции над тремя SMS-провайдерами: основным и двумя резервными для отдельных стран. Логика маршрутизации выбирает оптимального провайдера для направления по историческим показателям доставки. Неудачная отправка автоматически повторяется через следующего провайдера; подтверждения доставки хранятся в PostgreSQL и доступны в админ-дашборде.

Результаты

Успешная доставка OTP выросла с 92% до 99,1% за две недели после включения резервирования между провайдерами. Ежемесячные SMS-расходы снизились на 18% благодаря маршрутизации к более дешёвым провайдерам на рынках, где основной работал стабильно. Обращения в поддержку о недоставленных OTP почти исчезли.

Delivery rate 92% → 99.1% 18% cost reduction 3 providers integrated with failover