Авторизация
Забыли пароль?
Сброс пароля
Вернуться к авторизации

Банковское приложение

04 декабря ‘21

Заказчик: под NDA
Страница кейса/результат: https://surf.ru/cases/bank_app/

Мобильное приложение для крупного банка с иностранным капиталом

Агентство-исполнитель кейса

Surf

Мы найдем лучшее решение вашей задачи

1. Вводная задача от заказчика, проблематика, цели

Разработать мобильное приложение и помочь банку уйти от коробочного решения

У банка уже было мобильное приложение для физических лиц. Но оно было реализовано на основе коробочного продукта. Такое решение не позволяло кастомизировать приложение под потребности банка и очень ограничивало в его развитии и добавлении новых возможностей.

Банк решил создать собственное приложение, чтобы в дальнейшем отказаться от «коробки» и получить более гибкий инструмент для развития.

Банку нужно было:

  • Создать с нуля собственное мобильное приложение и интегрировать его с существующим бэкендом. Его первая версия не должна была уступать по функциональным возможностям коробочному решению.
  • Уйти от коробочного решения и получить гибкий инструмент для развития приложения.
  • Актуализировать дизайн, сделать его более гибким и интуитивно понятным.
  • Внедрить пользовательскую аналитику, чтобы лучше понимать потребности клиентов и им соответствовать.
  • Реализовать для клиентов новые возможности: интеграцию с СБП, ГИС ГМП, Know Your Customer (KYC), онлайн-заявку на кредит и кредитную карту.
  • Повысить безопасность приложения.

2. Описание реализации кейса и творческого пути по поиску оптимального решения

Проектирование и дизайн

Нам достался UI-дизайн от другого подрядчика. Он был согласован с европейским офисом компании и соответствовал брендбуку — единой концепции дизайна приложений банка по всему миру.

Мы предложили банку свой концепт. Его высоко оценила команда клиента в России, но в работу он не пошел: в первом релизе решили не тратить ресурсы на переработку дизайна. Сфокусировались на разработке приложения, чтобы выполнить основную задачу: уйти от коробочного решения.

Дизайн такого сложного продукта — это непрерывный процесс, который идет бок о бок с разработкой и все время совершенствуется. Так он постепенно превращается из простого набора экранов в сложную дизайн-систему.

За два года разработки мы развили и улучшили исходный дизайн, проработали узкие места и неучтенные юзкейсы. Например, на главном экране, кроме продуктов банка, добавили баннеры с индивидуальными предложениями для клиента: банк мог разместить туда предложение по кредиту или вкладу с выгодными условиями.

Аналитика — важнейшая часть разработки банковского приложения

Бизнес-аналитики проверили возможности бэкенда и убедились, что дизайн можно реализовать.

Это важный этап работы: команды дизайнеров, разработчиков и бизнес-аналитиков плотно взаимодействуют, чтобы учесть все нюансы и технические возможности. Не всегда можно воплотить в реальность красивую картинку — иногда нужно дорабатывать API или переделывать дизайн под возможности бэкенда.

Мы составили ТЗ, в котором описали нюансы поведения приложения, не очевидные из дизайна и документации к API.

Разработка приложения и интеграция с банковскими системами

Мы разработали нативные приложения на Swift для iOS и Kotlin для Android. Архитектура стандартная: SurfMVP для iOS, MVI и MVP для Android. Используем ее во всех проектах Surf.

Наши подходы хорошо задокументированы: это позволяет легко подключать к проекту новых разработчиков или забрать проект инхаус.

В процессе разработки много времени и сил потратили на интеграцию с бэкендом. Собственного бэка у банка не было, они работали с подрядчиком. Кроме того, взаимодействие между нами и бэком происходило через еще одного подрядчика: он выступал агрегатором, в который стягивалась вся информация с бэка и из внутренних систем банка (например, из справочников), адаптировал и передавал наши запросы друг к другу. Такая схема работы потребовала от команды проекта много усилий на то, чтобы реализовать приложение, которое работало с учетом всей специфики бэкенда и внутренних банковских систем.

Тестирование — обязательная часть проверки надежности кода и безопасности приложения

Надежность кода и безопасность важны для всех приложений, но для банковских — особенно. Чтобы обеспечить высокое качество продукта, мы проводим тщательное тестирование.

Код приложений для банка покрыт тестами на 100%. Мы достигли такого показателя благодаря использованию автотестов: без них тестирование занимало бы слишком много времени.

На проекте 1850 проверок, полное тестирование занимает 36 часов. 65% — автоматизированы, остальные 35% проверяются вручную из-за использования сторонних сервисов.

Пользовательская аналитика — эффективный инструмент анализа поведения пользователей

Для пользовательской аналитики мы применили AppMetrica и Firebase. Чтобы не потеряться в количестве событий и данных, начали с трекинга основных событий: входа в приложение, открытия экранов. Проанализировали старт и завершение ключевых воронок: заявки на кредит, выпуска карты, перевода денег через СБП. Для удобной сегментации аудитории собирали обезличенные данные о клиенте: из какого он города и какие продукты у него открыты.

Это стандартный набор аналитики для банка, который позволяет не утонуть в потоке лишней информации. Если в какой-то воронке выявляются проблемы, можно прицельно добавлять в нее события и разбираться с проблемой глубже.

Новые возможности для клиентов банка

Начали разработку с функциональности, которая повторяла коробочный продукт: платежи, просмотр открытых банковских продуктов и т.д. Но по ходу разработки функциональность расширилась. Добавили возможность полного или частичного погашения кредита, интегрировали приложение с системой лояльности Visa Loyalty Program.

Мы реализовали в приложении:

  • Интеграцию с системой ГИС ГМП (Государственная информационная система о государственных и муниципальных платежах). В ней пользователь может узнать о своих задолженностях перед бюджетом, а через приложение банка — быстро и удобно оплатить их.
  • Систему быстрых платежей (СБП). СБП позволяет мгновенно переводить деньги по номеру телефона клиенту любого банка.
  • Систему Know Your Customer (KYC). KYC позволяет идентифицировать личность контрагента, прежде чем проводить финансовую операцию.
  • Возможность выпустить цифровую карту вместо пластиковой.
  • Удобная онлайн-заявка на кредит и кредитную карту
  • В приложении реализовали сервис для подачи онлайн-заявки на получение кредита и кредитной карты. Для пользователя этот процесс выглядит просто и понятно. Он заполняет анкету и отправляет в банк. Через некоторое время получает ответ. Если заявка одобрена — то с конкретными условиями: сроком, суммой и ставкой кредита. Пользователь может сразу согласиться с этими условиями или попробовать их изменить: увеличить срок, уменьшить размер платежа. После этого он получает окончательный ответ от банка, оформляет кредит и получает деньги на счет или выбирает, в каком офисе заберет кредитную карту.

Анкету можно сохранить в черновик и редактировать. После отправки в банк заявка появляется в списке «Мои заявки», в нем можно посмотреть актуальный статус.

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

  • бэкенд банка;
  • справочники, из которых подтягивается информация в анкету;
  • система, в которой хранятся данные о клиентах;
  • система Dadata — сервис обработки базы контактов, где проверяется корректность адреса клиента и информация о его работодателе;
  • отдел рисков, который анализирует информацию и рассчитывает процентную ставку.

Есть много «подводных камней», которые нужно учесть в оформлении заявки. Например, формат передачи данных: как мы будем оформлять дату, чтобы системы банка правильно ее обработали — дд.мм.гг или дд\мм\гг? Какие данные в анкете клиента можно подтягивать из справочника, а какие он должен заполнить самостоятельно? Как уведомить клиента о том, что статус его заявки изменился или о том, что обработка заявки потребует больше времени, чем планировалось? Кроме того, после заполнения пользователем анкеты бэкенду банка уходит json-файл, содержащий около 200 строк с данными пользователя. Его нужно корректно составить, передать и обработать.

Все эти моменты мы учли и реализовали в логике мобильного приложения.

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

3. Результаты сотрудничества

В приложении клиентам доступны все базовые банковские операции: можно открывать и закрывать счета, делать платежи, оформить заявку на кредит и т.д. Также банк внедрил в нем оплату через СБП и интеграцию с ГИС ГМП.

При помощи пользовательской аналитики банк может анализировать ключевые воронки: заявки на кредит, выпуск карты, перевод денег через СБП — и вносить изменения, если видит, что на каком-то этапе у клиентов возникают сложности. Кроме того, в новом приложении банку доступна сводная обезличенная информация о клиенте: из какого он города и какие продукты у него открыты.

4. Заключение

У банка появились нативные мобильные приложения для iOS и Android с современным дизайном и удобным интерфейсом. Теперь он не зависит от ограничений коробочного продукта и может развивать приложение и подстраивать его под свои бизнес-процессы — а не наоборот.

Агентство-исполнитель кейса

Surf

Мы найдем лучшее решение вашей задачи

Ruward использует технологию "cookie" – сохранение на компьютере пользователя небольших текстовых файлов. Также мы используем на сайте сервис Яндекс.Метрика. Эта информация не позволит идентифицировать вас, однако может помочь нам улучшить работу нашего сайта. Если вы не согласны, чтобы мы использовали данные технологии, вы должны соответствующим образом установить настройки вашего браузера или не использовать наш сайт.

Согласен