Target release
Epic
Document status
DRAFT
Document owner
Designer
Developers
QA

Goals

  • Allow Fineract to support basic open-ended credit, i.e, a loan account on which borrows can make multiple withdrawals subject to the total balance being lesser than a predefined limit.

Background and strategic fit

Fineract 1.x has good support for term loans , i.e loans wherein a complete repayment schedule is generated at the time of approval/disbursal. However, it lacks support for revolving credit / line of credits / open ended loans like credit cards. Introducing the same in Fineract-CN would help differentiate it from Fineract 1.x and encourage users having these requirements to implement Fineract-CN

Assumptions

The specification isn't comprehensive and builds on top of functionality already present in Fineract 1.x / enterprise forks of Fineract 1.x which are a pre-requisite to support an LOC (Line of Credit) product in its entirety, which include

  • All common loan product settings including fees, penalties, (indexed) interest rates, amortization, repayment strategies, multiple tranches, moratoriums, grace periods, arrears tolerance etc
  • Integration with accounting
  • Loan origination
  • Loan servicing including delinquency and defaults management
  • Collateral management
  • Customer net overdraft facilities
  • Customer exposure limits 

The specification instead focuses on the additional features required in the loan module to support open-ended credit

Requirements

#TitleUser StoryImportanceNotes
1Set product credit limitsAs an org user, I must be able to set the max credit limit for an open-ended LOC productMust Have
2Set product repayment frequency and rules for payment amounts

As an org user, I must be able to set the permitted frequencies for the repayment on the LOC product along with the minimum payment amount defined as one of the following

  • Flat amount (subject to being lesser than than current principal)
  • % of the outstanding amount
  • % of the outstanding principal


Must Have
3Associate LOC account to customer level overdraft facilityAs a loan officer, I must be able to optionally associate a LOC account to an existing customer level overdraft facility. Once I have done the same, the credit limit of this account is determined by the limit associated with the overdraft facility and the balance of other accounts linked to this facility.Nice to HaveSome institutions allow creating multiple customer level overdraft facilities. The customer can then have multiple accounts linked to each such facility.
4Full flexibility to update interest rates on active loc accounts 

As a loan officer, in addition to associate indexed interest rates to LOC accounts, I must be able to edit the applicable interest rate on an active LOC account. While doing so, I should not have any constraints other than

  • Abiding by the min / max interest rates associated with the product
  • The criteria that the effective date for new interest shall fall after the last interest posting on the LOC
Must HaveAs open-ended accounts are long running, this is a common requirement.
5System generates repayment schedule entry on payment due date

As a system user, I should be able to view details of the scheduled repayment on a LOC account on the repayment due date.

This schedule entry should be created as a part of the daily system batch jobs which updates the payment amount based on the rules for payment associated with this account.

Must HaveA fixed grace period is then associated with this new generated repayment schedule entry giving the customer sufficient time to make a payment

User interaction and design

Questions

Below is a list of questions to be addressed as a result of this requirements document:

QuestionOutcome
Do we need support for other common use cases like interest free periods after each tranche etc ?Yes, for simplicity, all such use cases are kept out of scope for the most basic LOC product

Not Doing