Mobile SDK Update for an Online Payment System

The existing functionality enhancement often helps improve product metrics dramatically. This case study tells about our cooperation with a large international provider of online payment services. We updated the old mobile SDK and developed a new version from scratch.

Task

The Customer contacted us in 2021. Its product is a global payment system that supports over 100 payment methods. In connection with the launch of a new business line, the company decided to create a new version of the existing mobile SDK (Software Development Kit). We had to fix several key bugs that affected the success of payments, as well as "teach" the SDK to adjust the app view when connecting new partners. We had to develop new functionality, update the color palette and add new UI elements.

Difficulties

At the start of the project, we faced several problems:

  • strongly coupled code of the current mSDK, no unified architecture;
  • old technology stack, no code automation;
  • 90% of the code was written in Java, which significantly slowed down new functionality development due to the language peculiarities;
  • no unified approach to layout;
  • multiple code duplication (no correct hierarchy of class inheritance).
9 months
of development
by 2.5 times
the number of successful payments increased

Process

We divided the work to be done into several stages and proceeded to carry out each stage one by one.

Stage 1. Updating the build tools:

  • Android Gradle plugin update;
  • implementation of product flavors;
  • setting up build variants for testing;
  • Fastlane implementation.

Stage 2. Code coupling reduction, optimization, refactoring:

  • division into submodules (Core + UI);
  • encapsulation of logic into separate methods/classes;
  • XML layout optimization;
  • bug fixes + associated refactoring;
  • removal of duplicate code (generalization of functionality).

Stage 3. Development of a new library using an up-to-date stack:

  • creating a core module based on Kotlin Multiplatform;
  • architecture: MVVM + MVI;
  • 100% of code is Kotlin-based;
  • UI on Jetpack Compose (Android) and SwiftUI (iOS);
  • implementation of analytics collection;
  • automation (Unit/UI testing).

Result

We completed all tasks on time and the сustomer was completely satisfied with the quality of our work. The number of successful payments made through the mobile SDK increased from 30% to 75%.

Technology

Kotlin Multiplatform, Swift, SwiftUI, MVVM, MVI, Jetpack Compose, Ktor

Other cases
Warehouse Management System (WMS) Audit in 10 Days
Mobile App for Yugoria Insurance Company
Magnit Delivery: IT System Quality Assurance
Designing a Mobile App for ViewEvo
Warehouse Management System (WMS) Audit in 10 Days
Mobile App for Yugoria Insurance Company
Magnit Delivery: IT System Quality Assurance
Designing a Mobile App for ViewEvo
Send us your request
Upload a file up to 10MB
File selected
Required extensions: .txt, .doc, .docx, .odt, .xls, .xlsx, .pdf, .jpg, .jpeg, .png

Maximum file size: 10 MB
Tell us your idea
Upload a file up to 10MB
File selected
Required extensions: .txt, .doc, .docx, .odt, .xls, .xlsx, .pdf, .jpg, .jpeg, .png

Maximum file size: 10 MB
Оставьте свои контакты
SimbirSoft регулярно расширяет штат сотрудников.
Отправьте контакты, чтобы обсудить условия сотрудничества.
Написать нам
Расскажите, какие задачи сейчас на вашем проекте.
Проконсультируем и предложим подходящих специалистов, а также сориентируем по ставкам на аутстаф.
Middle
TeamLead
Senior
TechLead
Upload a file up to 10MB
File selected
Required extensions: .txt, .doc, .docx, .odt, .xls, .xlsx, .pdf, .jpg, .jpeg, .png

Maximum file size: 10 MB
Экспресс-консультация
Заполните все поля формы.
Эксперт свяжется с вами в течение рабочего дня.
File selected
Можно прикрепить один файл в формате: txt, doc, docx, odt, xls, xlsx, pdf, jpg, jpeg, png.

Размер файла до 10 Мб.
Порекомендуйте друга — получите вознаграждение!
Прикрепить резюме, до 10Мб
Файл выбран
Можно прикрепить один файл в формате: txt, doc, docx, odt, xls, xlsx, pdf, jpg, jpeg, png.

Размер файла до 10 Мб.