Try : Insurtech, Application Development










Dev Ops(2)

Enterprise Solution(22)




Augmented Reality(17)

Customer Journey(12)


User Experience(34)

AI in Insurance(31)


Product Innovation(37)





Telehealth Care(1)


Artificial Intelligence(109)



Cognitive Computing(7)

Computer Vision(8)

Data Science(14)


Intelligent Automation(26)

Machine Learning(46)

Natural Language Processing(13)

Explained: Digital Banking Ecosystem

Recently, IndusInd Bank added a new arsenal to its digital ecosystem. It launched Video Branch, which allows customers to communicate with their branch manager, relationship manager, or centralized video branch executive in real-time. While doing so, customers can even track all of their important financial transactions, such as initiating a fixed deposit or recurring deposit. 

This is an excellent example of how building a digital ecosystem helps banks become more relevant to clients, allowing them to form stronger relationships and grab higher wallet shares.

According to Global Market Insights, the Digital Banking Market has crossed USD 8 trillion in 2020 and is expected to grow at a rate of roughly 5% from 2021 to 2027. This industry growth is due to consumers’ increased usage of mobile devices to accomplish day-to-day financial operations. Customers utilize digital banking to check their account balances, deposit checks, transfer funds and shop online. Furthermore, the expanding millennial generation (aged 16 to 34) is pushing banks to offer digital banking services and adopt a digital ecosystem strategy.

What is a Digital Banking Ecosystem?

Digital banking ecosystems are collaborations built on partnerships that use technology to provide new products and services to clients. The idea behind collaborative models like these is simple: although no single bank can cover all of its customers’ needs, a consortium of banks and digital companies can.

Collaborations with Big Tech companies such as Apple Pay and Google Pay have gained significant market share in the mobile wallet sector. Banks, on the other hand, are concerned that closer collaboration with these firms would become a Trojan horse, compromising their position.

There are three types of stakeholders in a digital ecosystem: banks, third-party service providers, and customers. The role of a third party is to act as an intermediary between the customer and the bank. However, customers have to give their consent to third-party providers to carry out financial transactions on their behalf.

Need for a Digital Banking Ecosystem

According to Everfi research, 53% of financial institution customers have moved on from their principal financial provider, with another 9% considering doing so. This explains why banks must evolve if they want to retain existing customers and perhaps attract new ones.


Banks must now allow access to customers’ data and online payment capabilities using open API technology, with specific consent. Hundreds of thousands of new clients are introduced to the ecosystem each month as a result of open banking-enabled products being used by both users and enterprises around the world.

Increased Competition

FinTechs are taking advantage of the decreased barrier to enter into the financial services market by using their technical expertise and superior digital client experience. Due to the limited services now offered by these challenger banks, few clients have totally transitioned away from their former pillar banks.

Increasing digital and technological investments

Banks are aggressively investing in their technological systems and data both globally and locally. This lowers operating costs and provides a foundation for new revenue streams.

Changing customer behavior

A paradigm shift from the previous paradigm (provider-based) to the new paradigm (need-based) aided in the creation of one-stop-shop ecosystems to meet the wants and needs of customers. Banks can now embed their products and services at the place of need, such as embedded finance, in this new paradigm.

Over the next five years, customers expect their bank to provide them with more personalization, proactive services, and connected omnichannel experiences. COVID-19 has risen digital adoption levels, with 43 percent of worldwide respondents stating their banking habits have changed during the financial crisis.

The Benefits of the Digital Banking Ecosystem

Banks in digital ecosystems have a number of substantial advantages built-in, including strong customer relationships and well-known brands. Banks, their customers, and other stakeholders can all profit when such strengths are joined with third-party artificial intelligence (AI) and cloud-based solutions.

Increasing the reach and quality of digital products

Working with technology partners can help a bank extend its digital distribution, improve the quality of its products, and reduce client acquisition expenses.

Citibank is one of eight banks that have teamed with Google to offer Google Pay consumers digital checking and savings accounts. Citibank and others can use Google’s platform to deliver branded products and advice to digital-only clients as a result of the partnership.

Competencies in product development are outsourced

When third parties have the technology and capacity to do it better, banks may not need to develop and maintain best-in-class digital solutions and products.

M&T Bank has collaborated with LPL Financial, an investment advisor and independent broker-dealer, to provide access to LPL’s scalable platform, integrated processes, and differentiated product offerings to its brokerage and insurance advisors. M&T advisers can now focus on client connections while the bank tries to improve its efficiency and reinvests in core operations as a result of the agreement.

Providing other ecosystems with access to banking services

When customers transact in other ecosystems, they demand seamless access to bank-held data, as well as banking goods and services. Providing secure access to their systems to partners can help banks bridge ecosystem gaps and stay relevant to their clients.

Intuit’s QuickBooks uses an API technology that enables customers to better manage their financials, enabling them to access their accounts in a variety of banking and cash management functions in one place.

Providing other ecosystems with banking services

FinTechs frequently tout digital procedures and capabilities that can assist banks in providing good, frictionless, and efficient client experiences while avoiding costly updates.

PNC Financial uses OnDeck Capital’s digital onboarding process and external data sources to streamline its small business financing process. As the company claims, the agreement allows PNC to keep control over its risk appetite while reducing loan approval times from days to minutes.

Concentrating on fundamental competencies

By delegating non-core product and capability management to a third party, banks can maintain and strengthen customer connections while focusing resources on vital strategic priorities.

State Farm recently dissolved its banking, mortgage, and credit card divisions in order to focus on its core insurance business. Agents, on the other hand, continue to sell bank products to customers through their partnerships with those buyers, giving State Farm a one-stop-shop for all financial needs.

Product and service marketplaces are expanding

Ecosystems can enable a bank to disaggregate and securely market products and services to other institutions, resulting in increased revenue for the bank and value for the partner.

In the United States, HSBC has partnered with NepFin, an online commercial lending platform, to provide growth finance and international services to FinTech’s midsized business clients. The arrangement allows HSBC to reach out to digital customers it couldn’t previously reach.

Increasing the value of internal resources

Ecosystems are a cost-effective way for banks to promote their in-house developed capabilities to other banks, FinTechs, and even non-bank enterprises.

Banks and businesses can offer white-label versions of their products and services through banking-as-a-service (BaaS). BBVA will be able to commercialize its core banking functions, including payments, financing, identity verification, and account opening, as a result of the agreement.


Banks and financial institutions need to continuously upgrade the experience for their customers. However, while doing so they need to factor in the demographics of their customer base. While the millennials and GEN-Zs want services at their fingertips, the older generation still prefers visiting a physical office. 

Banks will have to integrate new-age technologies such as AI, ML, and big data analytics into their processes to elevate customers’ experience and improve efficiency in operations. The key to success would be decoding data into actionable insights and acting in real-time. Furthermore, they need to train their workforce and help them get acquainted with news systems. 

The next step in the growth of digital banking platforms would be to continuously engage, assist and educate customers accustomed to traditional banking methods. This will fastrack the revenue streams and profit in the near future.


Knowledge thats worth delivered in your inbox

Implementing a Clean Architecture with Nest.JS

4 minutes read

This article is for enthusiasts who strive to write clean, scalable, and more importantly refactorable code. It will give an idea about how Nest.JS can help us write clean code and what underlying architecture it uses.

Implementing a clean architecture with Nest.JS will require us to first comprehend what this framework is and how it works.

What is Nest.JS?

Nest or Nest.JS is a framework for building efficient, scalable Node.js applications (server-side) built with TypeScript. It uses Express or Fastify and allows a level of abstraction to enable developers to use an ample amount of modules (third-party) within their code.

Let’s dig deeper into what is this clean architecture all about. 

Well, you all might have used or at least heard of MVC architecture. MVC stands for Model, View, Controller. The idea behind this is to separate our project structure into 3 different sections.

1. Model: It will contain the Object file which maps with Relation/Documents in the DB.

2. Controller: It is the request handler and is responsible for the business logic implementation and all the data manipulation.

3. View: This part will contain files that are concerned with the displaying of the data, either HTML files or some templating engine files.

To create a model, we need some kind of ORM/ODM tool/module/library to build it with. For instance, if you directly use the module, let’s say ‘sequelize’, and then use the same to implement login in your controller and make your core business logic dependent upon the ‘sequelize’. Now, down the line, let’s say after 10 years, there is a better tool in the market that you want to use, but as soon as you replace sequelize with it, you will have to change lots of lines of code to prevent it from breaking. Also, you’ll have to test all the features once again to check if it’s deployed successfully or not which may waste valuable time and resource as well. To overcome this challenge, we can use the last principle of SOLID which is the Dependency Inversion Principle, and a technique called dependency injection to avoid such a mess.

Still confused? Let me explain in detail.

So, what Dependency Inversion Principle says in simple words is, you create your core business logic and then build dependency around it. In other words, free your core logic and business rules from any kind of dependency and modify the outer layers in such a way that they are dependent on your core logic instead of your logic dependent on this. That’s what clean architecture is. It takes out the dependency from your core business logic and builds the system around it in such a way that they seem to be dependent on it rather than it being dependent on them.

Let’s try to understand this with the below diagram.

Source: Clean Architecture Cone 

You can see that we have divided our architecture into 4 layers:

1. Entities: At its core, entities are the models(Enterprise rules) that define your enterprise rules and tell what the application is about. This layer will hardly change over time and is usually abstract and not accessible directly. For eg., every application has a ‘user’. What all fields the user should store, their types, and relations with other entities will comprise an Entity.

2. Use cases: It tells us how can we implement the enterprise rules. Let’s take the example of the user again. Now we know what data to be operated upon, the use case tells us how to operate upon this data, like the user will have a password that needs to be encrypted, the user needs to be created, and the password can be changed at any given point of time, etc.

3. Controllers/Gateways: These are channels that help us to implement the use cases using external tools and libraries using dependency injection.

4. External Tools: All the tools and libraries we use to build our logic will come under this layer eg. ORM, Emailer, Encryption, etc.

The tools we use will be depending upon how we channel them to use cases and in turn, use cases will depend upon the entities which is the core of our business. This way we have inverted the dependency from outwards to inwards. That’s what the Dependency Inversion Principal of SOLID implies.

Okay, by now, you got the gist of Nest.JS and understood how clean architecture works. Now the question arises, how these two are related?  

Let’s try to understand what are the 3 building blocks of Nest.JS and what each of them does.

  1. Modules: Nest.JS is structured in such a way that we can treat each feature as a module. For eg., anything which is linked with the User such as models, controllers, DTOs, interfaces, etc., can be separated as a module. A module has a controller and a bunch of providers which are injectible functionalities like services, orm, emailer, etc.
  1. Controllers: Controllers in Nest.JS are interfaces between the network and your logic. They are used to handle requests and return responses to the client side of the application (for example, call to the API).
  1. Providers (Services): Providers are injectable services/functionalities which we can inject into controllers and other providers to provide flexibility and extra functionality. They abstract any form of complexity and logic.

To summarize,

  • We have controllers that act as interfaces (3rd layer of clean architecture)
  • We have providers which can be injected to provide functionality (4th layer of clean architecture: DB, Devices, etc.)
  • We can also create services and repositories to define our use case (2nd Layer)
  • We can define our entities using DB providers (1st Layer)


Nest.JS is a powerful Node.JS framework and the most well-known typescript available today. Now that you’ve got the lowdown on this framework, you must be wondering if we can use it to build a project structure with a clean architecture. Well, the answer is -Yes! Absolutely. How? I’ll explain in the next series of this article. 

Till then, Stay tuned!

About the Author:

Junaid Bhat is currently working as a Tech Lead in Mantra Labs. He is a tech enthusiast striving to become a better engineer every day by following industry standards and aligned towards a more structured approach to problem-solving. 

Read our latest blog: Golang-Beego Framework and its Applications


Knowledge thats worth delivered in your inbox

Loading More Posts ...
Go Top