Abortion pills in Dammam Saudi Arabia | +966572737505 |Get Cytotec
Case Study_Application for integration with financial organizations
1. Challenge
The company was working on an application that would let consumers apply for loans from
multiple sources at a time. It had designed a system whereby the app connected with loan
providers’ APIs to pass requests and responses.
At the point of our first contact, the company was rebuilding its PHP application in Java. It
lacked sufficient hands to integrate the app with financial organizations’ information systems. It
reached out to several developers for help and chose Elinext.
Solution
The client had an already designed system when they came to us. It looked like a network
where the user interface (UI) connected with loan providers’ APIs via so-called events. Those
APIs were all different. Integrating one in the system required us to talk directly with our
client’s partners and test it together.
At the beginning of the project, the client requested two part-time Java developers and asked
for eight more four months later. But that was clearly too many of our people working on the
project. Finally, we assigned two full-time engineers who nailed the job using Agile
methodology.
2. Events
The loan request-response feature relies on events. A user applies for a loan, and the
application creates a JSON-formatted event in a cloud in Google Cloud Platform (GCP). The
event is queued and, come its turn, sent to an automated request distribution hub.
The system creates an event “Application created”, converts its data into the formats used by
each financial organization’s API and sends it to the organization, which can then either create
an offer or reject the request. Based on the choice made, the system creates an event
“Rejected” or “Offered” and lets the user know.
Integrations
The main challenge of this project has been connecting loan providers’ APIs with the
application. We have had to work closely with financial organizations that have their own
bureaucratic ways of doing things.
We have been using Gradle, Java and Spring to build the integrations. Each integration is a
separate project and service. It consists of the main module with components in controller,
service and model layers.
Integrations use HTTP and gRPC to process requests between different services. A shared
library module allows for the shared service, model and auto-configuration code. As a result,
the system doesn’t duplicate code.
We have been running automated unit tests with each new build. The method we used
combines the build tool Gradle with testing libraries and frameworks like JUnit, Spring Boot
Starter Test and Mockito. We also have been testing integrations manually through case
scenarios, sometimes together with loan providers in real time.
An average integration has taken us from one to three weeks to complete. As of this
publication, we have developed 16.
Statistics
We developed a statistics board for admins, which shows figures like how many loan
applications are in progress, accepted or rejected, how many requests resulted in an error, and
more. We used Prometheus to source the metrics and Grafana to visualize them.
Result
Elinext helped the startup cut its time to market. Today, the system processes around 3000
loan applications daily across 16 financial organizations. These figures will grow as we continue
to develop new integrations.
We have also gained unique experience in project management. We had to work out efficient
collaboration with multiple parties, our client and the lone providers traditionally mired in
bureaucracy. This has taught us some important lessons.