MobilePay is the most widely-used mobile payment app in Denmark, installed on 90% of smartphones there and with four million users – more than 80% of the Danish population.

Launched in 2013, the Danske Bank-owned app has grown beyond expectations to such an extent that the mainframe system on which it was hosted proved to be inadequate.

Rune Birkemose Jakobsen, development manager at Danske Bank, said there were several reasons for the rapid uptake of MobilePay by the Danish population, one of which was timing.

“MobilePay was launched in May 2013 in parallel with smartphones becoming increasingly popular and widespread,” he said. “Danish society is highly digital and MobilePay was a natural addition to start making small money transfers via an app instead of using cash.”

Another reason was the simplicity of the MobilePay user experience, he said. Instead of taking 28 steps in a mobile bank app, a transfer between two people could be done in five steps with MobilePay.

“Also, the first version offered the user an onboarding experience that was very simple and easy, and within a few minutes, you could be set up and use the service,” said Jakobsen. “It’s not quite so straightforward now, but that’s not because of issues with the app itself.

“These days, we have know your customer, anti-money laundering, GDPR [General Data Protection Regulation], PSD2 [Payment Services Directive 2] and other legislation that makes the process more cumbersome.”

Trust was also important, as is the case with any new financial product or service. Usually it takes time – often years, rather than months – for any payment application to gain enough support for it to become widely known and trusted.

“The general population knew that MobilePay was not just any new fintech, but banktech supported by the biggest bank in the country,” said Jakobsen. “Danske Bank was renowned for its IT capabilities, so this provided the desired level of trust demanded by customers to dare to use and adopt MobilePay.”

So MobilePay quickly became the main mobile payment system in Denmark, pushing out competitors such as Swipp and a similar app put together by a consortium of Danish banks.

Rapid growth is, on the whole, a good business problem to have, but it can be a problem. Mainframes are still in widespread use in the banking industry, but they do have shortcomings, including scalability – at least compared with cloud-based systems.

It became clear that the existing mainframe platform for MobilePay was not up to the task of handling the rapid growth in use of the service, nor the plans Danske Bank had for its expansion.

Danske Bank considered Kafka, MongoDB, EventStore and SQL as possible alternatives to the IBM DB2 and MS SQL relational database technologies that were in use at the time. The chosen system was DataStax Enterprise built on Apache Cassandra because “that seemed to fit nicely into our availability service levels and, at the same time, had a track record for performance”, said Jakobsen. “Also, we could get enterprise support, which was a requirement.”

It may be unusual for a bank to opt for open source technology, but corporate reservations about such software are melting away. Initially, there was some hesitation at Danske Bank about choosing Apache Cassandra for MobilePay, because of its open source nature, but that changed over time. Jakobsen said: “We have learned the benefits of open source and we have engineers with previous experience of such technologies, so we now value open source technologies.”

As with any migration project, there were hurdles to clear – some expected, some unexpected. “We had to learn a number of new things moving to distributed database technology, both on the infrastructure and application side,” said Jakobsen.

In terms of infrastructure, a three-site setup was found to be necessary for proper resilience and availability. Initially, MobilePay started with a two-site approach, but more recently established a third site in order to handle datacentre breakdowns properly.

On the application side, eventual consistency and command query responsibility segregation (CQRS) were new concepts to be learned, as well as how to utilise the strengths of Apache Cassandra and avoid potential pitfalls. Some things only become apparent with hindsight, said Jakobsen, adding: “I think, initially, we should have invested more in training for the developers and trained more to become experts.”

Scalability and flexibility

So, was the outcome worth the effort? Definitely, said Jakobsen – the new platform allows MobilePay to scale and develop without the constraints that existed before the migration. “Scalability and flexibility are some of the main benefits of using DataStax Enterprise, but also availability,” he said. “MobilePay is a key payment method in Denmark and we cannot allow any downtime.”

There are other benefits that might not be so obvious, he said, not least the fact that being on a cloud architecture enables greater agility for adding new systems and attracting talent, such as developers, which is not so easy on traditional mainframe-based technology.

For a country of 5.5 million people, most of whom have already signed up to the payment app, scalability may not seem to be a major issue. But MobilePay is not limited to Denmark, also having customers in Finland. It seems likely that Danske Bank will push its payment app out to other territories if it can, as well as widening the scope of what MobilePay can do for its existing customer base. For that reason alone, moving to a more scalable platform made sense.

“We did see huge benefits from the migration around delivering new functionality back to the business,” said Jakobsen. “If we had remained on the mainframe, it would have been extremely difficult to meet those requests in a timely manner, if at all.”

The success of MobilePay also highlights the benefits of being the first mover in a market, as long as that position can be retained. It seems unlikely that any other mobile payment app could gain a foothold in Denmark now.

LEAVE A REPLY

Please enter your comment!
Please enter your name here