Мобильное приложение
Trumia
Мобильное банковское приложение для частных клиентов на Flutter: онбординг с KYC, выпуск карт, платежи SEPA/SWIFT и аутентификация по passkeys.
- Период
- 2026
- Платформы
- iOS, Android
- Стек
- Flutter
- Dart
- BLoC / Cubit
- Sumsub
- Wallester
- Passkeys / WebAuthn
- Secure storage
- GitLab CI
- HashiCorp Vault
Обзор
Trumia — мой последний проект: мобильное банковское приложение для частных клиентов на Flutter, которое выпускается через несколько окружений — Dev, Stage, UAT и Production. Оно охватывает весь путь клиента: от комплаенс-онбординга и верификации личности до карт, переводов и истории операций.
Моя роль
Flutter-разработчик. Я реализовал онбординг, KYC-верификацию, аутентификацию по passkeys, управление картами и платежи, а также участвовал в построении инфраструктуры безопасности и релизов приложения.
Задача
Банковский онбординг должен соответствовать требованиям комплаенса, зависит от внешнего провайдера верификации личности и обязан работать корректно, даже если результат проверки приходит с задержкой или проверка завершается ошибкой. При этом мобильную часть нужно было развивать параллельно с бэкендом, который ещё находился в разработке.
Решение
Источником истины для статуса верификации служит вердикт, приходящий на бэкенд через вебхук, а не статус SDK на устройстве; опрос статуса ограничен, а для ошибок и затянувшегося ожидания предусмотрены явные сценарии восстановления. Sumsub SDK скрыт за интерфейсом, поэтому приложение могло развиваться с опережением бэкенда. Прогресс онбординга сохраняется в защищённом хранилище, а проверка на уровне приложения пускает пользователя внутрь только после успешной верификации.
Архитектура и реализация
- Изолировал Sumsub SDK за интерфейсом и выполнил его нативную настройку под iOS.
- Passkeys (WebAuthn) с подписью Android-приложения, Digital Asset Links и конфигурацией для каждого окружения.
- Участвовал в настройке подписи приложения, конфигурации RASP, GitLab CI/CD, управлении секретами в HashiCorp Vault и изоляции окружений.
- Подготовил Architecture Decision Records по безопасности и подписи релизов.
Ключевые функции
- Комплаенс-анкета из 9 шагов: резидентство, личный и финансовый профиль, налоговые декларации и декларация PEP
- Лист ожидания для стран, где сервис пока недоступен
- Возможность продолжить онбординг с места остановки
- Съёмка документов и проверка liveness
- Выпуск и редактирование карт, заморозка и разморозка, настройки карты и гибкие лимиты расходов
- Переводы SEPA, SWIFT и внутренние переводы с получателями, валидацией и подтверждением
- История операций, детали и статусы транзакций
- Беспарольный вход по passkeys