Our client is a large IT company with about 24,000 employees on board. The customer provides software development and IT consulting services for businesses and organizations from 90+ countries.
Detailed information about the client cannot be disclosed under the provisions of the NDA.
PROBLEM AND OBJECTIVES
Our client was selected as a general contractor to run a government project to digitize the payment and banking systems of a small country. The major project objective was to create a reliable, secure, transparent, and easy-to-use software infrastructure for instant electronic payments within the country. Thus, the end-customer, a government financial regulator, intended to reduce the amount of hard cash used, increase the country's investment attractiveness, lay the foundation for developing financial institutions, and provide a better customer experience for citizens of the country and tourists.
To accomplish a large-scale task, our client offered to create a centralized application ecosystem consisting of several integrated modules that would:
- provide infrastructure for e-payment system;
- provide access to financial services across the country;
- ensure high performance and cost-effectiveness of the e-payment system;
- ensure robust system security and efficient fraud protection;
- establish interoperability with the government’s networks.
In cooperation with the customer's development team, Innowise group was to participate in the development of the e-payment ecosystem, PSD2-compliant API (open banking platform) and digital bank module. Also, the customer delegated to Innowise Group to deliver the mobile banking platform (iOS & Android) to allow individual and business users to carry out various financial operations online and be an integral part of the entire application ecosystem
What Was Done
Innowise Group has participated in the development of e-payment application infrastructure, PSD2-compliant API and digital bank module. Also, our team has developed iOS and Android applications from scratch for instant payments (P2P, C2B, B2B) and banking account management.
- Electronic payment ecosystem
The developed e-payment infrastructure is a complex, unified system that provides the operational part of instant electronic payments and is integrated with the networks of the national financial regulator. The system consists of several modules, including infrastructure core, digital banking, mobile platform, fraud protection, etc.
To enable all financial services to integrate into the e-payment system quickly and easily, we have designed an infrastructure that supports international financial data exchange standards such as ISO 20022 and SWIFT MT.
The solution has a multi-tenant microservices architecture, so it can be used and customized by every bank or financial institution. To ensure high performance, the system reiterates system components, interfaces, services, etc.
- PSD2-compliant open banking platform
Also, together with the client's team, Innowise Group’s team has developed a universal solution that allows the ecosystem to work with external systems (banks, financial institutions, payment providers, etc.), provides fast and smooth integration with them, and ensures easy data retrieval.
- Digital Banking
As for the digital banking module, it was designed so that users of the mobile platform could create their e-wallets, replenish them from bank cards/accounts, and make real-time payments. Thus, digital banking was built into the e-payment ecosystem as another “bank”, processing e-payments but serving only electronic wallets.
- Mobile Application
Since it was vital for both the customer and us to ensure a rich user experience, we designed the mobile solution with a variety of must-have features and functional capabilities.
To start using the application, users must link their bank cards, specifying the bank name, account number/card credentials, and going through the user verification procedure. Users can link an unlimited number of cards from different banks, both regional and foreign.
Having passed the identification process, users can replenish their electronic wallets and make instant electronic payments and money transfers. Users can set up automatic e-wallet replenishment on specific dates. Also, Innowise Group’s team has integrated a Smart Addressing System that allows app users to perform financial operations quickly and safely.
Our development team has enriched the application with wide payment settings. For example, a Smart Bill Payment system allows users to set automatic e-payments (rent, insurance, sports, tax bills, etc.) for selected dates, set up notifications on upcoming payments, monitor statistics, receive reports on bill value changes, etc. Also, individual and business users can transfer money within the application (account to account) using the recipient's account number, phone, or email.
To make the app user experience more engaging, we enriched it with personal budgeting functionality. Thus, app users can check comprehensive statistics on incomes and outcomes in visualized form (graphs, charts, and diagrams). Moreover, they can set personal goals on spending optimization and set notifications not to exceed the pre-established expenses limit.
Furthermore, the app supports QR code payments, stores the history of payments, provides inter-account capabilities (e.g., splitting a restaurant bill) and a notification system.
Since the end client was a government financial regulator, the customer and Innowise Group agreed to opt for the Waterfall software development model, which turned out to be the most suitable one. Nevertheless, our team used the elements of the Agile methodology in the internal workflow. All communication with the client was carried out using Microsoft products, namely Microsoft Teams.
Having elicited all the customer’s requirements and specifications, Innowise Group’s experts offered the established technology stack that could allow us to develop multifunctional, reliable, user-friendly, and secure mobile apps on iOS and Android platforms.
As the issue of personal data security and fraud protection was defined as one of the major concerns, our team implemented a multi-factor authentication system and integrated a security system using data encryption, TLS 1.2, SSL Pinning, and tools for instant checking for rooted devices.
- 2 Java Developers (1 Senior + 1 Middle)
- 2 Android Developers (1 Senior + 1 Middle)
- 2 iOS Developers (1 Senior + 1 Middle)
- 1 Business Analyst
- 1 Project Manager
- 1 Automation QA Engineer
- 1 Manual QA Engineer
- 1 Solution Architect
- 1 UI/UX Designer
The whole project lasted two years.
- Backend: Java 11 (LTS), Spring Boot, Spring MVC, Reactor, Web Flux, Kafka, Redis
- Android: Android Studio 4.1.0+, Kotlin, MVVM CleanArchitecture, ViewModel, LiveData, Dagger 2, Cicerone, Coroutines, Multi-Modules
- iOS: XCode 12.3+, Swift, MVVM, VIPER, GCD, Snapkit, Codable, Alamofire
- Code Quality: detekt, SwiftLint
- CI/CD: Jenkins, Fastlane
- Deployment: unified multi-tenant Kubernetes environment
- Databases: PostgreSQL, MySQL
- QA: JUnit, Mockk, Roboletric, Espresso, XCTest, XCUITest, JMeter, ApacheBench, Gatling
Innowise Group successfully delivered an e-payment application ecosystem complemented by several modules and an iOS/Android app. Both our customer and national financial regulator rated the developed solution highly. They were particularly satisfied with the high level of information security, the development quality & speed, and work communication.
The resulting mobile platform was integrated with the electronic payment application ecosystem and rolled out without breaking the deadline. End-users highly praised the application due to its intuitive UI, shallow learning curve, rich functionality, and high performance.
Innowise Group was elated to participate in this project, as it, like no other, corresponds to our philosophy and mission - “We Develop the World”. We believe our professional contribution helped start the digital journey in the Fintech & banking sphere for the whole nation.