The Fineract Credit Scorecard is a multipart implementation and integration. There are basically 3 main parts to this work;
The Credit Scorecard Rest Api module
The credit scorecard REST API module is one of the major components of this system, it is where all the algorithms for scoring have been implemented.
The module is python based built with Django and Django Rest Framework.
If you clone the project, iatthe root of the project directory you can see the various components of the system:
Component | Description | |
---|---|---|
1 | requirementst.txt | This file contains the python project dependencies. |
2 | openapi.yml | This file is the openapi schema file for rest api design and endpoints of the project. This schema is used in the generation of the various sdk clients. |
3 | Dockerfile | Docker build file. |
4 | docker-compose.yml | docker-compose file to easily start up the server. |
5 | build.gradle settings.gradle | These files contain the gradle build scripts for generating the sdk clients based on the openapi schema. |
6 | manage.py | Django project management tool. |
7 | server | In this directory we have the root of the scorecard module. It contains django's main application engine. |
8 | scorecard-client | Clients directory holds the various supported clients of the system. |
9 | scorecard-plugin | A Fineract Plugin for flexible integration with fineract following a similar pattern as the fineract-pentaho plugin |
10 | app | Simple web app with bootstrap. Renders the main page of the application |
11 | api | The API module. Contains designs and implementations for the REST API endpoint. This module has some core modules to track and deliver every transactions on the system through APIs. The API has some core models that enables it to handle these processes:
|
12 | ml | The machine learning engine. Contains the code for the machine learning algorithms and designs. |
13 | statistical_scripts | The statistical engine. Contains the code for statical scoring operations. |
14 | zoo | The zoo is a store. It serves as repository for the trained models and the datasets used. |
Fineract 1.x Integration
Fineract 1.x serves as the reference backend integration. It has in it the a reference architecture for the scorecard plugin.
Follow the guide at fineract-credit-scorecard/README.md (github.com) to learn how to run fineract with scorecard plugin
Mifos web-app integration
The Mifos web-app serves as reference frontend integration and has the architecture to use the new Fineract 1.x upgrades in the Fineract API.