COMPANY
Advisory Session
Project Discovery
UX Audit
SERVICES
SOLUTIONS
Web Development
Mobile Development
Remote Teams
Quality Assurance
Consulting:
Industries:
Engineering:
Expertise:
SERVICES
Consulting:
Advisory Session
Project Discovery
UX Audit


Engineering:
Web Development
Mobile Development
Remote Teams
Quality Assurance
SOLUTIONS
Industries:
Healthcare & Medical
FinTech
Media & Entertainment
Telecommunications

Expertise:
UI/UX Design
DevOps
IoT
AI/ML
Content Oriented Web
Make great presentations, longreads, and landing pages, as well as photo stories, blogs, lookbooks, and all other kinds of content oriented projects.

Omnichannel banking platform for all mobile technologies

An innovative banking app that combines mobile payment and personalized banking products.

Technologies
Expertise
Partnership Period
Team Size
Location
Apache Subversion (SVN),Ionic3, Angular, Custom SOAP protocol (BML),Google Maps(AR), Highcharts.js, IONIC CLI wrapper, SCSS support for multi theming, CI & Jenkins
FinTech, Banking
2017 - ongoing
6
The United Kingdom
The Situation
The client wanted to revolutionize their approach and offer clients a highly customizable, modern mobile platform that facilitates online banking.
The Requirement
To create a banking application optimized for multiple channels (SMS, USSD, mobile web browser, smartphone, and tablet apps) offering customizable features to the bank’s clients.
Client’s Brief
Our client is a company that delivers omnichannel banking software and solutions to over 100 banks in 60 countries. They needed a multiplatform app that would provide various inventive banking features and increase profitability with an attractive Zero-Capex commercial model. One of the requirements was for the app to have a customizable interface that could be modified to meet each client’s needs.
The Challenge
The existing banking app had legacy code that was performing at low speed, and its UI was outdated. We had to find the right technology stack to migrate to and develop advanced app features that would work perfectly on a variety of mobile operating systems and devices. One of the greatest challenges was to create a customizable UI that lets third parties enable/disable features to their preferences. Our team had to follow FinTech software development regulations due to handling sensitive user information.
The Team
Project Manager
Roman
Lead Software Engineer
Eugene
Front-End Developer
Marina
Software Engineer
Serhii
Software Engineer
Anton
Software Engineer
Vasyl
What We Did
01
Built several PoCs using a new technology stack

Our engineers created several proofs of concept for the project and decided on the optimal solution.
Refactored the legacy code of the old app

We migrated the old code from AngularJS to Ionic before adopting a new approach and developing features from scratch.
02
03
Developed new banking features

The app was expanded with innovative functions: sending money between mobile phones,
offline banking viewing, accepting and redeeming a loan, etc.
Made a customizable interface

Thanks to the new interface, different banks can buy the app and customize the interface with their logos, designs, and features.
04
05
Optimized the software for multiple platforms

The software can be used across various mobile platforms: via iOS and Android mobile apps and via the mobile web browser.
Research
01
The goal of the research phase was to discover the best approach for the project and deliver a PoC along with budget and time estimates.
Developing the PoC
During the PoC creation phase, we came up with several solutions but decided to use the Ionic 2 approach after thorough research
01
Project discovery
Our team joined the client on-site for the project discovery phase. In this stage, we validated all technical, financial, and legal aspects of the project to optimize budget and delivery time while minimizing risks

Check our discovery services
02
Ionic development
Ionic is an open-source software development kit (SDK) for hybrid mobile apps - apps that work on both Android and iOS platforms. Ionic used to heavily rely on Angular framework components until the Ionic 4 version, which is framework-agnostic.

Benefits

Faster time-to-market
Smaller development and maintenance costs
Built-in browser tools for debugging and maintenance
Ability to transform the app into a PWA or a desktop app
Advanced integration capabilities and plugins
Quick prototyping and a wide selection of UI elements

Limitations

Low performance of graphics-heavy apps (games, 3D model rendering)
Being dependent on plugins to access native functionality
No hot reloading (applying changes without reloading the whole app)
Architecture
02
Development &
Testing
03
Best Practices:

Coding style standards (linter) - our developers use coding best practices and style standards to ensure the highest quality of code. They use a linter, a tool that analyzes source code and detects errors, bugs, and suspicious constructs.

Automated and manual testing - we use both types of testing: manual, performed step by step without scripts, and automated, performed using automation frameworks and tools. The goal of testing is to find bugs and feature issues in software.

Gitflow - a Git workflow design that defines a branching model around the project release and facilitates the management of larger development projects.

CI/CD - a method of automating application development stages, from integration and testing phases to delivery and deployment.
Approach:

Code reviews - in order to ensure high-quality code, we perform peer code reviews with 2 peer reviewers. The code is examined by the author and two more people to evaluate its functionality and quality.

Identifying technical debt - technical debt is used to describe the resources (time, money) that need to be spent to rebuild software that has already been built.

Quarterly penetration testing - penetration testing is a simulation of a cyber attack to check for your system’s vulnerabilities. By identifying weak points, we can make changes and improve the overall security of the platform.

Authentication (expiration, security) - when dealing with sensitive information, there are authentication protocols to ensure that unauthorized people cannot log in. Security authentication is a step in the login process that confirms user identity. After a selected period of time, the authentication will expire, and the user will be logged out.
We developed the following features:
Customizable interface

The application can be used as a white-label app, meaning that other banks can customize it to have their design, logos, etc. via CSS variables that allow the customization of colors, fonts, borders, and other design attributes. Users can choose which features to enable or disable via the config file.
Innovative banking features

The app was expanded with features that simplify online banking, such as sending money between mobile phones, offline banking viewing, accepting and redeeming a loan, etc.
Other Features

Buying movie theatre tickets online
AR: real-time directions to the nearest bank branch location
Analytics and charts of the users’ spendings
Recurring and future transactions
Touch ID
Quick document upload
UI, White Labeling & Release
04
The resulting mobile banking app is a white-label solution, meaning banks can customize it according to their brand books via CSS variables. That allows creating a unique user interface without any development efforts. Banks can even choose which features to enable or disable via the config file while deploying the app.
Addressing Security Concerns
05
For system security and customer data protection, the СR2 app had been undergoing penetration and vulnerability testing quarterly. Security experts regularly reviewed the codebase, ensuring adherence to security standards. The new application is GDPR-compliant and meets all banking industry standards.
Code obfuscation technique protects the mobile app’s source code from any malware or device hacking attempts. It also prevents reverse engineering or abducting the app's business logic. The introduction of SSL pinning, fingerprint verification, and two-factor authentication ensures the app’s security on the development and customer sides.
Penetration and vulnerability testing quarterly
GDPR-compliance
Meeting all banking industry standards
SSL pinning
Fingerprint verification
Two-factor authentication
The Outcome
The successful realization of the project had delivered great results, and these are the outcome highlights:
A multichannel app optimized for Android, iOS, and mobile web browser
Advanced online banking features
Optimized app performance using coding best practices
Customizable interface (design and feature selection)
Various integrations with 3rd parties

The client won a Top Performer in The Global Edition of Celent’s Report 2020
Let's See What We Can Do for You
Tell us about your project, and we will send you an estimate within 48 hours.
Olha
Engagement Manager