Its typical for an organisation providing microfinance services to have charges related to these financial products they offer. Most charges will likey be against any loan or savings programe that the organisation provides.
The typical kind of charge is a one-time charge and can be done as a:
- Fixed-amount: The charge is say 2 dollars no matter what.
- Percentage based: A percentage of some attribute of the service they provide e.g. 1% of loan principal
- Banded: The charge is determine based on falling with some 'band'
- Or some combination of the above (e.g. 1% of loan principal with a cap of 10 dollars)
Defining a Charge
In mifos x, we will allow a user to define a charge that can later by default be associated with products and accounts.
Right now we have a table called m_charge which is responsible for storing details of any charge definitions.
Note: Updating a charge definition simply changes the charge definition as is and does not mean all current uses of this charge definition change also.
Example of possible fields on UI for defining a
At present we only support charges:
- been applied to Loans (see ChargeAppliesTo.java)
- been collected at loan disbursement (see ChargeTimeType.java)
- been calculated using FLAT or % of Disbursed Amount (see ChargeCalculationType.java)
- can be set as active (only active defined charges are allowed to be associated with products)
- can be marked as a Fee or a Penalty type charge (is_penalty column on m_charge)
See Loan Charges: Fees and Penalties for application of charges against a financial product.