Clients can have different frequency loans FS
Release |
Maya G |
Current Owners |
Kay Chau |
Status (Draft, In Review, Approved) |
Draft |
Contents:
Introduction
Currently, clients in Mifos cannot have loans with a different-multiple frequency than their meeting, even with LSIM on. For example, a client that has weekly meetings is not allowed to have monthly loans. This is needed by our MFI's.
User Stories
Priority |
User Stories |
Section in FR |
---|---|---|
P1 |
As a user, I want to be able to create a different multiple frequency loan than my client's meeting frequency |
3.1 |
P1 |
As a user, I want to my reports to accurately reflect payments due, and other information, for my clients with different multiple frequency loans. |
3.2 |
Goals
- After this feature is implemented, a client's meeting frequency should have no bearing on the frequency of a loan created for the client.
- The same should be applicable for group loans.
Non-Goals
The following items will not be addressed in this release:
- This feature will only be available with LSIM on
- Decoupling of meeting frequency completely is not included. IE, client fees are not affected by this feature.
Definitions and Terminology
Term |
Definitions |
---|---|
User |
User of system |
- Mandatory fields will be preceded by "*" (an asterisk)
- Links are italicized
- Buttons are Button
Related Documents
Use Cases
Main Use Case - GK has weekly clients, with weekly group loans (tracked as client loans in Mifos), but once in awhile, they'd like to give a monthly loan to the client.
Basic Flow - Create a monthly non-variable installment loan for a weekly client
Actors
- Loan Officer
Preconditions
- Client has been created in Mifos and approved that meets weekly on Tuesdays
- Loan product has been created where the frequency of installments is 1 month, and the loan product is not a variable installments loan.
Basic Flow
- Loan officer logs onto Mifos, and navigates to the Create Loan workflow for weekly client.
- Loan officer selects the loan product created in Preconditions.
- Loan officer is allowed to continue, and the loan product details are correctly displayed.Â
- During the workflow, disbursal date is defaulted as normal - to the client's next meeting day.
- Under Repayment Day, month is selected, and day is greyed out. Existing values for a monthly loan for the Repayment Day frequency are still available, and continue to work as expected for a monthly loan. Loan officer selects to have the repayment day be the 2nd Thursday of every month.
- Loan officer continues to create the loan. Only monthly loan fees are allowed.
- New loan is saved.
Post-conditions
- Monthly loan is created for the weekly client. Schedule is correctly displayed, and payments are due every 2nd Thursday.
- CSE - if the LO enters CSE on the day a payment for a loan is due for that client, the payment due should show up correctly. When I enter to CSE on the repayment day - Thursday (which is 2 days after meeting), then it has set 'date of transaction' by default to meeting day (Tuesday), so there is no payment due in Collection Sheet.
Alternate Flows
- At step 4, Loan officer can change the disbursal date, and the loan schedule will be updated as for any other monthly loan.
- At step 5, Loan officer can update the available values to edit for Repayment Day - like changing the monthly loan from xth day of a month to xth date of a month
Alternate Flow - Create a monthly variable installment loan for a weekly client
Actors
- Loan Officer
Preconditions
- Client has been created in Mifos and approved that meets weekly on Tuesdays
- Loan product has been created where the frequency of installments is 1 month, and the loan product is a variable installments loan.
Alternate Flow
- At step 6, Loan officer continues to create the loan. Variable installments schedule is displayed, and Loan officer edits this as they please, following rules of loan product.
- Basic Flow continues.
Post-conditions
- Monthly loan is created for the weekly client. Schedule is correctly displayed, and payments are due according to variable installments set.
- CSE - if the LO enters CSE on the day a payment for a loan is due for that client, the payment due should show up correctly.
Alternate Flows
- At step 4, Loan officer can change the disbursal date, and the loan schedule will be updated as for any other monthly loan.
- At step 5, Loan officer can update the available values to edit for Repayment Day - like changing the monthly loan from xth day of a month to xth date of a month
Alternate Flow - Create a weekly loan for a monthly client
Actors
- Loan Officer
Preconditions
- Client has been created in Mifos and approved that meets monthly on 1st Tuesdays.
- Loan product has been created where the frequency of installments is 1 week.
Alternate Flow
- At step 5, Repayment Day has months greyed out, and you can only change which day of the week to change for repayment day.
- Basic Flow continues.
Post-conditions
- Weekly loan is created for the monthly client. Schedule is correctly displayed, and payments are due according to variable installments set.
- CSE - if the LO enters CSE on the day a payment for a loan is due for that client, the payment due should show up correctly.
Alternate Flows
- At step 4, Loan officer can change the disbursal date, and the payments are due for when the LO set the loan.
Basic Flow - Client has 2 loans of different frequencies at the same time
Actors
- Loan Officer
Preconditions
- Client in Mifos meets weekly. They have one loan that is weekly, and the other is monthly.
Basic Flow
- Client's performance history shows correct amounts for active loans, loan cycle per product, etc.
Alternate Scenarios
- Weekly Client can have weekly group loan, and monthly client loan.
- Weekly Client can have weekly client loan, and monthly group loan.
- Monthly Client can have monthly group loan, and weekly client loan.
- Monthly Client can have monthly client loan, and weekly group loan.
Functional Requirements / Acceptance Criteria
Mifos Application
FR # |
Pri |
Description |
Comments/Mockups |
---|---|---|---|
1.1 |
P1 |
Loan products available during Create Loan are now not restricted by frequency of loan. |
 |
1.2 |
P1 |
Loan creation continues as before, according to frequency of loan |
 |
1.3 |
P1 |
Variable installment loans should continue to work as expected |
 |
1.4 |
P1 |
Loans with declining balance - interest recalculation interest rate type continue to work, taking into account the loan's payment schedule |
 |
1.5 |
P1 |
Only loan fees that match the frequency of the loan can continue to be applied to the loan |
 |
1.6 |
P1 |
There are no changes in CSE to accomodate this new functionality. |
 |
1.7 |
P1 |
Backdated payments continue to work as expected. |
 |
1.8 |
P1 |
Repay Loan with interest waived or not continue to work as expected. |
 |
1.9 |
P1 |
Client can have more than 1 loan, each with different multiples of frequency |
 |
1.10 |
P1 |
A group can have more than 1 loan, each with different multiples of frequency. |
Testing scenario - be sure we test for different frequencies - some edge cases are a monthly client with a 5-week loan and a monthly loan, for example |
Mifos BI
FR # |
Pri |
Description |
Comments/Mockups |
---|---|---|---|
2.1 |
P1 |
Collection Sheet report accurately reflects payment due. |
 |
2.2 |
P1 |
Due vs Collected report, and other collection reports also accurately reflect what's due. |
 |
Standard Considerations
Security
Security (Permissions, Roles, and Data Scope) |
Yes/No |
Comments |
---|---|---|
Does the user need to be in a particular user hierarchy to use this feature? |
No |
 |
Does the office hierarchy affect use of this feature? |
No |
 |
Are you using any existing permissions to control this feature? |
Yes |
Must have ability to create loans |
Are you adding any new permissions or changing existing permission to control this feature? |
No |
Anybody can do this as long as they have the permission |
Are you using any existing activities to control this feature? |
No |
 |
Are you adding any new activities or changing existing activities to control this feature? |
No |
 |
Are there any special considerations for upgrade scenarios? What will be the default value for new permissions? |
No |
 |
What will be the default values for default roles in a new installation? |
No |
 |
Impacts to System
Impacts to System |
Yes/No |
Comments |
---|---|---|
Does this feature affect Bulk Loan Creation? How? |
No? |
Are we allowing this in bulk loan creation? |
Does this feature affect Collection Sheet Entry? How? |
Yes |
CSE should continue to work |
Does this feature affect Redo Loans? |
Yes |
Redo Loan should work with this |
Does this feature affect Undo Loans? |
No |
 |
Globalization/Localization
Globalization/Localization |
Yes/No |
Comments |
---|---|---|
Will this feature support users localizing data that they enter? |
No |
 |
Does this feature involve any date/time related data, and if so how should conversions be handled? |
Yes |
 |
Is there currency or other numeric data ? If so does it require any special handling or validation? |
No |
 |
Logging
Change Log
Change Log |
Yes/No |
Comments |
---|---|---|
Do changes to the data that is collected or stored by the new feature have to be fully logged by the system? |
No |
 |
Does the administrator configuring the system need the ability to turn on or off logging for this feature? |
No |
 |
Is the feature currently logged but the structure of the logged records changing? |
No |
 |
Reporting
Provide any relevant information about reporting requirements for the new features and answer the questions below, providing detail to explain any particular area when necessary.
Reporting |
Yes/No |
Comments |
---|---|---|
Does the feature affect any existing reports? |
Yes |
Reports need to continue to work - CSE, etc |
Does the feature require adding any new reports? |
No |
 |
Performance
Performance |
Yes/No |
Comments |
---|---|---|
Will the feature be a high use-case scenario? |
Possible |
 |
Will the feature have potential for high concurrency? |
No |
 |
Does the feature include complex UI or data gathering logic that will be used by a significant portion of the user base? |
No |
 |
Does the feature contain risks of database connection timeout or JSP page timeout? |
No |
 |
Will the feature contain any bulk insert/update/delete transactions? |
No |
 |
Will the feature contain any caching mechanisms or cache refreshing mechanisms? |
No |
 |
Could the feature result in a large amount of data being sent to the client or between the database and web server? |
No |
 |
Would users on a low bandwidth connection likely face issues with a part of this feature? |
No |
 |
Does the feature affect existing batch jobs or require adding any new batch jobs? |
?? |
 |
Setup and Installation
New Installations
New Installations |
Yes/No |
Comments |
---|---|---|
Will the feature include demo data? |
No |
 |
Does the feature require any data to be gathered at setup runtime? |
No |
 |
Backward Compatibility and Upgrades
Backward Compatibility and Upgrades |
Yes/No |
Comments |
---|---|---|
Is there any data conversion that needs to be done as part of an upgrade? |
No |
 |
Will customers lose data or will the way existing data is stored change significantly? |
No |
 |
Will another feature, workflow or portion of the data model be deprecated as a result of this new feature? |
No |
 |
Will existing role permissions be changed or impacted by this feature? If so provide details in the security section. |
No |
 |
Will existing customers need to learn a new UI process or change the way they use the system as a result of this new feature? |
No |
 |
Hosting Support
Hosting Support |
Yes/No |
Comments |
---|---|---|
If different user groups are using the same database, are there concerns over the sharing of data related to the feature? |
No |
 |
Are there expected to be performance related issues with having many customers sharing the same hardware in support of this feature? |
No |
 |
Does this feature require Sys Admin work to set up for clients? |
No |
 |
Configuration
Configuration |
Yes/No |
Comments |
---|---|---|
Does this feature require changes to configuration files? |
No |
 |
If so, is this feature enabled or disabled by default? |
N/A |
 |