How to Make a Banking App like Monzo or Revolut
FinTech technologies have made our lives significantly easier. Long queues to pay bills, opening a new account, making transactions — all of these aren’t 21st century problems.
According to Deloitte Insights, 94% of mobile banking customers use online banking platforms at least once a month. That shows us that nowadays, many people prefer online banking to traditional offline banking. Additionally, the online audience is active, loyal, and will use your services regularly.
Online banking allows us to do everything with only a couple of taps. Most people can’t imagine their lives without online banking — it saves time and requires much less effort than regular banks.
Curious about how to create an online banking app now? Let’s find out!
🎁 Benefits of Making a Banking App
Before we crack on with the design and implementation of a mobile banking app, let’s briefly go through the benefits it can bring.
Expand your clientele 📈
With a banking app, you can stand out and reach a much wider audience. An app can cover your corporate clients’ pain points and offer a great fintech solution to your new ones right from the start.
By developing a mobile-only banking app (which would imply that every financial transaction can be done via the app), you free yourself from being dependent on location.
|Monobank case study|
|Monobank is a Ukrainian online-only mobile bank that has no offline branches and offers all services via the mobile app
When they started in November 2017, they obviously had 0 clients. However, in just 3 years, in September 2020, they already had more than 2.6M customers. In August 2020, 131,660 clients started using monobank.
This rapid jump proves that mobile banking solutions take off extremely fast. So now is the best time to develop one, as the market isn’t overloaded with lots of different mobile banking apps yet.
Know your customer 👫
Information can be extremely powerful to any business. In an online business, it’s easier to get it. Every user’s action, such as loaning payments/deposits, shopping, traveling, is recorded and can be used for developing new marketing strategies and leading to an increase in sales.
Besides, information collected from apps can be used for:
- Analyzing customers’ behavior and making business predictions. For example, automatically calculating a customer's credit card limit based on their activity or estimating the volume of new deposits next month considering your users’ previous data.
- Increasing sales by running specified and targeted campaigns. For example, offering premium cards to active users.
Cut expenses ✂
The design and implementation of mobile banking itself aren’t that cheap. However, in the long run, they're both more than beneficial.
By beneficial we mean that many costs that occur while running a full-offline banking business can be reduced or even removed by developing a mobile banking app. We made a comparative analysis of how different expenditures vary depending on the type of bank:
|Lots of branches are needed to cover all clients needs in one area||A few departments are required to be able to work with big financial operations (real estate, car dealerships, etc.); all of the simpler services (transactions, deposits, payments) can be done via the app|
|Human-based Support Service. Thus, you have to set up a workspace for every support manager and provide them with equipment, days-off, sick leaves, etc.||A chatbot can help clients with their problems at any time. You’ll still need a Support Team, but this way, you may hire significantly fewer people.|
|Constant printing of bills and contracts, as well as sending bills. Consequently, you have to allocate a budget for printing, paper, and delivery of documents.||All bills and documents are available online. Thus, you can noticeably reduce costs and be more eco-friendly.|
Encourage clients to use your services 📣
Online banking apps users are very active and dedicated because they’re really convenient: be it taxi payment, grocery shopping, investing or literally anything else, it can be easily done with the help of a banking solution.
So, if you develop a user-friendly online banking app, it will definitely encourage your clients to use your services more often and not those of other banks that don’t have such convenient solutions, or simply instead of cash. That means your revenue will increase (more use — more commissions), and you will stay ahead of the competition.
In addition, it would be a great idea to implement gamification and encourage customers to use your app services even more. That can be:
- Achievements (“Spend $100”, “Pay for taxi 5 times”, etc.).
- Bonuses for regular use.
- Customized profile avatars.
Build your digital brand and use it for marketing purposes 💻
The brand recognition of a bank is of high importance. Being well-known makes an impression of a trustworthy service that people talk about and use. Nowadays, it’s also quite hard to draw attention to your service.
That’s because today people hardly pay attention to advertisements. Many use ad blockers or just close ads without even reading or watching them first. However, an app is something most people can and will use. Thus, creating an online banking app is one of the most effective ways to be that one bank everybody knows and uses.
Speaking of, mobile banking development can help you attract digital-first customers. The availability of well-structured online banking will make your company look modern and high-tech. Keep in mind that the availability of online banking apps becomes more significant every day.
✅ Top 3 Things Worth Attention When Creating An Online Banking App
User-friendly Design 👈
One of the most crucial parts of starting an internet banking app is a simple and user-friendly design. An app that’s difficult to use can be repulsive for users. User-friendly here means:
- Based on navigation patterns that are familiar to your users. All features are accessible with the click of just a couple of buttons.
- Personalization and customization options (theme color, customized avatar, etc.).
Besides, all transactions and actions via your app should be quick and well-organized. For instance, in Germany, there are still banks that send you sheets with ~30 security codes that customers must enter to verify each separate transaction or payment, and even then, you have to wait for 1 day (at best) till the transaction reaches the recipient.
|Revolut case study|
|Revolut is a financial app launched in the UK in 2015 offering only transfer and exchange. Nowadays, they also offer innovative services and products.
To create an account in their app you don’t have to visit a branch or sign a bunch of papers. You can do it directly from your phone and it won’t take you more than a couple of minutes, as Revolut states.
This is a good example of a simple banking system which mobile owners love and use.
Basically, try to follow this rule:
Provide as many services as you can online at the shortest time possible.
Furthermore, don’t be too intrusive with offers and push-notifications — only well-developed personalized offers will help you increase sales and actually be valuable to customers as the app’s owner.
Take Device Differences Into Account 🍎
Keep in mind that different customers use different operating systems. We recommend building a product for Android and iOS, so as to make your banking app optimized for both of these major platforms.
Not only the OS matters, though. Screen size, phone features (e.g., users can have phones that aren’t optimized for biometric authentication), etc. - all need to be considered. Some people may also use an older version of the OS, and some may update constantly.
To make sure that your app is optimized for each OS and gadget dimensions, you can:
- Run pre-tests on different devices and simulations. It helps you not only optimize the app but also test security and simplicity.
- Analyze your app by gathering metrics, running surveys, and getting feedback on user experience.
Different Generations — Different Values 👐
Young users tend to turn to mobile banking apps more frequently than their older peers.
According to Fortunly, approximately 30% of consumers under the age of 54 use mobile payment services like Venmo and Apple Pay at least once a week, while only 12% of those older than 54 do the same. This demonstrates that zoomers and millennials (18-35 year-olds) use such apps more often than older generations.
Moreover, Statista claims that almost 50% of people aged from 18 to 24 use mobile banking apps weekly:
Not only the usage frequency but the values are different too. This generation cares more about emotional connection and gamification than their parents and older relatives.
They like to feel and show empathy; they appreciate being cared for, loved, and entertained, even in such a “serious” app as a banking one.
Let’s have a look at the monobank case again. These guys have their unique gamification element — a cat! It’s used for marketing purposes, as well as for customers’ entertainment. You can find it in different animations throughout the app when completing achievements. Even with this small detail alone, they attract cat-lovers from all over Ukraine. And trust us, the numbers are impressive :)
Here are some examples of successful empathy and care from mobile banking apps:
- Chime shows that they’re happy for their clients and do it with push-notifications. They surely could just send a cold notification about money going in but instead they make it more emotional using a friendly sentence at the beginning and the "🎉” emoji.
- During the COVID-19 lockdown, monobank sent the “Don’t forget to wash your paws when you get back home 🐾” reminder after a payment at a store or for take-away, along with the amount of money paid to show their care. Why paws? Because they have a cat as their “spirit animal”.
In addition to empathy, clients of these generations love gamification features: tasks and achievements, challenges, giveaways, and competitions.
Let’s review some monobank examples one more time. They encourage clients to use their cards more often through the system of achievements and stars: after completing an achievement, you receive a star. After collecting N stars, you can exchange them for branded merch (e.g., hoodies, T-shirts, and other stuff with monobank’s logo on it).
This way, they don’t only encourage their clients to use the monobank app more often but also get free promotion, as people walk around in their branded clothes.
Finally, most mobile banking apps use more or less similar features. Thus, it’s quite hard to get their attention without standing out. However, with these emotionally valuable features, you can definitely make your brand unique. More importantly, you can give users one more reason to prefer your services to any other online banking apps or mobile banking solutions.
🏦 Banking Infrastructure, BackEnd & API for Mobile Banking Development
Before we dive into the must-have features of a Banking App, we’d like to point out that in this article we will mostly focus on the FrontEnd part. That means that BackEnd development won’t be the highlight of this article, since each case is highly individual.
There are 3 most typical use-cases of a BackEnd setup:
- You’re a bank & have your own banking infrastructure & API.
- You use the banking infrastructure & API of your partner.
- You use Banking-as-a-Service startups (BaaS) - on-demand service providers that allow companies to build FinTech Products without building their own Banking or Payment Infrastructure. Normally, you should either have your own banking license or partner up with a bank that will provide you with their infrastructure.
Actually, we at Stormotion worked with the integration of Mangopay for one of our first clients, OvalMoney.
Their idea was quite interesting & useful - you save money as you spend it. For instance, you save $4 for each fast food meal you have this week. Sounds fun, doesn’t it?
So basically, what we did with Mangopay was:
- During a new user’s Sign-Up, we created a wallet for each one of them in Mangopay.
- Users could then attach their bank accounts to their personal wallet; it was done by implementing the Yodlee API.
- Then, Mangopay was allowed to charge users and transfer a predetermined amount of money from their account to their Oval-wallet. That either happened on a regular basis or after a certain purchase (as in our example with fast food).
By the way, If you’d like to find out more about Payment Gateways & APIs, you can check out our article dedicated to this topic:
📱 Top Features of an Online Banking App
In this section, we’ll go through the basic as well as extra features of a mobile banking app. Nevertheless, creativity is always a good thing, and if you want to stand out, you could add some unique features to your app.
# 1: Sign Up & Profiles + Settings 🔐
This part is extremely important for mobile banking development. It’s because this is where you implement security features for authentication (password, biometric scanning, additional questions, etc.).
While we normally recommend not to request too much info at the “Sign Up” phase, here things are different. You have to make sure that your clients’ profiles will be under strong protection.
So, you have to ensure that your customers use complex passwords, correctly link their phone numbers or emails, set personal security questions they will remember, and that customers are acquainted with your Confidentiality Policy and accept any other banking terms by creating a profile. Note that all of this should be done while signing up!
Speaking of settings, they're a good way to make the user experience more personalized. You can add:
- Turn on/off double transactions.
- Set a limit for online payments/credit.
- Add a savings tracker.
- Set a payment reminder.
# 2: Home Screen
Basically, the Home Screen is what users see right after they sign in. In a banking app, the Home Screen should be as useful and user-friendly as possible. By useful we mean that it should contain:
- Balance details. That could either be for your client’s main card or for each card separately.
- Wallet. That should be a list that provides quick access to every card's details. You can also let your users have different types of cards, in case they want to make a transaction between their cards.
- The list of latest payments and transactions.
- Quick access to main features — transfer, currency exchange, making a payment, etc.
Besides, your Home Screen could be changeable. Users should be able to choose what’s on their Home Screen. That can be deposits, credit payments, insurance, donations, service payments, and so on — “one size fits all” isn’t and can’t be the case here.
# 3: Payments
Many people take the “Transfer money” feature for granted, however, it’s important and worth attention.
What’s exciting about this particular banking operations feature is that it’s hard to overdo — usually, the more, the better. Apart from the usual transactions between cards, banks, and accounts, we recommend adding payments for:
- Mobile communication.
- Utility bills.
- Public services.
- Loans & credits.
- Fines & taxes.
- Travel & public transport (bus, train, plane tickets, hotel or Airbnb booking, etc.)
Also, it wouldn’t be too much to allow users to set monthly/weekly payment reminders for anything they might need. It will save your customers’ time and reduce the stress of forgetting about recurring payments.
# 4: Transactions History
It’s essential that your customers can easily track their transactions and payments from the very beginning of their journey in your online banking app.
Moreover, transaction description should be well structured and include:
- The amount of money transferred.
- The recipient (either card number and/or name of person or company)
- The date.
Additionally, you may display the geolocation of where the transaction took place (in case it was a PayPass payment) with a mark on the map.
It’s a great idea to filter the expenses. Filters can be very diverse: by category (food, healthcare, transports, clothes), by date, by the amount of money (up to $50, up to $100, up to $250, etc.), by destination, and so on.
Such an expense management feature can bring additional value to your customers and improve the user experience.
# 5: Branches and ATM Map
We bet everybody has experienced confusion because of not being able to find an ATM.
We recommend adding this feature since you can’t know when your clients may need it. Maybe they get lost or don’t have time for looking for it: so, if a map isn’t available, users won’t be able to use your services.
You could make your map really “out there” and add some gamification features. For instance, “Withdraw cash from the ATM on X Street,” “Take a selfie near the Y ATM,” and a customized avatar for each ATM and branch would be some great examples.
It’s also a good idea to implement a real-time counter which will show the number of people in the queue.
# 6: Support Service
Customer service is one of the pain points of a lot of banks. Oftentimes, it’s just really poorly organized; chatbots may not be programmed to deal with a question slightly different from the one on the list, and if you want to call the customer support service, you might have to wait for a really long time.
We’re sure that developing a great customer support system is one of the best ways to become that one bank that clients love and are willing to use. What does great mean? There are several points we want to emphasize. Customer support has to:
- Provide a chatbot (artificial intelligence that’s programmed to handle simple troubles and answer questions) and live chats.
- Be quick.
- Have a wide range of listed answers to popular questions and problems.
- Offer 24/7 phone support in cases of emergencies.
- Provide a list of contacts/emails/phone numbers, etc.
- Offer pre-written answers to questions that imply “Yes” or ”No.”
- Provide support via popular messengers like Facebook Messenger, Viber, Telegram and WhatsApp. Users can be redirected right there.
# 7: Push Notifications
Push notifications are a great tool for increasing sales by offering personalized offers and retargeting customers. They can be useful for customers as well, since they work as reminders about monthly payments, savings, spending limitations, etc. Generally speaking, push notifications can be used:
- To remind customers about their scheduled payments and/or savings.
- To improve your marketing strategy and make the user experience more personalized.
- To double-inform customers about their payments and expenses in real-time.
Nevertheless, some people are not big fans of push notifications, so this feature should always be optional for them.
# 8: Extra Features
In this subsection, we will list some additional features that are not really necessary, yet improve the user experience and/or are used by many competitors. These include:
Cashback means getting back a small part of the money from your purchases.By implementing this feature, you don’t only make the process beneficial, but also convenient since the money goes straight to your bank account. Additionally, it can surely be a strong competitive advantage.
- QR code payments.
QR code payment is a contactless payment method where a transaction is done via scanning a QR code from an online banking app through your camera. It’s time-saving, but not many shops and institutions offer such payment opportunities, yet. Nevertheless, QR codes are more widely used for online payments today.
In the modern finance market, investments and trading are getting more and more popular every day. By allowing your customers to do it via your app, you improve the user experience and get some extra points why users should choose you and not other banks.
- Splitting bills.
This feature is just the ticket for users who frequently go out with friends or have a roommate/flatmate, etc.
Let’s say you’re out for dinner with your friends. This feature will calculate what everyone owes for whatever food they ordered for themselves, and costs for appetizers and wine, for example, will be shared. You can create a joint payment and everyone will pay what they owe.
|Monzo case study|
|Monzo is an online bank based in the UK. In 2015, they started as a prepaid debit card provider, but now, over 4M customers use their diverse innovative services.
Monzo created their own Shared Tabs that allow users to conveniently split different bills and payments. They can create one-time bill Tabs or joint Tabs for constant joint payments.
This case shows us that a well-developed useful extra feature can be a strong competitive advantage and help you attract more customers.
It’s a fairly new technology, but the name speaks for itself — shake your phone to find nearby users who do the same and perform a payment. The list of mobile banking apps that offer this feature isn’t big, yet, and if you’ll be among those, you could really stand out and draw attention right from the start of your internet banking app.
🔐 How to Make a Mobile Banking App Fully Secure?
Statista indicated that 72.7% of Americans consider security and data privacy as their main concern when it comses to a mobile app development for a banking sphere. That’s why the security of your app has to be on top.
So, let’s get to the point. How can you make your app truly secure for your customers?
Check out the list of security features that could come in handy while making a banking app.
# 1: Multi-factor Authentication
Creating a complex password is of course necessary, yet not enough in today's reality. To develop a secure mobile banking app, mobile banking app owners should use multi-factor authentication to ensure data is under a layered defense. If the fraudster breaks one layer, then, he has to break through at least one more, which significantly reduces the risks of being hacked.
Multi-factor authentication mixes two or more independent credentials:
- Security token.
- Biometric verification (fingerprints, face ID, voice recognition, etc.).
- One-time password.
- Phone call verification.
- Answers to personal security questions.
# 2: End-to-end Encryption
Every day, thousands of dollars are transferred via banking apps. Because of that, mobile banking apps are hotspots for hackers.
End-to-end encryption is something that solves the problem. Basically, end-to-end encryption (E2EE) is a system of communication and transactions where no one monitoring the network — not hackers, not the government, and not the company that facilitates your action — can see the content and details of the action done.
The best part about E2EE is that it doesn’t require expensive technologies, additional training, or staff. It’s simply provided by leading payment processors.
# 3: Device Fingerprinting
Attention! Don’t confuse the term with fingerprints as a biometric scan.
Device fingerprinting is a way to combine different sets of signals of a device — what operating system it’s built on, browser type, screen size, IP address, location, time, language — to identify it as a unique device.
In the banking industry, it’s used for checking whether a person trying to enter an account is the person who’s the owner of that account based on whether they’re using a device or browser that has been previously used to log in.
Normally, if the device doesn’t get recognized, an owner gets a notification, a text message, or an email with an alert of a potential fraud or hacker attack.
# 4: Behavioral Analysis
You might have noticed that sometimes you get a notification from an app saying “Suspicious activity has been noticed” or something similar. That’s because you did an action that has never been done before while you’ve been using a mobile app.
You may see some similarities between this description and device fingerprinting, but while device fingerprinting tracks the device itself, behavioral analysis is aimed at your actions.
Such an analysis is implemented in an app via specialized software that monitors login location and online account activity.
Usually, the main key features needed for this analysis include:
- User recordings.
- Touch heatmaps.
- Real-time in-app analysis.
# 5: Real-time notifications
The list of mobile banking apps using this feature is quite long. That shows that it’s nothing extraordinary, yet surely necessary.
The name speaks for itself — by providing users with real-time notifications and alerts (The amount of money spent/payment, “Log in” notification, use of another device notification in real-time, etc.), you inform your clients about current activities done in their account.
Many bank apps send notifications in case more money than a customer has set has been spent. To make real-time banking app notifications useful, turn them into alerts and send them in case more money was spent than a customer had set.
📖 Banking Regulations & Security Compliance Requirements
What’s specific about creating a mobile banking app is that your app must have security certificates and be in full compliance with international banking regulations or with those for a certain region/country.
Besides, every year, new regulations enter the market along with new and even more advanced hack techniques. That’s why it’s of high importance to make sure that your app has some proven regulative protection.
We came up with a list of the most important moments you should pay attention to in order to create a fully secure online banking app:
- The processing of data has to be fair, lawful, and transparent.
- Data processing can be done for legitimate purposes specified explicitly to the data subject once you collect it.
- Data should be collected and processed only in an amount absolutely necessary for the specified purposes.
- Personal data should be kept for as long as necessary for the specified purposes.
- The process of data collecting and transmitting has to be conducted in a way that ensures appropriate integrity, security, and confidentiality (by using end-to-end encryption, for instance).
- A strong authentication system must be implemented.
- Regular updates of the system should be included.
- Systematic vulnerability scans and penetration tests must be conducted regularly.
- Security documentation and risk assessments should be done.
As mentioned before, it’s hard and even wrong to just trust that your mobile app is secure. To ensure that your services are trustworthy, you should request appropriate security institutions to examine your app’s compliance with their regulations. Depending on the region you’re going to conduct your business in, you might need to comply with the following regulations:
|PCI DSS||Payment Card Industry Data Security Standard (PCI DSS) is an international security standard that provides a set of requirements (12) that are created to maintain a secure environment while processing, storing, or transmitting credit card information.|
|PSD2||Payment Services Directive 2 (PSD2) is a regulation for electronic payment services in the EU. It’s a new version of PSD which is intended to help banking businesses adapt to new technologies, encourage innovations, and, naturally, make payment services more secure.|
|GDPR||General Data Protection Regulation (GDPR) is an EU privacy and security law. It’s not specifically addressed to banking businesses and institutions, but they still have a lot to do with it. Despite the fact that it was drafted by the EU, it works for organizations all over the world as long as they collect or target data about people in the EU.|
|GLBA||The Gramm-Leach-Bliley Act (GLB Act or GLBA) is a United States federal law that requires financial and banking institutions to show how they use and protect their clients’ personal information. To be GLBA compliant, institutions have to inform clients of their right to opt out if they prefer their private data not to be shared with third parties, and implement specific protections to customers’ private data according to a written information security plan created by the institution.|
|KYC Requirements||Know Your Client (KYC) is a Canadian regulatory document published by FINTRACK (Financial Transactions and Reports Analysis Centre of Canada) which lists methods of verification and the requirements to verify the identity of an individual and confirm the existence of a corporation or entity.|
|APRA||Technically, the Australian Prudential Regulation Authority (APRA) isn’t a regulation, but an independent national authority that supervises institutions in the banking, insurance, and superannuation industries and supports financial system's stability in Australia. On their website, you can find various regulations and requirements regarding data security regulations for the banking industry.|
💰 How Much Does Mobile Banking Application Development Cost?
Here, we will cover the average costs for the process of mobile banking development. Bear in mind, they may vary depending on your personal preferences about the app’s structure, design, different technologies, and integrations.
Besides, the hourly rate of your development team impacts your expenditures as well. Our estimations are based on the average rate for Eastern Europe (40$ per hour). Take a look:
Thus, the rough cost to develop a banking app with mentioned features is between $18,000-$27,000. If you're looking for some extra features mentioned in the article, take a look at the table below:
|⚙️ Feature||⏳ Min Hours||⏱ Max Hours|
|📸 QR code scanner||16||20|
|✂️ Splitting bills||30||50|
|🔒 Multi-factor authentication options|
|Phone call verification||30||40|
Once again, this isn’t the final estimation. The number and complexity of features, technologies, and integrations as well as your development team’s hourly rate can change your costs.
Now you better understand how rapidly the importance of accessibility of an online banking app for any banking institution grows. Quick transactions, no geographical limits, the variety of payments (utilities, streaming services, mobile, etc.), beneficial commissions, and satisfied customers — all of these can be reached by making an online banking app.
Of course, the process of developing is labor-intensive and time-consuming, but the benefits you can get from it outweigh the costs.
Once again, we draw your attention to the security of your mobile app — it has to be on top not just for your customers but for you as well.
Looks like you’re all set and ready for your mobile banking app development journey. If you need an experienced Tech Partner to accompany you during your journey feel free to contact us and we’ll find a way to help you!