A tailored solution for benefits payments

Our Finance Service web app efficiently manages incoming and outgoing benefit payments for over 160.000 Belgian construction workers.

The client 

Constructiv is a service organization of and for the construction sector.  It is a livelihood fund set up by the social partners of the Construction Company whose members include Belgian construction worker syndicates. The core of their business is the calculation of benefits for approximately 160.000 workers in the Belgian construction sector.  

Client Challenge 

The client’s internal enterprise system called CoBen has multiple microservices that calculate various types of benefit payments for workers, or debts in case of overpayments. The issue was that they didn’t have an automated way of managing these payment flows and that each benefit was unique. So, finding a way to standardize them was a challenge in itself. Another challenge was communication since these benefits needed to sometimes communicate with other benefits in the ecosystem.

Project goals

Digitalization

Digitalizing the processing of incoming payments and automatically match them to benefits or debts

Standardization

Standardizing the process so that it can be applied to each type of benefit

The solution

The final product was a custom web app called Finance Service that now acts as a mediator between benefits and the end recipients of these benefits, and vice versa.

Using event sourcing and domain-driven design practices we were able to standardize the main process but also modify it when necessary to cater to each benefit. So, benefits now act as a separate service with independent lifecycles. Given the project’s success, we also ended up handling the processing of outgoing payment requests.

The process 

For incoming payments, the incoming payment .cod files are processed and show up in the incoming payment screen. They can be further forwarded outside the system or linked to existing debts.

Outgoing payments are made when benefits send payment requests to the Finance Service app, after which admins can see a payment request in-app that they can approve (not approve) depending on predefined metrics. The app then sends the outgoing payment request to external providers – accounting applications and then banks.

Transaction history 

Using the event sourcing methodology we can track the payment flow each step of the way. Not only that, but the users can see it too from the moment the request arrives in the Finance Service app to the status change and when it’s finally completed.

Tech solution

Concerning the communication challenge, we decided on the NServiceBus messaging solution making it a microservice architecture. The service had to be part of the main CoBen application, so our technology stack for the backend (.NET) and frontend (Angular) was already defined.

We also used the event sourcing development pattern which is highly efficient with financial applications.

Business impact

Maintainability

Potential issues are easy to find, fix, and prevent

Reliability

No data loss and a self-healing system that is resilient to errors

Audit trailing

All relevant events can be used later for building records that users can consult

Expansion

Easily introducing new types of events, and quickly adding logic without impacting the older code

Client review

"They listen carefully and work together as a team."

Dirk Berckmans
ICT Coordinator, Constructiv

Dive deeper with more case studies