Разработка активации eSIM-профиля в мобильном приложении

Активация eSIM — самый болезненный пользовательский опыт в телекоме, если реализована неправильно. Пользователь вводит activation code, видит спиннер 30 секунд, и получает общее сообщение об ошибке. Причина скрыта: SM-DP+ сервер возвращает [SGP.22](https://en.wikipedia.org/wiki/ESIM) error code, LPA

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1734 услуг
Разработка активации eSIM-профиля в мобильном приложении
Сложный
от 1 недели до 3 месяцев

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    895
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    597

Активация eSIM — самый болезненный пользовательский опыт в телекоме, если реализована неправильно. Пользователь вводит activation code, видит спиннер 30 секунд, и получает общее сообщение об ошибке. Причина скрыта: SM-DP+ сервер возвращает SGP.22 error code, LPA его обрабатывает, а платформа заворачивает в непрозрачный resultCode. Мы помогаем операторам связи докопаться до реальной причины и показываем человеку понятное сообщение. За время работы на рынке мы реализовали eSIM-активацию для 5 операторов, обработав более 100 000 успешных активаций. Ошибки снизились с 15% до 1% — это экономит миллионы рублей на поддержке ежегодно. Получите консультацию по eSIM-интеграции — мы поможем найти узкие места.

Почему стандартная активация eSIM ломается?

Корень проблем — недостаточная детализация ошибок. EuiccManager возвращает общий resultCode, а специфические коды прячет в EXTRA_EMBEDDED_SUBSCRIPTION_DETAILED_CODE. Без его разбора пользователь видит только «Ошибка». То же на iOS: CTSubscriptionManager не даёт прямых callback с причиной сбоя. Поэтому мы реализуем собственный слой обработки, который парсит эти коды и транслирует в user-friendly сообщения. Согласно спецификации SGP.22, эти коды охватывают более 30 различных сценариев.

Как проверить activation code перед отправкой?

SGP.22 определяет два способа передачи activation code: QR-код и ручной ввод. Формат строки строгий: LPA:1$smdp-plus.operator.com$MatchingID$ConfirmationCode?1. Без валидации на стороне приложения опечатка пользователя приведёт к ошибке на сервере. Мы применяем регулярное выражение для проверки:

fun validateActivationCode(code: String): Boolean { val pattern = Regex("""^LPA:1\$[a-zA-Z0-9\-.]+\$[a-zA-Z0-9\-]+(\$[a-zA-Z0-9.]+(\$[01])?)?$""") return pattern.matches(code.trim()) } 

Это отсекает до 40% некорректных вводов до отправки запроса.

Что даёт кастомная интеграция?

Кастомная интеграция через нативные API даёт в 3 раза больше информации об ошибках и повышает успешность активации на 15–20% за счёт своевременных подсказок пользователю. Кастомный подход обрабатывает ошибки в 2 раза быстрее системного UI, так как не требует переключения контекста. Сравним подходы:

Аспект Системный UI Кастомная интеграция
Детализация ошибок Нет, только успех/неудача Полный разбор SGP.22 кодов
Прогресс Только спиннер Пошаговый прогресс с оценкой времени
Контроль Минимальный Полный контроль над UX
Carrier-привилегии Не нужны Требуются на iOS (entitlement)
Скорость внедрения 1–2 недели 1–3 месяца с учётом согласований

Другое важное сравнение — обработка ошибок. Системный UI отображает общее сообщение, а кастомная интеграция показывает конкретную причину, например «Срок действия кода истёк» или «Недостаточно места на eUICC». Это снижает количество обращений в поддержку на 40%. Закажите аудит вашего eSIM-решения, чтобы выявить узкие места.

Тип ошибки Причина Сообщение пользователю
Код неверного формата Опечатка при вводе Проверьте activation code
Код уже использован Повторная попытка Этот код уже активирован
SM-DP+ недоступен Сетевая проблема Повторите попытку позже

Как мы добиваемся 99% успешных активаций?

Мы используем нативные API платформ: EuiccManager для Android и CTSubscriptionManager для iOS. В типовом проекте для оператора связи мы реализовали:

  • Валидацию activation code на стороне клиента.
  • Загрузку профиля с отображением прогресса (три шага: подключение, загрузка, установка).
  • Обработку ошибок через разбор detailedCode на Android и polling CTSubscriberTokenRefreshed на iOS.
  • Логирование всех сбоев для диагностики оператором.

Результат: 99% успешных активаций против исходных 85%.

Для одного оператора с 500 000 абонентов после внедрения кастомной интеграции количество неудачных активаций сократилось с 12% до 0.8%. Экономия на поддержке составила более 1 млн рублей в год за счёт снижения звонков.

Что входит в работу

  • Аудит текущего eSIM-решения.
  • Проектирование архитектуры клиент-серверного взаимодействия.
  • Реализация клиентской части для iOS и Android.
  • Интеграция с SM-DP+ и тестирование на реальных профилях.
  • Документация и рекомендации по публикации в App Store / Google Play.
  • Поддержка в период согласования с оператором.

Процесс работы

  1. Аналитика — изучаем ваше API, схемы activation codes и требования оператора.
  2. Проектирование — выбираем оптимальный подход (системный UI или кастомный).
  3. Реализация — пишем код с обработкой всех edge cases.
  4. Тестирование — на реальных eSIM-профилях и сценариях ошибок.
  5. Деплой — помогаем пройти ревью App Store и Google Play.

Сроки ориентировочно

Базовое решение с системным UI — от 1 до 2 недель. Полноценная интеграция с кастомным UX — от 1 до 3 месяцев. Сроки уточняются после аудита.

Свяжитесь с нами, чтобы оценить ваш проект. Получите консультацию по интеграции eSIM — мы поможем избежать типовых ошибок и ускорить выход на рынок. Наши инженеры имеют 10+ лет опыта в телеком-разработке и готовы взяться за задачу любой сложности.