MPSI | eXact in microservices

With a growing business, the architectural design of an application is one of the most important things. Applications designed as monoliths are usually very hard to scale and maintain. Enter microservices.

Hero image

Mercury Processing Services International (MPSI), a company established in 2009, provides payment solutions to its clients from the financial and banking sectors across Central & Eastern Europe, Middle East, and North Africa.

Located in Croatia and Slovenia, the foundations of MPSI rely on complementary strengths of the two strongest cards businesses, Privredna Banka Zagreb and Banka Koper, and their transition from local companies into a fully international organization.

Its specialties are Payment Processing Services, Issuing Solutions, Acquiring Solutions, Payment Acceptance, and Value Added Services.

Responsibilities

An internally developed back-office application within MPSI, eXact, provides functionalities to support Merchant and Card Payment Processing activities.

The main features of eXact include:

  • Web portal integrating acquiring, issuing, clearing and settlement authorization, authentication, mobile and fraud case management functionality

  • Online reporting

  • Generated output batch interfaces available in the eXact web portal, available for manual or automatic download

  • A set of common input/output interfaces across markets (institutions)

  • Modules/batches separated for issuing and acquiring transaction processing web services provision (supporting various technologies; that may or may not be Client specific)

  • Provision of file stores (not content management; that may or may not be Client specific)

Solution

eXact was designed as a monolithic application. MPSI gained new partners and their transactions needed to be processed. Scalability and maintenance of the current system started being an issue, so it was decided to transition from monolithic to microservice architecture. MPSI found a reliable partner in Serengeti to support them in this challenging project.

Experienced team members from Serengeti combined with architects from MPSI communicate on a daily basis, aiming to design and develop eXact in a microservice architecture, following state-of-the-art techniques and the best practices. Depending on the type and need of a microservice, both relational and NoSQL databases were used. Microservices were developed in .NET Core, containerized in Docker on deployed on RedHat's OpenShift platform (Kubernetes, Istio) and are communicating with each other via async event-based communication based on IBM MQ and Kafka.

To support MPSI during this important project in the best possible way, it was important that the Serengeti team consists of very competent, experienced and research-oriented engineers. With the quality of developed and documented microservices and the level of details in written documentation, new developers were quickly ready to jump in and start working on the product.

Result

The project is still ongoing. So far, the Serengeti team developed over 20 microservices. They completed, among other things, the StandIn module on the acquiring side. The focus is now shifting to the issuing side where new challenges await. This is a long-term project in which architectural design is crucial so everything has to be (and is done) in a very precise and well thought out way.