Functional Specifications

The information presented below may be used as a guide for planning your installation and setup of Mifos. You may decide in advance how to best configure Mifos to reflect your organization’s structure, practices, account types, terminology, the type of information you retain about each client, and even your holidays. We strongly recommend that you review this information prior to setting up and using Mifos. 

0
Your rating: None

Mifos System Setup

Initial settings to set up Mifos including Internationalization, Properties Files, and certain setups under Administrative Configuration.

0
Your rating: None

Internationalization

Mifos is currently available in English, French, Spanish, Chinese, and Portuguese and supports localization into additional languages. Mifos is designed using internationalization (il8n) standards.  Mifos can be localized through an online translation tool called Translatewiki.net;  more information can be found here.

All components that ship with Mifos are internationalized (including those stored in the database or XML files) and localizable, depending on the language chosen by the MFI.

Note the following for Mifos:

Country. An MFI can belong to only one country, which is specified during installation.

Currency. Currently, Mifos supports only a single currency per installation.

  • Currently, Mifos does not support the use of a comma as a decimal separator (i.e., one can’t use 10,000 instead of 1000.00)
  • A rounding rule can be specified for the currency. [link to general rounding rules]

Time zone. MFIs can belong to only one time zone. Mifos stores and displays all operations/transactions in the server time zone.

Date formatting. Mifos supports DD/MM/YYYY as the date format (not MM/DD/YYYY).

0
Your rating: None

System Configuration

Mifos needs to be configured before it can be deployed.  Please read this page carefully before deploying Mifos.  It includes details on how to customize your properties file, set database settings, and also how to configure certain options such as Lookup Options and Hidden/Mandatory Fields through the Admin tab in Mifos.  Explanations of Administrative configuration can be found here as well. 

Manage Mifos Shutdown and User Administration

In Shutdown Mifos, an Administrator can manage a pending shutdown of Mifos and view users that are logged into Mifos.   The Administrator must have the permission "Can Manage Shutdown" in order to do this.

An Administrator can enter the amount of time before planning to shutdown Mifos, then Start Shutdown to start the process.  After Start Shutdown, no more users are allowed to log onto Mifos and will get an error message if they try to do so.  All other users that are already logged in get a message at the top of their screen notifying them that a shutdown will occur and that they will be logged off at that time.

If the Administrator changes their mind, they can Cancel Shutdown, and this will return Mifos back to normal.  Users that are logged on will not see the message at the top anymore, and new users are able to log on.

This page also includes a list of all users that are logged onto Mifos, their branch office, their first and last names, and also what page they are on in Mifos.

0
Your rating: None

Administrative Configuration

Introduction

The following configurations can be defined at the time of installation and changed at any time using links in the Manage organization section on the Admin tab.  The following describes in details what options and labels are available for administrative configuration.  For the latest details on how to configure these, see this section in Configuring Mifos.

UI text labels

Mifos allows the following labels to be renamed from the Define labels link on the Admin tab. The new labels will then appear throughout the Mifos UI.  New labels should retain the same meaning as the original label (For example:  you should not rename the label "Active in Bad Standing" to "Active in Good Standing".)

These labels are:

  • Interest
  • Office Hierarchy:  Names of offices at each level. For example, Head office can be renamed to “Home” etc.
  • Client
  • Group
  • Center
  • Payment Modes: Cash, Check and Vouchers can be renamed.
  • Product Types:  Loans and Savings can be renamed
  • Bulk Entry
  • Grace types:  None, Grace on all repayments, Principal only grace
  • Personal Information
    • State
    • Postal Code
    • Ethnicity
    • Citizenship
    • Handicapped
    • Government ID
    • Address fields- Address 1; Address 2; Address 3
  • States: All states for all entities can be renamed. [labeled status in the UI]
  • Miscellaneous: Interest, External ID, Bulk entry

Look-up options

Look up options for the following attributes can be defined and specified during installation. Post-deployment, the options should not be deleted. However, more options can be added in each list, from the Define lookup options link on the Admin tab.

  • Salutation
  • User title
  • Marital Status
  • Ethnicity
  • Educational level
  • Citizenship
  • Business activity
  • Purpose of loan
  • Handicapped
  • Collateral type
  • Officer title
  • Mode of Payment

Mandatory/Hidden Fields

Mandatory/Optional Fields

The client account attributes table describes which client attributes are mandatory and which are optional. But some attributes can be specified as mandatory/optional to suit the specific needs of different MFI’s. The rules around the entity creation and modification will depend on these data fields; therefore this classification into mandatory/optional fields should be done only before deployment and should not be modified later. These attributes are listed below:

System Wide (all applicable, such client, group, and center, personnel)

  • External ID
  • Ethnicity
  • Citizenship
  • Handicapped
  • Loan- Purpose of loan
  • Education level
  • Handicapped
  • Photo
  • Address1- This is applicable to address 1, city, state, country and postal code for that address

Client / System User fields

  • Second last name- This is applicable for clients, client’s spouse/father and personnel
  • Middle name - Same as above
  • Government ID
  • Poverty Status
  • Phone Number
  • Trained On
  • Trained
  • Business/work activities
  • Number of Children

Loan

  • Purpose of Loan
  • Source of Funds

 

Hiding Fields

In addition, some data fields can be completely hidden from the Mifos UI.  This should also be done pre-deployment, and should not be modified later.  These are:

System Wide (all applicable, such client, group, and center, personnel)

  • External ID
  • Ethnicity
  • Citizenship
  • Handicapped
  • Education Level
  • Photo
  • Assigning client to positions
  • Address 2
  • Address 3
  • City/District
  • State
  • Country
  • Postal Code
  • Receipt ID and date
  • Collateral type and Collateral notes

Client / System User Fields

  • Middle Name- can be hidden separately for client, spouse/father and personnel
  • Second last name- can be hidden separately for client, spouse/father and personnel
  • Government ID
  • Poverty Status
  • Phone Number
  • Trained (Client + Group)
  • Business / Work activities

Accepted payment types

Mifos supports the following payment types, which are required for reporting purposes and have no financial implications:

  • Cash
  • Voucher
  • Checks

For each of the transaction types listed below, one or more of the above payment types can be set as Acceptable, from the Define accepted payment types link on the Admin tab. Only the accepted payment types will then be available as the possible mode(s) of payment for the transaction type. Once a payment type has been included as an accepted payment type for a transaction, it should not be removed as it can affect existing transaction entries. Transaction types are as follows:

  • Payment types for clients/group/center fees
  • Payment types for disbursements of loan amounts
  • Payment types for loan repayments
  • Payment types for withdrawals from savings accounts
  • Payment type for deposits in savings accounts

The payment type for collectoin sheet entry is always Cash only.

Note: Payment types have no direct impact on GL codes. An MFI, recognizing that all of its loan disbursements are handled via checks, might assign a particular GL code that has a correlation to a checking account. The logic for that is outside Mifos.

Custom fields

In addition to the pre-defined fields, an unlimited number of custom fields can be used to define user data, through the Define additional fields link on the Admin tab.  These can be either personal or MFI-related fields.

  • Custom fields can be text or numeric.
  • The MFI provides the label and the content of these fields.
  • Custom fields are positioned at the bottom of the UI.

Creation of custom fields

The categories for which a custom field can be created as well as the type of custom field are pre-defined. A user with required permissions can create new custom fields.

The rules and attributes for custom field creation are provided in the table below. The table also shows those values that can be edited after a custom field is created. 

Attribute Name

Data type

Range

Can be modified after definition

Description /Notes

Category

Drop down- Single select

Client, Group, Center, Loan, Savings, User, Office

No

 

Label

Text

N/A

Yes

The change, if any, will be applicable to all the existing and new records or accounts

Data Type

Drop down- Single select

Text; Integer

No

 

Default Value

   

Yes

The change, if any, will be applicable to all the new records or accounts

Mandatory

Checkbox

 

Yes

The change, if any, will be applicable to all the new records or accounts

Checklists

Checklists remind users of the internal processes required before the status of accounts or customer records can be changed. Checklists are optional, and can be created and associated with certain states of customer records or accounts. Checklists are not attached to individual customer records or accounts, but are displayed in between state changes. For example, if the system administrator defines a checklist for the Pending Approval state of a loan account, every time a user attempts to change the state of a loan account to Pending Approval, the checklist is displayed to the user. The user can then make sure each condition on the checklist has been satisfied.  Note that a user's responses to the checklist are not saved.

A checklist is defined for the destination state and is not dependent on the source state. At most one checklist is allowed for each destination state in clients, groups, centers, loan accounts and savings accounts.

Only the latest version of a checklist is maintained in the system. Checklists can be modified and or made inactive.

Checklists are defined and saved using the Define new checklist link on the Admin tab, so that they can be attached to states of customer records and accounts. Attributes of checklists are provided in the following table:

Attribute Name

Range

Mandatory for Active/Inactive states

Can be Modified after Definition or not?

Remarks

Name

50 char

Yes

Yes

 

State

Active or Inactive

N/A

Yes

If the checklist is Inactive, it is not displayed in the respective state transitions. When a checklist is created, the state is Active by default.

Type

Client, Group,
Center,
Loans, Savings

Yes

Yes

 

Displayed when moving into status

States applicable to the selected type (i.e., Client, Group, Center) Loans, or Savings)

Yes

Yes

Status applicable to the type selected

Created Date

N/A

N/A

N/A

System generated

Created By

N/A

N/A

N/A

System generated

Items

N/A

At least one item is mandatory.

Once specified, an item cannot be modified. But it can be deleted.

These are line items with a size limit of 250 characters per line item. There is no maximum limit on the number of items that can be included in a checklist.

 

Attaching checklists to states

The saved checklists are attached to states of accounts or customer records according to the type and state specified during creation, as follows:

  • Type: Loan; Savings; Client; Group; or Center
  • Status: All statuses specific to the type. For example, a checklist can be defined for Type = Clients, and Status= Pending Approval. In this case, the checklist is displayed whenever any client record status is changed to Pending Approval. In a similar manner, a checklist can be attached to any state transition for all the types listed above.
  • Exclusion: Checklists for following states cannot be defined (not required):
    • Groups and clients: Partial Application state
  • Exclusion: Checklists will not be displayed during creation of a client, group, center, loan or savings account.
  • On the checklist (during a state change), a checkbox appears against each line item defined. The user checks the box when the particular line item has been satisfied.
  • All items on the checklist are considered mandatory by default and they will have to be checked before the state transition is accepted by the system.
  • Responses to the checklists

Holidays, Moratoriums, and Non-Working Days

Working and non-working days can be specified during configuration.   The property FiscalCalendarRules.WorkingDays is used to specify which days of the week are working days.  For details on these properties and how to configure them, see this section in Configuring Mifos.

Holidays and Moratoriums can be defined from the Admin tab by a user with appropriate permissions using the Define new holidays link.  By default, no holidays are defined.  Each holiday is specified by a name and from/to dates, which are inclusive and apply only to future dates. A holiday is also defined by a repayment rule, which is used for the rescheduling of meetings and repayments that fall on that holiday(s).

Holidays/Moratoriums and Offices

Holidays and Moratoriums can be applied at the branch office level up to organization wide.  When creating a holiday, the office hierarchy is displayed (depending on how your Mifos is configured) and offices below Head Office can be selected.  If a parent office is selected (any office above a branch), all offices below that office inherit the holiday as well.  It is also possible to individually select one or more branch offices that a holiday applies to. 

Repayment Rules

The same options can be set for holidays and non-working days, and these apply to both.

The rule options are:

  • Same day: Meeting/repayment will be assumed to be on the same day even if it’s a holiday or non-working day.
  • Next meeting/repayment day: Meeting and client account payment will be shifted to next meeting. Repayment will be shifted to next repayment day.
  • Next working day: Meeting/repayment will be shifted to next working day.
  • Moratorium: Meeting and repayment schedules are pushed out.  Schedules resume after moratorium is over. 

The rule can be defined for or after specific meetings, loan disbursal dates and loan repayment dates are scheduled, with the following implications:

Meetings: Meetings cannot be scheduled to regularly fall on a non-working day. If a meeting occasionally falls on a non-working day (for example, if meetings are scheduled for the third day of every month, which may occasionally fall on a non-working day), then the system moves the meeting according to the rule defined. The collection sheet will be updated according. [Note: if repayments are moved to the next meeting, then attendance is counted twice?]

Loan disbursement date: For loans not yet disbursed, the user cannot specify a disbursement date that falls on an existing non-working day. If the non-working day is defined after the disbursement date is set, the system changes the date according to the rule defined. The system validates the first repayment date at the same time.

Loan repayment schedule: The repayment schedule is calculated factoring in known non-working days. If a non-working day is defined after a loan repayment schedule is calculated, the system updates the payment dates and updates the repayment schedule for the loan. Note that no changes to interest are made, even if the balance declines. If multiple repayment dates are affected, then all of the repayments that were delayed by the holiday must be repaid together on the next scheduled repayment date, according to the rule defined.

Mandatory savings deposit schedules, voluntary deposit schedules, and client fee schedules also take non-working days into account.

Meetings and payments that are rescheduled are flagged in the schedule display with a *.

 
last modified 2010-07-18 04:49
0
Your rating: None

Chart of Accounts

Introduction

The Chart of Accounts (CoA) is a list of accounts in the general ledger, systematically classified by title and number. The account number is referred to as the GL code. The appropriate financial transactions are posted against these GL codes. Mifos provides a default CoA.  From Mifos 1.1 onwards, the CoA configuration is in XML.  This section in Configuring Mifos describes how to customize your own CoA.

See also: Microfinance Accounting Issues

All offices under the HO use the same CoA. The list of accounts is organized into the following general ledger categories:

  • Assets
  • Liabilities
  • Income
  • Expenditure

The Mifos CoA supports up to four levels of categories.

  • The first level is called a category, and consists of ASSETS, LIABILITIES, INCOME and EXPENDITURE. These categories cannot be removed or modified and new categories cannot be added.
  • Categories are followed by up to three levels of sub-categories. MFIs can rename the description of default subcategories.
  • Sub-categories can be added to the CoA within the approved structure, as defined in this specification. The updates, if any, will be reflected in the respective acceptable GL Codes list for the different entities.  For example, if a GL code for interest has been added in CoA, then when creating a loan product, the drop down box for the Interest GL code is populated with options from the CoA.

Default Chart of Accounts

Mifos supports and ships with the following CoA in the configuration file.

Please review the following information very carefully:

  • Required general ledger accounts are in BOLD. Required means Mifos depends on their existence: GL code, name, and location must be exactly as shown below.
  • Names and GL codes cannot be changed for required GL accounts.
  • Subcategories may be added underneath any GL account. Follow this procedure to do so. Once a GL account is added and Mifos is started, only the name may be changed.
  • GL codes and names may be alphanumeric. Only numeric GL codes have been tested, however, so experiment at your own risk.
  • You may remove any subcategory, but financial action mappings must exist as specified here.
  • You may change the name of any general ledger subcategory, but we recommend following standard accounting practices.

 

10000 -- ASSETS
    11000 -- Cash and bank balances
        11100 -- Petty Cash Accounts
            11101 -- Cash 1
            11102 -- Cash 2
        11200 -- Bank Balances
            11201 -- Bank Account 1
            11202 -- Bank Account 2
    13000 -- Loan Portfolio
        13100 -- Loans and Advances

            13101 -- Loans to clients
            13102 -- Emergency Loans
            13103 -- Special Loans
        13200 -- Loan Loss Provisions
            13201 -- Write-offs
20000 -- LIABILITIES
    22000 -- Interest Payable
        22100 -- Interest payable on clients savings
            22101 -- Interest on mandatory savings
    23000 -- Clients Deposits
        23100 -- Clients Deposits
            23101 -- Savings product 1
            23102 -- Savings product 2
    24000 -- Mandatory Savings
        24100 -- Mandatory Savings
            24101 -- Mandatory Savings Accounts
30000 -- INCOME
    31000 -- Direct Income
        31100 -- Interest income from loans
            31101 -- Interest on loans
            31102 -- Penalty
        31300 -- Income from micro credit & lending activities
            31301 -- Fees
            31302 -- Processing Fees
            31303  -- Annual Subscription Fee
    31401 -- Income from 999 Account
40000 -- EXPENDITURE
    41000 -- Direct Expenditure
        41100 -- Cost of Funds
            41101 -- Interest on clients voluntary savings
            41102 -- Interest on clients mandatory savings

GL Code Changes

Users should not edit a GL code post-installation. The CoA is set once in Mifos, at implementation time. Thereafter, the existing GL Codes should not be edited/deleted. However, new GL Codes can be added under defined sub-categories.

Debit/Credit Financial Transactions

Mifos is required to make debit/credit entries, in a transactions table, when a transaction is made. The entries should be made against the lowest level GL Code under a category. For example, a fee transaction is:

  • Dr 31303 (loan fees)
  • Cr 11201 (bank account)

An example of complete financial transaction: If a loan payment of Rs. 1000 is received (by cash) for installment 3 on Jan 1st, 2006 and a user with username mariea records it in the system on Jan 3rd, 2006, Mifos will make the following entries in the transaction table:

 

Column Name Description
Date Date of transaction- 01/01/2006
Payment ID System generated payment ID
Payment Type Cash
Receipt/check number and date As specified by the user
Transaction ID System generated transaction ID
Related transaction ID - (relevant only for an adjustment)
Installment number 3 since the payment is made for installment 3
Type Payment recd
GL Code  
Debit -
Credit 1000
Balance Remaining loan balance (remaining principal + interest + fees ) to be paid
Date posted 01/03/2006
Posted by Mariea
Notes -

Posting Rules

The CoA is divided into four categories: ASSETS, LIABILITIES, INCOME and EXPENDITURE. The sign of the entry depends on whether it’s a Dr or a Cr AND under which category it is being recorded. The category is included in parenthesis for each accounting entry. While making the accounting/financial entries, the following rules should be used for the signs based on which category the entry falls under.

Assets and Expenditure

  • Dr- Increase
  • Cr- Decrease

Liabilities and Income

  • Dr- Decrease
  • Cr- Increase

Transaction Entries

Events that require a debit/credit entry are listed below.

Clients/Groups/Centers Transaction Entries

Fee is received from client/group/center:

  • DR Cash (Assets) 11201
  • CR Fees (Income) 31301 (exact GL Code to be picked from fee definition)

Misc fee is received from client/group/center:

  • DR Cash (Assets) 11201
  • CR Fees (Income) 31301

Misc penalty is received from client/group/center:

  • DR Cash (Assets) 11201
  • CR Penalty (Income) 31102

Adjustment in client/group/center accounts when the last received amount is nullified.The last payment has to be broken down in the components and separate DR/CR entries must be made for each one of them.

Fee /Misc fee nullified:

  • DR Fees (Income) 31301 (exact GL Code to be picked from fee definition)
  • CR Cash (Assets) 11201

Misc Penalty nullified:

  • DR Penalty (Income) 31102
  • CR Cash (Assets) 11201

Loan Account Transaction Entries

Loan is disbursed:

  • DR client’s loan (Assets) 13101 (exact GL Code to be picked from product definition)
  • CR Cash (Assets) 11201

Principal installment received:

  • DR Cash (Assets) 11201
  • CR client’s loan (Assets) 13101 (exact GL Code to be picked from product definition)

Interest installment received:

  • DR Cash (Assets) 11201
  • CR Interest on Loan (Income) 31101 (exact GL Code to be picked from product definition)

Fee charged is received:

  • DR Cash (Assets) 11201
  • CR Fees (Income) 31301 (exact GL Code to be picked from fee definition)

Penalty charged is received:

  • DR Cash (Assets) 11201
  • CR Penalty (Income) 31102

Misc fee charged is received:

  • DR Cash (Assets) 11201
  • CR Penalty (Income) 31102

Misc penalty charged is received:

  • DR Cash (Assets) 11201
  • CR Penalty (Income) 31102

Adjustment, where last payment is nullified. The last payment has to be broken down in the components and separate DR/CR entries must be made for each one of them.

Principal nullified:

  • DR client’s loan (Assets) 13101 (exact GL Code to be picked from product definition)
  • CR Cash (Assets) 11201

Interest nullified:

  • DR Interest on Loan (Income) 31101 (exact GL Code to be picked from product definition)
  • CR Cash (Assets) 11201

Fee nullified:

  • DR Fees (Income) 31301 (exact GL Code to be picked from fee definition)
  • CR Cash (Assets) 11201

Penalty nullified:

  • DR Penalty (Income) 31102
  • CR Cash (Assets) 11201

Loan account is moved to Closed- Written off state

  • DR Loan loss provision (13201) X Amount
  • CR Client’s Loan (13101 or 13102, etc) X Amount

Savings Account Transaction Entries

Deposit is made in voluntary/mandatory savings account:

  • DR Cash (Assets) 11201
  • CR Savings Accounts (Liabilities) 23101 (exact GL Code to be picked from product definition)

Withdrawal is made in voluntary/mandatory savings account:

  • DR Savings Accounts (Liabilities) 23101
  • CR Cash (Assets) 11201

Interest is posted to the account:

  • DR Interest Payable – Mandatory/Voluntary Savings (Expenditure) 41101/41102 (exact GL Code to be picked from product definition)
  • CR Mandatory Savings Accounts (Liabilities) 24101 (exact GL Code to be picked from product definition)

Adjustment- Voluntary/Mandatory: last deposit is nullified/decreased/increased. A reverse entry of the original transaction should be made. Also, a fresh entry with the new deposit amount should be made.

Adjustment- Voluntary/Mandatory: last withdrawal is nullified/decreased/increased. A reverse entry of the original transaction should be made. Also, a fresh entry with the new withdrawal amount should be made.

Adjustment: Account balance is reduced:

  • DR Mandatory Savings Accounts (Liabilities) 24101 (exact GL Code to be picked from product definition)
  • CR Cash (Assets) 11201

Adjustment: Account balance is increased:

  • DR Cash (Assets) 11201
  • CR Mandatory Savings Accounts (Liabilities) 24101 (exact GL Code to be picked from product definition)

Adjustment: Interest earned is reduced:

  • DR Mandatory Savings Accounts (Liabilities) 24101 (exact GL Code to be picked from product definition)
  • CR Interest Payable – Mandatory/Voluntary Savings (Expenditure) 41101/41102 (exact GL Code to be picked from product definition)

Adjustment: Interest earned is increased:

  • DR Interest Payable – Mandatory/Voluntary Savings (Expenditure) 41101/41102 (exact GL Code to be picked from product definition)
  • CR Mandatory Savings Accounts (Liabilities) 24101 (exact GL Code to be picked from product definition)

Rounding: 999 account

Amounts entered in the system should be stored as per the decimal precision specified by MFI. Amounts should be rounded only in the specific circumstances described below. Loan disbursal amounts should not be rounded.

Loan repayments:

  • The repayment amount for each installment is calculated based on the product definition.
  • If the total of principal, interest, fee and penalty is not rounded, the system rounds the total as per the rounding rules. Then the principal amount is adjusted so that total = sum of principal, interest, fee and penalty.
  • The extra/less principal paid in all the installments is then adjusted in the principal amount of the last installment.
  • The total of the last installment is rounded during actual payment and the excess/deficit is logged as the 999 account entry given below:
  • For example, if each installment total is 50.5, which after rounding becomes 50, the 0.5 from each installment is increased in the last installment. The last installment is adjusted for each installment’s rounding.

When the rounding of loan repayment increases 999 account balance:

  • DR client’s loan (Assets) 13101 (exact GL Code to be picked from product definition)
  • CR 999 Account (Income) 31401

When the rounding of payment decreases 999 account balance:

  • DR 999 Account (Income) 31401
  • CR client’s loan (Assets) 13101 (exact GL Code to be picked from product definition)

The following rounding rules apply to savings accounts:

  • Rounding is not required for deposits and withdrawals, because these are user entered values and the assumption is that the user will enter only a physically exchangeable amount.
  • Rounding is not required when interest is posted to savings accounts.
  • Rounding is required when a savings account is being closed and the total balance is not a rounded amount. In this case, a withdrawal entry for the rounded amount is made. In addition, the following 999 account entry is made to adjust the excess/deficit balance:

When the withdrawal in savings increases the 999 account balance:

·         DR Mandatory Savings account (Liabilities) 24101

·         CR 999 Account (Income) 31401

When the withdrawal in savings decreases the 999 account balance:

·         DR 999 Account (Income) 31401

·         CR  Mandatory Savings account (Liabilities) 24101

Example:

Payment of $100 for loan repayment is received by the MFI. This payment includes payment for the principal ($60), interest ($25), fee ($10) and penalty ($5). The following transaction entries are made:

  • DR Cash (Assets) 11201; amount 60
  • CR client’s loan (Assets) 13101; amount 60

 

  • DR Cash (Assets) 11201; amount 25
  • CR Interest on Loan (Income) 31101; amount 25

 

  • DR Cash (Assets) 11201; amount 10
  • CR Fees (Income) 31301; amount 10

 

  • DR Cash (Assets) 11201; amount 5
  • CR Penalty (Income) 31102; amount 5

Out of Scope

Merging of Sub-Categories

System handling of merging of subcategories as long as the functionality ID of the category is not modified. Guidelines on merging will be included in the installation document. For example, for the above CoA, following merging will be supported:

22000

Interest Payable

 

22100

Interest payable on clients' savings

22101

Interest on mandatory savings

22102

Interest on mandatory savings

23000

 

Clients' Deposits

 

23100

Clients' Deposits

23101

Savings accounts

24101

Mandatory Savings accounts

Miscellaneous

  • Front end for CoA
  • Status field for GL Codes
  • Importing/Exporting of CoA
  • Deleting of a GL Code
  • Adjustments- GL Codes
  • Insurance
  • Programs
  • Following entries in Chart of Accounts
    • Deposits for short term investments
    • Interest receivable- other interest receivable
    • Inter entity/project donor/HO/branch balances
    • Other assets
    • Investments- long term
    • Fixed assets
    • Liabilities- accrued expenses and payables; loans payable- short term; loans payable- long term; grants from donors; reserves; unearned interest on loans
    • Direct income- interest income from investments; other income
    • Other income
    • Expenditure- personnel; Board expenditure; Occupancy expenditure; Cleaning expenditure; Licenses and insurances expenditure; Postages and telephones; Advertising expenses; Printing and stationary expenses; Travel and entertainment expenses; Repairs and maintenance expenses; Rental expenses- equipments
    • Charges- Finance charges; Professional charges; Training charges
    • Depreciation
    • Other expenses
    • Sub codes- entity; department;
0
Your rating: None

Currency and Rounding Rules

Currency and Rounding Rules

Mifos supports a single currency for an MFI and its offices.  Mifos also supports setting an additional currency specifically for loan products and loan fees.

  • Amount to be rounded to and the rounding rules are specific to each currency.
  • Rounding rule for a currency is one of the following:
    • Round up: The amounts are rounded to the nearest acceptable number. For example, if the lowest amount to be rounded to is INR 10, and the user enters 13.4454, it is displayed as 20. If the user enters 113, it is displayed as 120.
    • Round down: The amounts are rounded down to the lowest amount. For example, if the lowest amount to be rounded to is INR 10, and the user enters any number between 10 and 20 (20 not included), it is stored and displayed as 10.

The system adjusts the last installment (increase or decrease) for loan accounts to handle the amount changed due to rounding. For example, if the actual repayment due = 181.95 and after rounding it becomes= 181, the system adds the 0.95 to the last installment due.

 

last modified 2010-04-14 14:40

0
Your rating: None

Sources of Funds

Introduction

Funds are donations or grants provided to the MFI specified purpose. Such funds remain even when the specified purpose is achieved and accomplished since they would be accounted for as sources of funding which remain in equity.

Fund Creation

Sources of funds can be managed (created and modified) at the HO and other offices will inherit the details of these funds.

Attributes for Funds

Sl. No. Name Data Type Default Range Mandatory for Fund creation Can be modified after creation Description
1. Fund Name Text None N/A Yes Yes It should be a unique value in the system
2. GL Code Drop-down, Single select None fund Codes for funds from CoA Yes No  

The defined funds will be associated with loan products through loan product definition. When a new fund is created or an existing fund is modified, the additions/modifications should be reflected in the list of funds in each loan product.

Default Source of Funds

Mifos is shipped with the following source of funds:

1. Project/donor: for funds  
00 Non Donor
01 Funding Org A
02 Funding Org B
03 Funding Org C
04 Funding Org D 
 
last modified 2009-01-30 00:47
0
Your rating: None

MFI Information Setup

Entities to set up that pertain to an MFI such as Offices, Users, Fees, Products (Loans and Savings), Meetings, and Checklists

0
Your rating: None

Office Setup

Introduction

During the initial system configuration, an MFI can configure offices at the following levels. The hierarchy as well as the names of offices can be defined from the Define a new office link on the Admin tab. The middle three levels are optional.

  • Head Office (HO)
  • Regional Office (RO)
  • Sub-Regional Office
  • Area Office (AO)
  • Branch Office (BO)

The head office (HO) is the main or parent office for an MFI and is automatically created by Mifos.  Users can optionally create regional offices (RO), sub-regional offices, and area offices (AO), which exist primarily for managerial and administrative purposes.  System users with appropriate permissions can create BOs, which are the only offices to which clients can belong. This is the level at which all client interactions take place. The office hierarchy is defined from the View office hierarchy link on the Admin tab.

Once an office is defined as an HO or BO, it cannot be changed into a different office type, such as regional office, sub-regional office or area office. However, offices of these three types can be changed to any other level except for HO.

Note:  If an AO or HO wants to create clients and offer services to the clients, they need to create a “virtual branch” to which clients are then assigned.

Attributes for office creation

The rules and attributes for office creation, provided in the table below, are divided into two groups:

  • Attributes defined during office creation, which can also be viewed/edited later on from the office details page.
  • Attributes that can be viewed/edited only after office creation, from the office details page.

 

s. no. attribute name

data type

range Default Editable in Active/Inactive States mandatory for "active" description/notes

Attributes During Office Creation

1. Office Name Alphanumeric N/A None Yes Yes This is a unique name for this office within the MFI.
2. Office Short Name Alphanumeric (Maximum four characters without space) N/A None Yes Yes This short name is used for internal reports, UI pull-downs, etc. This must be unique within the MFI.
3. Office Type Drop-down The complete list includes: Branch Office; Area Office; Sub- Regional Office; Regional Office, and Head Office. Depending on the levels present in office hierarchy, this list changes None No Yes This is the name of the office level. This should be selected from the list.
4. Parent Office Drop-down The complete list includes: Area Office; Sub- Regional office; Regional Office; Head Office. Depending on the levels present in office hierarchy, and office type of the office being created, this list changes. None Yes Yes This is the name of the office this office reports to. This should be selected from a list of already defined offices. The HO does not have a parent office. For all other offices, offices above their level can be the parent office. For example, an HO, AO, or SO can be the parent office of a BO. Any offices above its level can be the parent office of an AO, based on the defined office hierarchy.
5. Address 1 Alphanumeric N/A None Yes Yes This is the address of the office
6. Address 2 Alphanumeric N/A None Yes No  
7. Address 3 Alphanumeric N/A None Yes No  
8. City Drop-down N/A None Yes Yes  
9. State Drop-down N/A None Yes Yes  
10 Country Drop-down N/A None Yes Yes  
11 Postal Code Alphanumeric N/A None Yes Yes  
12 Telephone Alphanumeric N/A None Yes No  
13 Question Groups Alphanumeric/Numeric/Date N/A N/A Yes No For details, refer Question Groups.

Attributes Viewable/Editable Only After Creation

14 Status Drop-down Active; Inactive Active Yes N/A HO cannot be made inactive.
By default when an office is created it would be in Active state. The state can be modified later on from the Details page.
15 Office ID N/A N/A N/A N/A Yes This is the system generated ID for the office.

 

Office states

By default, offices are created in Active state. New users can be assigned to offices only in Active state. Offices at all levels, except HO, can be made Inactive according to the following rules:

  • A BO can be made Inactive only if all the clients, groups, and centers in the BO are in Closed or Cancelled states, and all users belonging to the BO are in Inactive state.
  • Offices at other levels can be made Inactive only if all users belonging to the office are in Inactive state and all the child offices are in Inactive state.
  • Offices can only be made active if the parent office is active.
  • The status of an office can be changed from Active to Inactive, and vice versa, any number of times.
 
last modified 2009-08-21 09:33
0
Your rating: None

User Setup

Introduction

Mifos system users must be unique in the system. Uniqueness is confirmed by their government ID, if available, or their name and date of birth. All users are assigned to a specific office.  Users that belong to branches can be identified as either non-loan officers or as loan officers, which impacts their data scope (enter link). Users are allowed to perform activities in Mifos based on their user role, which is a collection of permissions. Only users in an Active state can access the system.

At each office, any user with the required permissions can create, view and manage other users in his/her data scope, through the Define new system user link on the Admin tab. A user is created with the following attributes, some of which can be modified after creation.

Attributes for User Creation

s no. attribute name/th> data type range default mandatory for active state editable after active state can be modified by user from the my setting section description/notes
1. First Name Alphanumeric N/A None Yes Yes Yes For details, see Name.
2. Middle Name Alphanumeric None None No Yes Yes  
3. Second Last Name Alphanumeric None None No Yes Yes  
4. Last Name Alphanumeric None None Yes Yes Yes  
5. Office Click and select As per data scope of logged in user. None Yes Yes No This is selected from a list of offices. The values in the list are dependent on the data scope as per office hierarchy.
6. User Title Drop-down Options defined by HO None No Yes No This is the personnel's actual title in the office, like CFO, Accountant, and Sr. Loan Officer.  These titles are defined by the MFI.
7. User Hierarchy Drop-down Loan Officer; Non-Loan Officer None Yes Yes No User hierarchy and the office level define the data scope of the user. Refer Data Scope

The Loan Officer user hierarchy exist only at the BOs.  Users at other office levels are all non-LOs.

Note: Clients can be assigned to LOs only. Clients and LOs must belong to the same branch.

8. Email Alphanumeric N/A None No Yes Yes  
9. Roles Drop-down - Multi- select All Defined Roles None No Yes No One or more roles can be selected from a list of membership roles. For more details, see Roles.
10. Government ID # Alphanumeric N/A None As per configuration No No Government ID can be configured as mandatory or optional.
11. DOB Date N/A None Yes No Yes Age calculated as per the DOB is mentioned in the Preview and User Details page.
12. Gender Drop- down Male; Female None Yes Yes Yes
13. Language Preferred Drop- down English; Spanish MFI language No Yes Yes

NOTE: This feature does NOT work.

One language can be designated as preferred. If left blank, system assumes MFI language as the user preferred language.

14. Address 1 Alphanumeric N/A None Yes Yes Yes
15. Address 2 Alphanumeric N/A None No Yes Yes  
16. Address 3 Alphanumeric N/A None No Yes Yes  
17. City Alphanumeric N/A None Yes Yes Yes  
18. State Alphanumeric N/A None Yes Yes Yes  
19. Country Alphanumeric N/A None Yes Yes Yes  
20. Postal Code Alphanumeric N/A None No Yes Yes  
21. Telephone Alphanumeric N/A None No Yes Yes  
22. Question Groups Mix N/A None Configurable Yes No For details, see Question Groups.
23. Username Alphanumeric N/A None Yes No No This is the ID with which this user accesses the system.
System verifies and ensures that no two users have the same username.
24. Password Alphanumeric 6 to 20 characters None Yes Yes Yes Used to authenticate the users when they attempt to access the system.

A password generator is out of scope. Admin has to specify the new password while resetting password for a user.

The user is required to change the password after the first login. For details, refer Passwords.

The passwords can be edited from the User Details page. Users can change the passwords from their My Settings section.

25. Confirm Password Alphanumeric 6 to 20 characters None Yes Yes Yes The passwords entered in Password and Confirm Password fields should match.
26. Date of Joining MFI Date N/A Current date No No No  
27. Date of leaving last office Date N/A None No No No This is the system-generated date of leaving the last branch. This is recorded by the system when the user is transferred to another office.
28. Date of joining office Date N/A None N/A N/A No System generated. This is the date when user record was created.
29. Status Drop-down Active; Inactive None N/A N/A N/A

Before a Loan Officer can be marked as Inactive, all the clients, groups, and centers must either be transferred to another Loan Officer or should be Closed/Cancelled.

30. Notes Alphanumeric N/A None No Yes No  

 
When the administrator adds a user to Mifos, a user account is created in an active state. User accounts are in either an Active or Inactive state, and there is no limit to the number of times a user state can be changed. A user must be Active to access the system. Loan officers can be made Inactive only if there are no clients assigned to them.

User accounts are assigned a username and password, which the user enters to log in to Mifos. After initial login, the user is required to create and confirm a new password consisting of 6-20 alphanumeric characters.  A user can change the password after login. The user is prompted for the following before confirming the password change:

  • Old Password
  • New Password
  • Confirm New Password

Security features

Security is ensured through the following functions:

  • Password encryption
    All passwords are stored in the database in an encrypted format. If a user forgets his password, he can ask the administrator to reset it. The administrator resets the password and communicates it to the user through a method external to Mifos (for example, verbally). The user can change the password at the next login.
  • Locking accounts after 5 unsuccessful login attempts
    If the user enters an incorrect password five times consecutively, then the account is locked. The user then needs to contact the administrator to unlock the account and get a new password. If the account is locked, the status remains Active, but the user cannot access the system.
  • Last login time display
    Each time a user logs in, his last login time is displayed, which the user should check for accuracy, for security purposes. If a user is already logged in to another machine, the last login time still displays the latest login time of the user. Last login time is not dependent on whether the user has logged off or not.
  • Session time-out
    If the user has logged in to the system, but is inactive for a period of time specified by the admin, the session times out and the user needs to login again. Any unsaved data gets lost when a session times out. The session timeout duration is configurable by the administrator at the web server level; the default is set to 30 minutes. Multiple sessions can run simultaneously on the same or different machines.

User data scope

A user’s data scope defines the set of data that a user can view and access and to which a user’s permissions (like edit and create) apply [link to permissions]. The data scope is determined by both the office hierarchy and the user hierarchy.

  • Limiting the scope by office hierarchy: The data scope of any user is limited to his/her office and the respective child offices. For example, a user at the HO can view all clients across the organization.  If he has Modify permission, he can modify any client in the system.  A user at an Area Office has access to all the client records in all the BOs under that Area Office. 
  • Limiting the scope by user hierarchy: In addition to office hierarchy, data scope is controlled by a two-level user hierarchy: loan officer and non-loan officer.  Because loan officers exist only at the branch level, only branches contain both hierarchy levels.  By default, users in all other office levels belong to the non-loan officer hierarchy.
    • If a user belongs to the loan officer hierarchy, then his data scope is limited to his own clients and he can only view and access these clients. For example, if he has Modify client data permissions, he’ll be able to edit only his own clients.  He will not be able to view or access those assigned to other loan officers.
    • If the user at belongs to non-loan officer hierarchy, the data scope is limited to the user’s office and other child offices. That is, a non-loan officer at a branch can view and edit all clients within that branch.

User roles and permissions

The way in which users can interact with Mifos is specified by their user role or roles, which are defined by the MFI. Roles are specified based on predefined system activities and permissions, as follows:

  • Activity. An activity is any action performed in the Mifos system, such as creating a new entity, changing the state of an entity, creating a fee type, waiving a fee, etc.
  • Permission. Permissions are defined for each single activity or group of activities that can be performed in Mifos. Critical system activities are assigned individual permissions while those less critical are assigned group permissions. Read or view permissions are granted by default, depending on a user’s scope [link]. For example, loan officers can only view the details of those clients assigned to them.
  • Role. Roles are groups of permissions which are created, defined, and named by the MFI and used throughout the organization. Mifos ships with a predefined role, called “admin”. The admin role has all permissions and can be used to create other roles.

A user can be assigned any number of roles and will be granted the permissions of each. For example, if one role gives a user a Create permission for a particular record and another gives him Modify permission for that record, he’ll be able to both create and modify the record.

Permissions cannot be granted outside a role. If a user needs permissions outside a role, a new role can be created to give him those permissions.

Role modification. Permissions associated with a role can be modified. If a role is modified, all users associated with the role inherit the change. A role can also be deleted. When this happens, all users assigned to that role will lose permissions associated with that role on their next login. However, if a user has the same permission granted through another role that is still Active, he retains the permission.

 

 

last modified 2009-12-16 07:27

0
Your rating: None

Fees Definitions

Introduction

MFIs can charge fees for various services offered, such as membership fees, account charges, etc. Fees can be applied to loan accounts, and to client, group, and center accounts.  At this time, Mifos does not support savings account fees.

In addition to fees, penalties can be charged on loan accounts. While fees are charged for the various services offered by an MFI, penalties are charged to penalize the customers for deviating from the rules of repayment.

Specific types of fees, such as a monthly membership fee for client accounts, are referred to as fees.  For loan accounts, fees are included in the product definition. Mifos does not match the periodicity of a fee with a loan repayment schedule.

Fees are defined using the Define new fees link on the Admin tab.  In addition to naming the fee and identifying the type of account it applies to, a frequency is specified. For fees that are to be applied periodically, the schedule is defined. For fees to be applied on a one-time basis, the time is defined. The fee and amount and the accounting code to which it should be applied is also defined.

Fee Attributes

An MFI defines a fee according to the attributes provided in the following table. All attributes in the table are mandatory.

S. No.

Attribute Data Type Range

Description

1 Fee Name Alphanumeric (50 characters) N/A Fee Name is not unique. Duplicate fee names are allowed.
* Once defined, this attribute cannot be modified.
2 Fee Category Drop- Down * All Customers
* Client
* Group
* Center
* Loans
Once defined, this attribute cannot be modified.
3 Frequency of fee charged Drop- Down Single Charge;
* Periodic Charge
Once defined, this attribute cannot be modified.
4 Time of charge Drop-Down for Single charges;
* Number and Unit for periodic charges

For Single Charges, the options are:
* Upfront
* Time of Disbursement
* Time of first loan repayment
* For Periodic Charges, periodicity can be:
* Weekly

* Monthly

For Single Charges, options 2 and 3 are applicable for Loan Accounts only

For periodic charges, the max amount of weeks or months the fee can be applied is 999.

5 Default fees Check Box Yes;
No
If selected, the fee is attached to the category by default.
* For example, if fee category is “Client” and Default fee is selected, this fee is included by default as “Admin set fees” for every new client record created.
* This option will not be available for “Loan” fees.
6 Currency Dropdown Currencies set in Configuration Only appears if Mifos configuration has multiple currencies.  Currency selected is the currency for the fee.  Only applies to fees that are a flat amount.  See CDLP for more details.
7 Fee Calculation Method Drop-Down Amount;
* Amount calculated as % of a loan amount;
* Amount calculated as % of (loan amount +interest);
* Amount calculated as % on interest
Options 2-4 are available and visible only for Loan Product fee category. Once defined, this attribute cannot be modified.
*
* Amount: Amount in the currency used by the HO. For example, $50.
*
* Loan Amount: The total loan amount (Principal) approved
*
* Interest: Total interest due across the duration of the loan as calculated at the beginning of the loan. This applies to both Flat and Declining Balance loans.
8 Fee Amount/Rate Number or % 0-999%
or Amount
Amount, is a flat amount. For other fee calculation methods, this is a % amount.
9 State Drop-Down Active; Inactive Fee is created in “Active” state by default. It can be made inactive also
10 Fee GL Codes Drop-Down List defined by HO (from Chart of Accounts) Only one GL code is associated to a fee.

Edits. Users with appropriate permissions can make changes only to the state of the fee and to the fee rate. A fee can be changed from Active to Inactive or vice versa, although fees cannot be deleted from Mifos. For fees attached to loans, changes can be made to the flat rate or to the percentage and base used for calculating the fee. When a fee is changed, the change is automatically applied to new accounts and must be reapplied to existing accounts.

General process for applying fees

Once a fee is defined, it appears as an option whenever a user creates an account of the type for which the fee was defined. For example, for client accounts, only fees assigned to categories Clients and All Customers are visible. Users can attach any of the available fees to the account.  If the fee is a Loan fee and defined as a calculated value, then the amount is then calculated per the fee definition and added into the repayment installment schedule.

An LO can apply multiple fees to an account, and can waive the next installment only of a fee payment. An LO cannot waive an amount that has already been paid. An LO can also remove a fee from an account altogether. Interest is never charged on a fee amount.

Note the following:

  • Overdue fees. A fee amount is considered overdue when the fee payment is not entered in Mifos on the expected payment date. For example, a periodic fee type with periodicity of one month is applied to a loan account, and the next payment date is October 15th; if the payment is not received on October 15th, the system considers this fee amount as overdue.
  • One-time fees. A user can also charge a one-time miscellaneous feel to a loan account or a client account. This amount is added to the next payment amount.

For specific information about applying fees to different types of accounts, see Account Management

Out of Scope

  • Amortization of fees over account term.
  • Different grace period for fees vs. loan.
  • Combination of periodic fee type and frequency equals to % of the amount.
  • Group of fees like client creation fee bucket, training fee bucket, etc
  • Fees waived for all clients/accounts for a limited period of time.
  • New fee type to bulk accounts, after an account is instantiated
 
last modified 2010-04-14 15:27
0
Your rating: None

Product Definitions

Introduction

A product is a financial offering by an MFI to its clients:

  • Product Type. Mifos supports the following two product types: loans and savings. An MFI can offer loans to clients or groups with active accounts. It can offer savings accounts to client, groups, and centers.
  • Categories. An MFI can define product categories, which are logical groupings of products that can be used for reporting purposes. MFIs can define any number of product categories, containing any number of products, at any time. Products not assigned to any category will belong to Other by default. Product categories are defined from the Define new category link on the Admin tab.
  • Products. Products are the different offerings belonging to a product type, such as personal loan, agricultural loan, cattle loan or voluntary or mandatory savings, which are defined in terms of interest rates, minimum and maximum loan amount, etc. When a user creates a loan or savings account, the defaults of the product are inherited by the account.

Loan product

Loan products are defined from the Define new loan product linkon the Admin tab, according to the attribute definitions provided in the attribute table that follows. Loan products can have interest applied in one of three ways: flat, declining balance, and declining balance with equal principal installment.  See Interest calculations for loan accounts for more information.

Loan defaults based on previous loan amount

An MFI can specify that default loan amounts are calculated in one of three ways:

  • Same for all loans. Using this method, loan history is not taken into consideration. Users specify minimum, maximum, and default loan amounts, which is the same for all loan amounts.
  • By last loan amount. Using this method, the ranges are defined based on the loan history of the client, since a client should be eligible for increasingly larger loans. Users specify the minimum, maximum, and default values for the range of the last loan amount paid by the client.  Up to six ranges can be entered, with the first range starting at 0. For example, if the first end range is 3000, then the start range in the second row is 3001.
  • By loan cycle. Using this method, loan cycles, i.e., the number of successfully repaid loans are used to determine a loan amount. The user enters the maximum, minimum, and default loan amounts for each loan cycle (values can be entered for the following cycles: 0, 1, 2, 3, 4, and >4).

The values entered for whichever method is chosen for both the loan amount field and the number of installment field should be for successfully repaid loans, not rescheduled loans, and should apply to loans based on the same product. Note that previous loans can have late payments and still be considered successfully repaid.

Loan default definitions can be modified after they have been created. Changes are effective immediately and will affect new loan accounts only.

If your MFI is set up to have more than 1 currency, you can specify a currency for the loan product during creation.  This is currency will be inherited in all loan accounts created from that loan product.  Mifos does not display currency of values throughout, so it is recommended to denote currency in the name of the Loan Product.  See Currency Denominated Loan Products for more details.

Savings products

Savings products are defined from the Define new savings product linkon the Admin tab, according to the attribute definitions provided in the attribute table that follows. Note savings products are defined as either mandatory or voluntary.

Attributes for products

Attributes for product categories, all products, and attributes specific for loan products and savings products are provided in the following tables.

Product Categories

Product categories are logical groupings of products which can be used for reporting purposes. Product categories can be created anytime.

  • System has no limit on the number of product categories that can be created or the number of products that can be put in each category. Therefore, a user can create any number of product categories and a product category can have any number of products under it.
  • A category called “Other” will be present by default in the Mifos system. If the product does not fall into any of the defined product categories, it can be put in the “Other” category. This category can be modified like any other category.

Attributes for Product Category Creation

S. no. attribute name Data type range mandatory/optional can be modified after product category creation  modifications to be applied to all open accounts or to new accounts  description/notes
1. Product Type Drop-Down  Loan/Savings  Mandatory No  N/A  Once a category is saved its product type cannot be changed. 
2.  Category Name  Text (50 char)  None Mandatory  Yes  All closed, open, and new accounts If category name is changed, change takes effect immediately and all reports generated and all transactions recorded after the change takes the new name.
3. Category ID System generated N/A N/A No N/A Unique ID, to be generated by the system.
4. Description Text (250 char) None Optional Yes All closed, open, and new accounts  
6. Status Drop-Down, single select Active; Inactive Mandatory Yes New accounts A category is created in Active status by default. If status is changed from Active to Inactive, existing accounts are not affected, and they can continue to completion under the same product category

Products

At the lowest level of product hierarchy, products are the different offerings of a product type to the MFI clients. Products are defined in terms of interest rates, minimum and maximum loan amount and purpose of the loan. Personal loan, Agricultural loan, Cattle loan etc, are a few examples of Products. The sections below detail out the flexibility provided by the Mifos system in defining these products.

Attributes for Product Definition

The table below lists down the attributes common for loans and savings. Following this, the attributes specific to each product type has been listed down under the respective sections.

s. no. attribute name data type default value range Mandatory/ optional for products can be modified after product creation modifications to be applied to all open accounts or to new accounts can be modified at account level

description/ notes

1. Product Type Name  N/A  None  Loan/Savings  N/A  No  N/A  No   
2. Product Category  Drop-Down  None  Categories defined for Product Type  Mandatory  Yes  Closed + Open + New Accounts  No  See Product Categories. The change in product category is effective from the point the change was made. 
3. Product Name Alphanumeric (50 chars)  None  None  Mandatory  Yes Closed + Open + New Accounts No Should be unique with the database that it is attached to.  Product Details page should display the full name of the product.
4. Product short name  Text (4 chars without spaces) None None Mandatory Yes Closed + Open + New Accounts No  This is for bulk entry, internal reports, UI pull-downs, etc. This has length limits and must be unique within an installation.
5. Description Text None None Mandatory Yes Closed + Open + New Accounts No  This is the brief description of the product.  If empty, this attribute name should not appear in the UI.
6. Product Code System ID (string) None None Mandatory No (System generated Uniqued ID) N/A No  This is not to be displayed in the UI.
8. Start Date Date

Today's date

Current date to one year from current date Mandatory Once the start date is reached and the system has changed the state to “Active”, start date cannot be changed. But it can be changed if product is still in “Inactive” status. All Open and New Accounts - This cannot be changed once any account is created No  Date when the status of the product is changed to “Active” by the system and the product starts surfacing in the New Loan Creation page.
Effective date of change is collected and state change occurs at 12:01am of the day specified.
9. End Date Date None One year from curent date Optional Yes All Open and New Accounts No  New accounts should not be created after the end date has passed.
State change occurs at 11:59 p.m. of the date specified as the end date.  If no end date is entered, then new accounts can always be created after start date
10. Applicable for groups/ clients/ centers Drop down; Single-select  None Clients;
Groups;
Centers
Mandatory Yes New accounts No  Whether/not product can be given to individuals, groups, or both.
Center’s options are applicable only for savings accounts.
11. Status Drop down  As per the start and end dates  Active; Inactive  N/A  Yes  New accounts  No  During creation of a product, status is not user specified. System should create the product in active/inactive states as per the start date.

Attributes for Loan Product Definition

s. no. attribute name data type default value range Mandatory/ optional for products can be modified after product creation modifications to be applied to all open accounts or to new accounts can be modified at account level

description/ notes

1. Min loan amount Number  None  None Mandatory  Yes New Accounts + current open accounts in Partial, Pending and Cancelled states No   
2. Max loan amount Number  None  None  Mandatory  Yes  New Accounts + current open accounts in Partial, Pending and Cancelled states  No  
3. Default amount Number   None  Optional  Yes  New Accounts  No The value can be overwritten at account level for the particular account 
4. Sources of funds Multi-select  None  Defined by MFI Optional  Yes  New Accounts + current open accounts in Partial, Pending and Cancelled states  Yes Multiple sources of funds can be attached to a product. 
5. Frequency of installments  Number  1 week  Number of weeks/months  Mandatory  No   New Accounts No If product frequency conflicts with meeting schedule, LO would not be able to assign this product to a client
Frequency can be every N number of weeks or every N number of months.
6. Minimum number of installments  Number 1 None Mandatory  Yes  New Accounts + Current Open Accounts in Partial, Pending and Cancelled states  No The number of installments entered by LO at the account level should be in between the minimum and maximum number of installments specified at the product definition level. 
7. Maximum number of installments  Number  None  None  Mandatory  Yes  New Accounts + Current Open Accounts in Partial, Pending and Cancelled states  No  
8. Default number of installments Number None None  Mandatory  Yes 

New Accounts

Yes   
9. Interest rate type  Drop Down  None  Flat; Declining Balance  Mandatory Yes  New Accounts No  
12. Max interest rate  Number  None 0 - 99.9%  Mandatory    Yes   New accounts + current open accounts in partial, pending, and cancelled states No Interest rates are annualized percentage, according to the number of days in a year specified at the MFI level.   
13. Min Interest Rate Number  None  0 - 99.9%  Mandatory    Yes   New accounts + current open accounts in partial, pending, and cancelled states No Interest rates are annualized percentage, according to the number of days in a year specified at the MFI level.   
14. Default interest rate Number  None   0 - 99.9%  Mandatory   Yes  New Accounts No

Interest rates are annualized percentage, according to the number of days in a year specified at the MFI level. 

17. Grace period for repayments  Number  None    Mandatory   Yes New Accounts  No This is the grace period for number of days before the accounts are moved to “Active in bad standing”
18. Include in Loan Cycle Counter Checkbox None  Yes; No  N/A  Yes  All Closed, Open, and New Accounts  No  Yes implies that the product is included in the loan cycle counter for clients and groups.
19. Can waive interest on Prepay loan Checkbox None Yes; No N/A Yes All Closed, Open, and New Accounts No If checked, gives the option to waive future interest when using Repay Loan to repay full loan.  If not checked, interest is NOT waived by default.
20. Grace period type Drop-down  None 1. None;
2. Grace on all repayments
3. Grace on principal payments only
Optional Yes New Accounts No   
21. Grace period duration Number of installments None    Mandatory if options 2 or 3 in the grace period type are selected   Yes New Accounts  Yes   
22. Product GL Code - Principal

Drop Down - With acceptable GL codes for Prinicipal

None  None  Mandatory  No  New Accounts  No  For loans, one GL Code each should be chosen from a list of acceptable GL Codes for principal. 
23. Product GL Code - Interest  With acceptable GL codes for Interest  None  None  Mandatory  New Accounts  New Accounts  No  For interest, one GL Code each should be chosen from a list of acceptable GL Codes for interest. 
24. Attach Fee Types Multi-select  None  Predefined fee types  Optional  Yes  All open and New Accounts Yes- Only Amount/Rate of the “Upfront” fee types can be modified at the account level.
The changes are applicable only to that account.
More than one fee types can be linked.
Only fee types applicable to loans are shown in the list box (i.e., for a loan product, only fee types applicable to loans are displayed).
The attached fee types are charged to all the accounts opened for that prodcut.
25. Currency Drop down with available currencies Default currency Currencies set in configuration Mandatory if configured for multiple currencies No   No More than one fee types can be linked.
Only fee types applicable to loans are shown in the list box (i.e., for a loan product, only fee types applicable to loans are displayed).
The attached fee types are charged to all the accounts opened for that prodcut.
26. Can configure variable installments Checkbox No Yes;  No Optional Yes New accounts only No Allows the loan product to have variable loan installments.  Option is only available if LSIM is on and if Declining Balance interest rate type selected
26a. Minimum gap between installments Number of days None Numeric value Mandatory if Can configure variable installments is checked Yes New accounts only No Specifies the minimum gap between 2 installments in days
26b. Maximum gap between installments Number of days None Numeric value Optional Yes New accounts only No Maximum number of days between 2 installments
26c. Minimum installment amount Number None Numeric value Optional Yes New accounts only No Specifies the minimum installment amount for a variable installment loan
27. Compare with Cash Flow Checkbox No Yes; No Optional Yes New accounts only No Check if during loan creation, loans of this product should have Client's Cash Flow data entered and compared
27a. Warning Threshold Number None Set by configuration properties Optional Yes  New accounts only No If the loan installment is above a certain percentage of the cumulative cash flow
27b. Indebtedness Rate Number None Set by configuration properties Optional Yes New accounts only No (Total liability + loan amount)*100/Total capital (amounts entered during Cash Flow) cannot be over the amount specified here
27c. Repayment Capacity Number None Set by configuration properties Optional Yes N/A No [(Total revenues-Total expenses)+Loan Amount]*100 / Sum of Installments amount cannot be over the amount specified here

Attributes for Savings Product Definition

 

Listed below are the attributes specific to the Savings product type.

 

s. no. attribute name data type default value range Mandatory/ optional for products can be modified after product creation modifications to be applied to all open accounts or to new accounts can be modified at account level

description/ notes

1. Type of deposits Drop Down  None  Mandatory/Voluntary Mandatory  Yes New Accounts No So depending on this selection, system should show the correct set of GL codes to select from.  
2. Recommended/ Mandatory Amount for Deposit Number None  None  Optional  Yes  New Accounts  Yes   
3. Recommended deposit unit- per group member or for whole group Drop Down  None  Per group; Complete group  Mandatory  No  New Accounts  No  Applicable only if the product is applicable for groups.
This specifies that the amount mentioned in the above attribute is for each member of the group, or an absolute amount for the whole group irrespective of the number of members present in the group.
For center savings account, the unit of recommended amount is always - “per client”. 
4. Interest rate  Number  None  0 - 100 Mandatory Yes All Open and New Accounts No Annualized rate is stored by the system.
In case of change in interest rate, system should calculate the interest using the new rate from the time of  change. . However the old interest rate should be recorded for reporting purposes.
E.g. Supposing the interest is to be posted on a monthly basis and on the 30th day the rate is changed. Interest should be calculated using the old rate for 29 days and use the new rate for 30th day and onwards.
6. Balance used for Interest Rate calculation Drop Down - Single-select None Minimum balance; average balance Mandatory Yes All Open and New Accounts No Only Compound Interest Calculation is supported
If changed, the changes are reflected in the Open accounts as soon as the change is detected by the Mifos system
If the attribute is modified, the interest installments should be recalculated.  
7. Time period for interest rate calculation Number of months; Number of days None   Mandatory Yes All Open and New Accounts No

If this field is modified, recalculation is not required. The change affects the future interest calculations only.

Note: Reference for time period is the start of calender year for all products.  Mfios does not currently allow users to configure the fiscal year.

8. Frequency of interest posting to accounts Number of months None   Mandatory Yes All Open and New Accounts  No

If this field is modified, recalculation is not required. The change affects the future interest calculations only.
If the frequency is changed in between two interest postings, interest should be recalculated with new frequency from the last posting date.

Note: Interest should be posted on the last day of the month for all the accounts.
 

9. Max amount per withdrawal Number None 0 - N Optional Yes All Open and New Accounts No Flat Amount of savings account.
This specifies the maximum amount that can be withdrawn from a savings account per day.
For a group/center savings account, this restriction applies to each withdrawal.
If left blank or “0”, then system does not assume any withdrawal limitations.   
10. Min balance required for interest rate calculation Number None 0 - N Optional Yes All Open and New Accounts No Interest is not calculated on accounts that have balance amounts below this number.
If left blank or “0”, then system does not assume any minimum balance required for interest. 
11. GL Code - deposits Drop Down None Acceptable GL Codes Mandatory Yes All Open and New Accounts No One GL Code each should be chosen from a list of acceptable GL Codes for deposits.  
12.  GL Code - interest Drop Down  None  Acceptable GL Codes  Mandatory  Yes  All Open and New Accounts No One GL Code each should be chosen from a list of acceptable GL Codes for interest. 

 

Product states

Status of a product can be changed at the product definition level. At any given time, a product can be in either an Active or Inactive state:

status

description

Active

By default, new products are created in an Active state. But if the start date is changed to a future date during product definition, then Mifos changes the state of the product to Active when the start date is reached. Active products can be offered to clients and new accounts can be created for them.

Inactive

Mifos changes the product state from Inactive to Active when the product End date, if defined, is reached. The product option then disappears from the list of choices when creating a new account. However, the product itself is not deleted and can be accessed from the View loan products link on the Admin tab. 

A product can change the status multiple times. There are no restrictions on state changes.

Restrict product mix

By default, a client can have multiple loans or savings accounts of multiple products. An MFI can restrict the mix of products their clients are allowed by clicking Define product mix from the Admin tab.  Mifos checks for violations of this list at the time of loan disbursal.

By default products can mix with all other products, including itself.

Grace periods for loans

An initial grace period is the time between the disbursal date of a loan and the collection of the first regular payment. One, and only one, of the following grace types can be defined for a loan product and, once defined, cannot be modified:

  • None.   No grace period allowed
  • Grace on all repayments. The client is not required to start repayment until the grace period ends. Interest is not charged during this period. In other words, grace is given on both principal and interest. Start date for loan repayment schedule is essentially pushed out.
  • Principal only grace.  The grace is given on the principal repayments and not on the interest. The client is required to make regular interest payments but is not required to make payments against the principal during the grace period.

A user can modify the grace period for a loan account before the grace period ends for that account. However, grace periods cannot be inserted within a loan payment period, that is, a grace period can exist only before the repayment of the loan starts.

Grace periods cannot be applied to variable loan installments or loan products with interest rate type Declining Balance - Interest Recalculation.  MIFOS-4742.

0
Your rating: None

Currency-Denominated Loan Products

Introduction

An MFI could currently have loan products in 2 currencies.  They need a way to track both in their own currencies.  This feature implements basic multicurrency support and also sets the basis for full multicurrency support in the future.

User Stories (Epics)

Priority User Story Section in FR
1 As an Administrator at an MFI, I want to be able to disburse loans of different currencies to my clients.  

Goals

  • Ability to configure Mifos to have a default currency and additional currency
  • Ability to select a currency when creating loan products.
  • Ability to set appropriate rounding rules per currency
  • Loans will inherit currency definition from the loan product it's created from.
  • Ability to select a currency for fees created for loans only.

Non-Goals

The following items will not be addressed in this release:

  • Support for 2 currencies with performance history - if Performance History involves rolling up values in 2 different currencies, then that item will not be displayed
  • Support multiple currencies for client, group, or centers  - they will all use default currency (fees)
  • Support multiple currencies for savings
  • Support multiple currencies in Collection Sheet Entry
  • Displaying additional currency labels anywhere in Mifos
  • Support for multiple currencies in fees other than loan fees

Definitions and Terminology

Term Definitions
   
  • Mandatory fields will be preceded by *
  • Links are italicized
  • Buttons are Button

 

Currency Denominated Loan Products

This feature will allow minimal multiple currency support in Mifos.

Use Cases

Administrator configures Mifos for multiple currencies

Actors

  •  Administrator

Preconditions

  •  None

Basic Flow

  1. Administrator edits the configuration file and sets the default currency to USD and additional currency to LBP.
  2. Administrator updates relevant accounting settings such as rounding amount for each currency accordingly.  Administrator updates settings for the additional currency that differ from the settings for the default currency.

Post-conditions

  • Mifos can have 2 currencies now.

Alternative Flows

Administrator does not configure Mifos for multiple currencies.

  1. Administrator does not have additional currency set in configuration file.

Post-conditions

  • There are no options for currencies in Mifos.  The user has no knowledge that Mifos can have 2 currencies.

Validations

  • None

Administrator creates a loan product in a currency other than the Default

Actors

  • Administrator

Preconditions

  • Mifos has been configured to have a default currency of USD and an additional currency of LBP.

Basic Flow

  1. Administrator logs onto Mifos and navigates to creating loan products.
  2. Administrator creates new Loan Product A and specifies LBP as the currency for the loan product.
  3. Mifos saves Loan Product A.

Post-conditions

  • All loans created from Loan Product A use LBP.

Alternative Flows

  • None

Administrator creates a loan fee in the secondary currency and attaches to Loan Product A.

Actors

  •  Administrator

Preconditions

  • Mifos has been configured to have a default currency of USD and an additional currency of LBP.
  • Loan Product A has LBP as its currency defined.

Basic Flow

  1. Administrator logs onto Mifos and navigates to creating fees.
  2. Administrator creates new loan fee Fee A and specifies LBP as the currency for the loan fee if the loan fee is a specific amount, not a % of calculation.
  3. Mifos saves Fee A.
  4. Administrator navigates to edit Loan Product A and is able to attach Fee A to the loan product.

Post-conditions

  • None

Alternative Flows

Administrator tries to attach a loan fee in different currency than Loan Product A.

  1. Administrator goes to edit Loan Product A.  Administrator adds Fee B of a different currency to Loan Product A.  Administrator hits Preview.
  2. Mifos displays error message - A fee of a different currency cannot be attached to this loan product.

Loan Officer creates a loan account in secondary currency

Actors

  •  Loan Officer

Preconditions

  •  Mifos has been configured to have a default currency of USD and an additional currency of LBP.

Basic Flow

  1. LO logs onto Mifos and navigates to create a new loan account.
  2. LO selects a loan product of the secondary currency.  LO saves the new loan.

Post-conditions

  • New loan account is in secondary currency.

Alternative Flows

Loan Officer attaches a loan fee of secondary currency to a loan account

  1. At step 2 of workflow, LO attaches new loan fee also of the same currency to the loan account.  Options under Fees available only include fees of the same currency as the loan account.
  2. Mifos saves the loan.  The loan has a fee in the same currency attached.

Loan Officer applies charges to an existing loan account

  1. LO navigates to an existing loan account and clicks on Apply Charges.
  2. LO chooses a fee to attach.  The only options available are those of the same currency.

Loan Officer disburses and repays loan in secondary currency

Actors

  •  Loan Officer

Preconditions

  • Mifos has been configured to have a default currency of USD and an additional currency of LBP.
  • Loan accounts in secondary currency have been created.

Basic Flow

  1. LO logs onto Mifos and navigates to an existing loan that hasn't been disbursed.
  2. LO disburses loan.

Post-conditions

  • Loan disbursal is in secondary currency
  • Repayment schedule is all in secondary currency

Alternative Flows

LO enters in values for amounts that do not correspond to the settings in Configuration

Preconditions

  • Mifos has been configured to have a default currency of USD and an additional currency of LBP.
  • Loan accounts in secondary currency have been created.
  • Mifos has been configured to have digits after decimal for LBP to be 0.

Alternate Flow

  1. At step 2 of Basic Flow, LO tries to enter a value for loan disbursal that has more digits after decimal than 0.
  2. Mifos throws an error message that this is invalid.

Accountant imports file of transactions in secondary currency

Actors

  •  Accountant

Preconditions

  • Mifos has been configured to have a default currency of USD and an additional currency of LBP.
  • Loan products and accounts in secondary currency have been created.

Basic Flow

  1. Accountant logs onto Mifos and navigates to Import Bank Transactions.
  2. Accountaint imports a file with all loan transactions for loans in LBP.
  3. Mifos imports the file of transactions.

Post-conditions

  • All loan accounts in that file have been updated accordingly with the transactions in that currency.

Alternative Flows

User Stories

Priority Size User Stories Mingle card #
1 Small As a User, I configure Mifos to have multiple currencies  
1 Small As a User, I can select a currency when defining a loan product  
1 Small As a User, I can select a currency when defining a loan fee.  
1 Small As a User, I can attach a loan fee of the same currency to a loan product.  
1 Small As a User, I can attach a loan fee of the same currency to a loan account.  
1 Small As a User, I can disburse and repay loans of that currency  

Currency Denominated Loan Products Functional Requirements

Update configuration settings

FR# Pri Description Comments / Mockups
1.1 P1 Add new setting for setting additional currencies in custom properties file.  See properties file for examples => applicationConfiguration_accounting.custom.properties
1.2 P1 Additional currencies should only be applicable to loan repayments and loan fees  
1.3 P1 Update View Organizational Settings in Admin section of Mifos to show the new and updated configuration settings. http://img526.imageshack.us/i/orgsettings.png/
1.4 P1 By default there should be no additional currencies set  
1.5 P1 Certain rounding rules can be set different than the default for additional currenices. If those settings are not set for the additional currency, the default setting is used. If it is set, it overrides the default.

These settings are:

FinalRoundOffMultiple

InitialRoundOffMultiple

AmountToBeRoundedTo

DigitsAfterDecimal

DigitsAfterDecimalforInterest
Rounding Modes are P2
       
1.7 P1 Currencies can be added at any time during Mifos deployment, but once a currency has been set, it cannot be removed. Document in Configuration Guide

Add ability to define a new loan product of secondary currency

FR# Pri Description Comments / Mockups
2.1 P1 In Define New loan product pipeline, User now has a new Currency dropdown to choose the currency from default and additional currencies set in configuration file.  
2.2 P1 The options are the 2 currency codes the Administrator set in the custom properties file.  
2.3 P1 The Default currency code is first in the list of options for Currency and should be defaulted to it in the dropdown  
2.4 P1 When editing a loan product, the Currency option should be displayed but uneditable.  
2.5 P1 When defining a new loan product, if the User tries to attach a loan fee of a different currency, the following error message is displayed upon the User trying to Preview

A fee of a different currency cannot be attached to this loan product 
 

Add ability to define a loan fee of secondary currency

FR# Pri Description Comments / Mockups
3.1 P1 In Define New Fee pipeline, when User selects "Loan" under Fee Applies To:, the option to select a currency should be dynamically displayed next to Amount calculation.  
3.2 P1 A new Currency dropdown should be displayed after the Amount field in Calculation - which should be the 2 currency codes the Administrator set in the custom properties file.  The Currency is only set for loan fees with specific amount, not % of calculation.  A loan fee with % of calculation can be of any currency.  
3.3 P1 The Default currency code is first in the list of options for Currency and should be defaulted to it in the dropdown  
3.4 P1 This option should only be added for defining new fees and cannot be changed when editing the fee.  
3.5 P2 When viewing a loan fee, currency should be displayed if the User has set additional currencies in the custom properties file  

Create new Loan account with Loan Product with a different Currency

FR# Pri Description Comments / Mockups
4.1 P1 When creating a new loan account, the User should be able to select a loan product that has a secondary currency set as its currency  
4.2 P1 Should work with GLIM on or off  
4.3 P1 Should work with LSIM on or off  
4.4 P1 All loans under that Loan Product should take currency and rounding rules from the custom properties file set for that currency.  

Attach loan fee of secondary currency to loan account

FR# Pri Description Comments / Mockups
5.1 P1 When creating a new loan account, the list of fees available under Apply Additional Fees should only be loan fees of the same currency set as the loan product of the loan account.  
5.2 P1 The User can also apply charges for an existing loan account. The available fees listed under "Select charge type" should only be fees of the same currency  

Disabled Functionality

FR# Pri Description Comments / Mockups
6.1 P1 Collection Sheet Entry will not work if there are loans of multiple currencies under the center. There will be no changes to accommodate this, the feature will remain but advise to use with caution (or not use at all). (P2) When a user does use CSE and selects a center with more than 1 currency, warning text is displayed at the top.  
6.2 P1 Certain parts of Performance History will not be shown for a Center, Group, or Client that has loans of more than one currency under it. Instead of a value, the following string will be displayed in the field <Multiple Currencies>  
6.3 P1 For a client's performance history, Amount of last loan and Delinquent Portfolio will not be displayed.  
6.4 P1 For a group's performance history, the following will not be displayed

Amount of last Group Loan: xx

Avg individual Loan size: xx

Total Loan portfolio. xx

Portfolio at risk: xx
 
6.5 P1 For a center's performance history, Total Loan portfolio will not be displayed  

Reports

FR# Pri Description Comments / Mockups
7.1 P1 Existing reports will NOT be rewritten to accommodate this feature. They will just not work if there is a problem with the query due to multiple currencies.  

Validations around accounting settings for new currencies

FR# Pri Description Comments / Mockups
8.1 P1 All existing validations in Mifos for numbers entered for currency should be updated to validate according to the new settings set in the configuration file, if one is set.  For example, if USD is set to digits after decimal is 3, and LBP is set to 0, then if a User is entering in values for the loan account from the LBP Loan Product, Mifos should throw an error if the User enters in any digits after decimal.   

Other Assumptions

LSIM

  • LSIM will be on - but should work on or off

GLIM

  • GLIM will be on for Al M's configuration

QA Considerations

  • Performance History - for fields where there needs to be rollup of 2 currencies, will display a msg instead.
  • Create multiple loan accounts - should still work regardless of currency of loan products
  • Import Bank Transactions - make sure this works

Standard Considerations

Security (Permissions, Roles, and Data Scope)

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? No
Are you adding any new permissions or changing existing permission to control this feature? No
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? Upgrade needs to work for existing configurations with only 1 currency
What will be the default values for default roles in a new installation? No

Impacts to System

Does this feature affect Bulk Loan Creation?  How? No
Does this feature affect Collection Sheet Entry?  How? Yes - if center has more than 1 currency, CSE will not work
Does this feature affect Redo Loans? Yes
Does this feature affect Undo Loans? Yes

Globalization/Localization

Will this feature support users localizing data that they enter? Yes
Does this feature involve any date/time related data, and if so how should conversions be handled? No
Is there currency or other numeric data ? If so does it require any special handling or validation? Yes - handled by configuration files

Logging

Change Log

Do changes to the data that is collected or stored by the new feature have to be fully logged by the system? Yes
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.

Does the feature affect any existing reports? Yes - but those will not be changed
Does the feature require adding any new reports? No

Performance

Will the feature be a high use-case scenario? No
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? 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? No

Setup and Installation

New Installations

Will the feature include demo data? No
Does the feature require any data to be gathered at setup runtime? No

Backward Compatibility and Upgrades

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? New options added in UI for currency if they choose to have one

Hosting Support

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

Configuration

Does this feature require changes to configuration files? Yes
If so, is this feature enabled or disabled by default? Disabled

Customers

Which MFI's do we expect to use this feature?  
How will this impact them?  
 

last modified 2010-05-14 09:23

0
Your rating: None

Meetings

Introduction

MFIs working under the group lending model, rather than a teller model, conduct regular meetings to provide a platform for interaction for their centers and groups. At these meetings, questions are answered, loans are disbursed and loan repayments and savings deposits are collected. Trainings can also be scheduled or take place at these meetings.

Beginning with version 1.1 of Mifos, repayment schedules and loan disbursals no longer need to coincide with meeting schedules.  This feature is called LSIM (Loan Schedule Independent of Meeting) and an MFI can specify this during system setup.

Meeting schedules are set up for a center, if one exists, or for a groupClients not belonging to a group can have individual meeting schedules.

If LSIM is turned off, meeting times are mandatory for any client/group/center to be Active. Meeting times are not mandatory if LSIM is turned on.  Clients can have only a single meeting schedule at any time. Currently, all clients, regardless of whether or not they belong to a group, must have a meeting assigned to them.

If an MFI ties repayment schedules to meetings, the client loan repayment schedule is spread evenly over a specified number of meetings, and the frequency of payments must match the frequency of meetings, if repayment occurs at meeting times.  If LSIM is turned on, this is not required.

Meeting definitions

Meeting schedules are defined when a center account is created. Client inherits the meeting schedule from the group and the group in turn inherits the meeting schedule from the center (if center hierarchy exists).

A meeting schedule definition includes the meeting location and the meeting frequency, which can be specified in terms of weeks or months. When defining meetings in terms of weeks, the user can specify the frequency (every <x> weeks) and the day of the week. When defining meetings in terms of months, the user can specify either every <x> day of the month or the <x>  <day> of every <x> month.

Users are not allowed schedule meetings on non-working days.  Mifos will prevent this from happening.  Non-working days are set in configuration.  [Link to config]  Meetings also cannot be scheduled on a holiday. However, these days are included in calculations. If a repayment or meeting falls on a holiday, it is shifted depending on the repayment rule set when the holiday was defined.  Repayment rules available are “Next working day”, “Next meeting/repayment day”, or "Same day". 

Meeting changes

Meetings can be changed only by the office that created them. If Definition of a week is modified and more days are included in the working week (by changing working days in System Configuration), existing meeting schedules and repayment schedules are not affected or recalculated. If the meeting schedule itself is changed, repayment dates of existing loan accounts are updated but repayment amounts will not be updated. Meetings can only be defined or changed at the highest level, i.e., at the center (if it exists), group if the client is a group member, and at the individual level only if the client does not belong to a group.

Meetings can be changed (irrespective of the state of loan accounts) in the following ways only:

  • Weeks: only the day of the week can change; number of weeks cannot be changed
  • Months: day number and the day of the week can be changed; number of months cannot be changed. For example, first Monday of every one month can be changed to third Tuesday of every one month. Day 2 of every five months can be changed to day 7 of every five months (only the bolded entries can be modified).

In Mifos 1.5.0 and beyond, when changing a center meeting date in an installment “period”, the change will always be applied in the next installment “period”, where a period is the frequency of your meeting schedule and the repayment falls in.

For example, if you have a weekly meeting on Wednesdays currently, and you change the meeting date to Thursday, the current working week will still keep the original repayment days of Wednesday. Your meeting date will be changed next working week to Thursday. This is regardless of whether or not a repayment has past this week. In this particular example, today (March 1st), this week’s meeting will still occur on March 3rd, but next week’s repayment will now be on March 10th. Working week and workdays are defined by your Mifos configuration.

The same applies for monthly meetings. In this example, you normally have a meeting date on the 20th of every month, and you change the meeting date to the 5th of every month. In the current month (March), your meeting date will still fall on March 20th. However, in April, the following month, the meeting date will be on April 5th.

 
last modified 2010-07-16 05:02
0
Your rating: None

Checklists

Introduction

An MFI can set up checklists that are displayed whenever users attempt to change the state of accounts. A checklist consists of a list of tasks that are required in order to change a state. A user must check each box in the checklist before the system will make the requested change.

Checklists communicate or remind the internal processes required before changing the status of accounts or customer records. Each time a user attempts changing the state of an account or customer record, the checklist defined for that state change is shown to the user. The user can read through the checklist and make sure all the requirements are met. These checklists can be associated with all workflows for accounts and client records.

Checklists are optional, and an MFI can define them for the destination states (not dependent on source states) for the following types of accounts: client, group, center, loan and savings. For example, an MFI might define a checklist for the Pending Approval state of a loan account. A user can then make sure each condition on the checklist has been satisfied before he changes the loan account to the Pending Approval state.

Note the following:

  • Checklists cannot be defined for the following states: centers—Active state; groups and clients—Partial Application state.
  • Checklists are not displayed during creation of client, group, center, loan, and savings accounts.
  • Checklists are not attached to individual customer records or accounts, but are displayed in between state changes.
  • Checklists can be modified or made inactive.
  • Only the latest version of a checklist is maintained in the system. Older versions of a checklist are not maintained.

Attributes of Checklists

Checklists must be defined (through the Define new checklist link on the Admin tab) and saved, so that they can be attached to states of customer records and accounts. Attributes of checklists are provided in the following table:

S. No. Attribute Name Range Mandatory for Active/Inactive states Can be Modified after Definition or not?

Remarks

1 Name 50 char Yes Yes
2 State Active or Inactive N/A Yes If the checklist is Inactive, it is not displayed in the respective state transitions. When a checklist is created, the state is Active by default.
3 Type Client, Group,
* Center,
* Loans, Savings
Yes Yes
4 Displayed when moving into status States applicable to the selected type (i.e., Client, Group, center Loans, or Savings) Yes Yes Status applicable to the type selected
5 Created Date N/A N/A N/A System Generated
6 Created By N/A N/A N/A System Generated
7 Items N/A At least one item is mandatory. Once specified, an item cannot be modified. But it can be deleted. These are line items with a size limit of 250 characters per line item. There is no maximum limit on the number of items that can be included in a checklist.

Attaching Checklists to States

The saved checklists are attached to states of accounts or customer records as per the type and state specified during creation. The specifications for the same are:

  • Type: Loan; Savings; Client; Group; or Center
  • Status: All statuses specific to the type. For example, a checklist can be defined for Type = Clients, and Status= Pending Approval. In this case, the checklist is displayed whenever any client record status is changed to Pending Approval. In a similar manner, a checklist can be attached to any state transition for all the types listed above.
  • Exclusion: Checklists for following states cannot be defined (not required):
    • Centers- Active state
    • Groups and clients- Partial Application state
  • Exclusion: Checklists will not be displayed during creation of a client, group, center, loan or savings account.
  • On the checklist (during a state change), a ‘checkbox’ appears against each line item defined. The user can check the box if the particular line item has been satisfied.
  • All items on the checklist are considered mandatory by default and they will have to be checked before the state transition is accepted by the system.

Out of Scope

  • Checklists in multiple languages; however, the data model supports storing checklists in multiple languages.
  • Reusing the items on checklists. Each item on a checklist has to be manually entered.
  • Storing responses for checklists.  
 
last modified 2009-01-20 19:02
0
Your rating: None

Moratoriums

Overview of functionality for payment moratorium periods where loan schedules are pushed out

Release: Mifos 1.6

Introduction

Many MFI's, including KMBI and SECDEP, need the ability to delay their loan schedules without penalty, usually in case of some catastrophe.  We need to add a feature to be able to define this moratorium period where the clients do not have to pay, and the loan schedules are essentially pushed out.  There is also a need for selecting certain branches that the moratorium period will be applied to - this will be in a separate spec.

User Stories

Priority User Story Section in FR
1 As an Administrator at an MFI, I want to be able to define a payment moratorium and have all schedules in the entire organization pushed out.  

Goals

  • Ability to define a period ("holiday") that schedules are pushed out - for the entire organization or specific branches.
  • Loan schedules are essentially pushed out during that period (as if that period of time does not exist in the schedule).  There is nothing collected during that period.
  • Mandatory savings schedules are also pushed out.
  • Any fees associated with clients, groups, centers are also pushed out.

Non-Goals

The following items will not be addressed in this release:

  • Setting a moratorium for any entity less than a branch office.
  • Selecting what exactly will be pushed out in a moratorium - assumption is all principal, interest, fees are pushed out during a loan schedule, etc.

Definitions and Terminology

Term Definitions
   

 

  • Mandatory fields will be preceded by *
  • Links are italicized
  • Buttons are Button

Related Documents

Holiday Push Out

This feature will allow schedules to be pushed out

Use Cases

Administrator creates a holiday with repayment rule Payment Moratorium for entire organization.

Actors

  •  Administrator

Preconditions

  •  None

Basic Flow

  1. Administrator navigates to Define new holidays. 
  2. Administrator creates a new holiday "Payment Moratorium" with a period from one date to another.  Administrator hits Preview.
  3. System displays new holiday with the Holiday name, dates, and repayment rule "Payment Moratorium."  Administrator chooses to Submit.

Post-conditions

  • Mifos has new moratorium defined for the period above.

Alternative Flows

Administrator edits new holiday of Payment Moratorium.

  1. At step 3 of basic flow, Administrator clicks on Edit Holiday to edit details of the holiday, and hits Preview again.  Use case continues at step 3 of Basic Flow.

Post-conditions

  • Mifos has new moratorium defined.
  • Schedules that includes dates in that moratorium period are pushed out accordingly.  These include loans, mandatory savings, and any fees.

Validations

  • Holidays periods cannot be created in the past (either To or From dates must be before current date) - following error message is displayed - Holiday can't be added for current date or dates in the past.

Administrator creates new Payment Moratorium on top of existing holiday(s).

Actors

  •  Administrator

Preconditions

  •  None

Basic Flow

  1. Administrator navigates to Define new holidays. 
  2. Administrator creates a new holiday "Payment Moratorium" with a period from one date to another.  Administrator hits Preview.
  3. System displays new holiday with the Holiday name, dates, and repayment rule "Payment Moratorium."  Administrator chooses to Submit.

Post-conditions

  • Mifos has new moratorium defined for the period above.

Scenarios

# Priority Scenario Description Expected Behavior
1 P1 Payment Moratorium defined for 4/1/2010 (Thursday) to 4/20/2010 (Tuesday).  No other holidays defined during this period. All schedules that hit this period inclusive will be shifted.

Examples:



- A client that meets weekly on Thursdays will NOT have payments due for loans, mandatory savings, or fees for 4/1, 4/8, or 4/15.  Their schedule will continue on 4/22 and end 3 weeks later than original.

- A client that meets weekly on Wednesdays will NOT have payments due on 4/7 and 4/14.  Their schedule will be shifted to 4/21. 

- A client that meets monthly on the 2nd will not have a payment due on 4/2.  Their schedule will be shifted to 5/2.

- A client that meets bi-weekly every Thursday with a payment on 3/25 will not have payments due on 4/8.  Their schedule will be shifted to 4/22 (2 weeks later).

- A client that meets bi-weekly every Thursday with a payment on 3/18 will not have payments due on 4/1 or 4/15.  Their schedule will be shifted to 4/29. 
2 P1 Payment Moratorium defined for one day 4/1/2010.  No other holidays already defined on this day. Only schedules that had a payment date on 4/1/2010 will be affected.  The schedule will be shifted accordingly the frequency of their repayments.  Schedules that meet on other days will not be affected.
3 P1 Payment Moratorium defined for 4/1/2010 to 4/10/2010.  There is already a holiday defined that overlaps some or all of that period with a different repayment rule. The Payment Moratorium shift will take precedence.  Example:

There is an existing holiday defined on 4/2/2010.  A moratorium is issued on top for 4/1 to 4/10.  Any schedules on 4/2 are pushed out accordingly (moratorium).
4 P2 Scenario #3, then another holiday is defined on top. Any time there is a moratorium, doesn't matter if a holiday is defined before or after the moratorium was set in Mifos, the moratorium takes precedence if there is both a moratorium and a holiday on the same day.
5 P1 Overlapping holidays that are not moratoriums are defined. In this case, for the day(s) that 2 holidays are defined, the holiday defined last should take precedence.  However, we will not fix this in this release.
6 P? A Payment Moratorium is defined immediately following a non-moratorium holiday Mifos will apply the repayment rule for days that fall in the non-moratorium holiday, and then apply schedule-shifting to payments that fall in the moratorium. For example, a holiday is defined for the week starting Monday, 4/29/2010 (just before the payment moratorium defined above) with repayment rule Next Meeting/Repayment. A client with payments due on Wednesdays will have their 3/31 payment shifted to 4/7. But for the moratorium, they would have two payments due on that day. The two payments are shifted to Wednesday, 4/21 and the remaining schedule is shifted to 4/28 and beyond.

 

User Stories

Priority Size User Stories Mingle card #
1 Small As a User, I can create a new holiday for a Payment Moratorium for the entire organization.  
1 Large As a User, I can see that loan schedules have been pushed out for that moratorium period.  
1 Medium As a User, I can see that mandatory savings schedules have been pushed out for that moratorium period.  
1 Medium As a User, I can see that client, group, and center fees have been pushed out for that moratorium period.  

Payment Moratorium Functional Requirements

New Repayment Rule

FR# Pri Description Comments / Mockups
1.1 P1 Add new repayment rule called Payment Moratorium under Repayment Rules drop down in Define New Holidays. This option should appear last.  
1.2 P1 When previewing new holiday, under Repayment Rule column, should say Payment Moratorium.  
1.3 P1 When viewing all holidays, Repayment Rule column needs to show correct rule of Payment Moratorium  
1.4   The rule to follow when shifting schedules is this.  At every repayment date in a schedule, check to see if there is a holiday or moratorium defined.  If there is a moratorium defined take that first and shift accordingly.  If not, then apply holiday repayment rule accordingly.  Continue for each date in the repayment schedule until it is done.  

Effect on Loan Schedules

FR# Pri Description Comments / Mockups
2.1 P1 All client and group loans will be shifted with the holiday period.  
2.2 P1 This includes all penalties, fees, interest, and principal due for that period.  
2.3 P1 Applies to any frequency of loan installments (weekly, every 2 weeks, monthly, etc), interest rate types (flat, declining balance, etc), and any kind of loan products.  
2.4 P1 If a recurring fee is added to a loan after a moratorium has been set, that recurring fee should also be pushed out w/ the rest of the loan as expected.  
2.5 P1 Work with LSIM on or off.  If LSIM is on, then it's the repayment schedule, not the meeting dates that are pushed out.  
2.6 P1 Bulk Loan Creation - loans created using Bulk Loan Creation should follow same rule if loan repayment schedule could overlap with holiday period with this new repayment rule  

Effect on Savings Schedules

FR# Pri Description Comments / Mockups
3.1 P1 All client and center savings deposits will be shifted with the holiday period  
3.2 P1 This includes mandatory deposits.  Voluntary deposits should display the same, as they do not double up if not deposited currently anyway  
3.3 P1 Applies to any frequency of deposits  
3.4 P1    
3.5 P2    

Effect on Fees Schedules

FR# Pri Description Comments / Mockups
4.1 P1 All client, group, and center fees will be shifted with the holiday period  
4.2 P1    
4.3 P1    
4.4 P1    

Other Assumptions

LSIM

  •  

GLIM

  •  

QA Considerations

Standard Considerations

Security (Permissions, Roles, and Data Scope)

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? No - though there is an open bug on Holiday permissions
Are you adding any new permissions or changing existing permission to control this feature? No
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

Does this feature affect Bulk Loan Creation?  How? Yes
Does this feature affect Collection Sheet Entry?  How? Yes
Does this feature affect Redo Loans? Yes
Does this feature affect Undo Loans? Yes

Globalization/Localization

Will this feature support users localizing data that they enter? N/A
Does this feature involve any date/time related data, and if so how should conversions be handled? No
Is there currency or other numeric data ? If so does it require any special handling or validation? No

Logging

Change Log

Do changes to the data that is collected or stored by the new feature have to be fully logged by the system? N/A
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.

Does the feature affect any existing reports? Collection Sheet report
Does the feature require adding any new reports? No

Performance

Will the feature be a high use-case scenario? No
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? 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? No

Setup and Installation

New Installations

Will the feature include demo data? No
Does the feature require any data to be gathered at setup runtime? No

Backward Compatibility and Upgrades

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? New option for repayment rules in Holidays

Hosting Support

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

Configuration

Does this feature require changes to configuration files? No
If so, is this feature enabled or disabled by default? N/A

Customers

Which MFI's do we expect to use this feature? SECDEP, KMBI
How will this impact them? Can only create holidays w/ this repayment rule after it's deployed

Open Questions and Notes

Review and Approvals

 

Date Name Role Status
    PM  
    Dev  
    QA  
0
Your rating: None

Branch Level Holidays

Setting up holidays and repayment rule at branch level

Introduction

Some MFI's span large regions where different branch offices might observe different holidays.  They need the ability to define holidays for specific branch offices in Mifos and be able to set the repayment rule to follow during those holidays.

User Stories

Priority User Story Section in FR
1 As an Administrator at an MFI, I want to be able to define a period of time as a holiday for specific branches, and choose the repayment rule to follow during the holiday for those branches..  

Goals

  • Ability to define a holiday for branch offices, all the way up to head office level in the office hierarchy.
  • Ability to set a repayment rule for those holidays for schedules to follow, will only apply to the offices that are affected

Non-Goals

The following items will not be addressed in this release:

  • Editing the branches or any other details that apply to a holiday that has already been created.
  • Deleting holidays already created in Mifos

Definitions and Terminology

Term Definitions
   
  • Mandatory fields will be preceded by *
  • Links are italicized
  • Buttons are Button

Related Documents

Branch Level Holidays

This feature will allow holidays to be defined at the branch level.

Use Cases

Administrator creates a holiday for specific branches.

Actors

  •  Administrator

Preconditions

  •  None

Basic Flow

  1. Administrator navigates to Define new holidays. 
  2. Administrator creates a new holiday with a period from one date to another, name of holiday, and repayment rule.
  3. Administrator selects branch offices the holiday applies to. 
  4. Administrator hits Preview.
  5. System displays new holiday with details of the holiday including the branches the holiday applies to 
  6. Administrator chooses to Submit.

Post-conditions

  • Mifos has new holiday defined for the branches selected.  Only schedules in those branches are affected by the holiday.  They are updated the following day with the repayment rule selected.

Alternative Flows

Administrator edits branches of new holiday during holiday creation.

  1. At step 5 of basic flow, Administrator clicks on Edit Holiday to edit details of the holiday and adds or removes branches, and hits Preview again.  Use case continues at step 3 of Basic Flow.

Post-conditions

  • Mifos has new holiday defined.
  • Schedules only in those branches are affected.

Validations

  • Holidays periods cannot be created in the past (either To or From dates must be before current date) - following error message is displayed - Holiday can't be added for current date or dates in the past.

Administrator creates a holiday for an area office.

Preconditions

  •  Mifos has been set up with the following office hierarchy - HO > AO > BO

Flow

  1. At step 3 of basic flow, Administrator selects an area office to apply a holiday to.  Use case continues at step 4 of Basic Flow.

Post-conditions

  • Mifos has new holiday defined for that area office.
  • All schedules under the area office are updated the next day with the new holiday change.  This includes all branch offices under the area office.

Validations

  • Holidays periods cannot be created in the past (either To or From dates must be before current date) - following error message is displayed - Holiday can't be added for current date or dates in the past.

Administrator creates a new branch office in Area Office 1.

Actors

  •  Administrator

Preconditions

  •  A holiday has been defined that applies to Area Office 1.

Basic Flow

  1. Administrator navigates to Define offices and creates a new branch office with parent Area Office 1. 
  2. Administrator chooses to Submit.

Post-conditions

  • Any schedules created under the new branch office inherit holidays of its parents.  This would include both holidays defined for the HO, and holidays defined for Area Office 1. 

Administrator moves Branch Office 1 from Area Office 1 to Area Office 2

Actors

  •  Administrator

Preconditions

  • Branch Office 1 is under Area Office 1 in Mifos office hierarchy.
  • There are different holidays defined for Area Office 1 and Area Office 2.
  • Branch Office 1 also has a holiday defined just for that office.

Basic Flow

  1. Administrator navigates to View offices and edits Branch Office 1. Administrator changes the parent of Branch Office 1 from Area Office 1 to Area Office 2.
  2. Administrator chooses to Submit.

Post-conditions

  • The next day, all schedules under Branch Office 1 are updated so that changes to schedules due to holidays from Area Office 1 are removed, and new updates are made to schedules based on holidays defined for Area Office 2.
  • The holiday changes that stem from holiday attached to Branch Office 1 are still on the schedules in Branch Office 1.

User Stories

Priority Size User Stories Mingle card #
1 Small As a User, I can create a new holiday for offices from head office to branch office level.  
1 Large As a User, I can see that loan schedules in all child offices affected by new holiday have been applied the repayment rule set.  
1 Medium As a User, I can see that savings schedules in all child offices affected by new holiday have been applied the repayment rule set.  
1 Medium As a User, I can see that client, group, and center fees in all child offices affected by new holiday have been applied the repayment rule set  

Branch Level Holidays Functional Requirements

Updates Across all parts of workflow

FR# Pri Description Comments / Mockups
0.1 P1 All references to Organization Wide should be removed from these screens  
0.2 P1 Update the UI screens for all these pages to be similar to other pages in Admin - for example, Admin header at top should be different color, and we should have the Holiday Information and Review & Submit at the top like on other pages like Define New Fee.  

New selection of branches in holiday creation

FR# Pri Description Comments / Mockups
1.1 P1 When creating a new holiday, there will be a new selection tree to select multiple offices the holiday will apply to. createnewholiday.jpg
1.2 P1 There should be a tree/hierarchical view of offices - listed[] in alphabetical order by parent office, then next child, til the lowest level, then up one, etc. (same as View Offices page right now) and it will list the office hierarchy.  See mockup for exmaple  
1.3 P1 If a parent office is selected, then all child offices inherit the holiday.   
1.4 P1 If a child office is selected, then the holiday is only applied to the child office.  
1.5 P1 The user can select one or more offices,  

New preview of holiday

FR# Pri Description Comments / Mockups
2.1 P1 A new column will be added titled "Applies To" where the offices that holiday applies to are listed.  If holiday applies to a parent office and all children underneath it, only the parent office needs to be listed.  previewnewholiday.jpg
2.2 P1 Offices are separated by commas and sorted alphabetically by parent.   

New View Holidays

FR# Pri Description Comments / Mockups
3.1 P1 Similar to preview, new column will be added titled "Applies To" where the offices that each holiday applies to are listed. See Section 2 for more details.  

Other Assumptions

QA Considerations

  • Existing holidays in the system should automatically apply to Head Office.

Standard Considerations

Security (Permissions, Roles, and Data Scope)

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? No
Are you adding any new permissions or changing existing permission to control this feature? P2 - add new permission for creating holidays
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

Does this feature affect Bulk Loan Creation?  How? Yes - only branches w/ that holiday designated should have schedules affected
Does this feature affect Collection Sheet Entry?  How? Yes - only branches w/ that holiday designated should have schedules affected
Does this feature affect Redo Loans? Yes - only branches w/ that holiday designated should have schedules affected
Does this feature affect Undo Loans? Yes - only branches w/ that holiday designated should have schedules affected
Does this feature behave differently for LSIM or GLIM? No - schedules should be updated accordingly with LSIM on or off.  

Globalization/Localization

Will this feature support users localizing data that they enter? N/A
Does this feature involve any date/time related data, and if so how should conversions be handled? Yes - should already be taken care of
Is there currency or other numeric data ? If so does it require any special handling or validation? No

Logging

Change Log

Do changes to the data that is collected or stored by the new feature have to be fully logged by the system? N/A
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.

Does the feature affect any existing reports? Collection Sheet report
Does the feature require adding any new reports? No

Performance

Will the feature be a high use-case scenario? No
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? 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? Yes - []Apply Holiday Changes will be affected

Setup and Installation

New Installations

Will the feature include demo data? No
Does the feature require any data to be gathered at setup runtime? No

Backward Compatibility and Upgrades

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? New selection for holidays - must choose Head Office to work as expected

Hosting Support

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

Configuration

Does this feature require changes to configuration files? No
If so, is this feature enabled or disabled by default? N/A

Customers

Which MFI's do we expect to use this feature? KMBI, GK
How will this impact them? Ability to create new holidays now for specific branches

Open Questions and Notes

Review and Approvals

 

Date Name Role Status
    PM  
    Dev  
    QA  
 
0
Your rating: None

Account Management

Accounts (Centers, Groups, Clients, Loans, and Savings), setting their properties, and how to enter them.  Includes creating multiple loan accounts.

0
Your rating: None

Center Accounts

Center Accounts

An MFI can optionally configure MIfos to support centers (see System Configuration). If Mifos is configured with centers turned on, then all groups must belong to a center.

When a center is defined, a loan officer, joining date (when the center joined the MFI), and meeting schedule must be specified.  A meeting schedule is required even if the MFI has configured Mifos to support the disbursal of loans and collection of repayments on non-meeting days [See Meetings].  If this option is turned off, then all repayment schedules and disbursal dates will be scheduled on meeting days. Note the following about centers:

  • Savings accounts. Savings accounts can be opened for centers (centers cannot have loan accounts). If a center has a savings account, all clients belonging to that center can make deposits to and withdrawals from that savings account.  A user can specify which client made the deposit or withdrawal.  Alternatively, a user has the option to not specify the client who made the transaction. 
  • Center Charges. Periodic and one-time center fees can be pre-defined from the Admin tab.  See Fees.  These can be defined to be automatically charged to any newly created center, appearing on the "Center Charges" page.  An LO can remove one or more of these fees for a particular center account and edit the fee amount if it is a one-time fee. If a fee is removed from one account, it does not affect other accounts. In addition, an LO can apply pre-defined fees as well as miscellaneous fees or penalties on the account after it's been created. These charges will be added in the next payment.
  • Inactive State. Clients and groups associated with a center must be in a closed state for a center to be made inactive.  When a center is made Inactive, the associations with groups and clients are retained. Outstanding penalties or amounts due listed in the "Client Charges" section remain attached to the record, although a user can still waive outstanding fees. Users will not be allowed to apply any payments or charge any additional fees to an inactive center. 

Attributes for Center Accounts

The attributes for a center account, provided in the following table, are divided into two parts:

  • Attributes defined during center creation, which can also be viewed/edited later from the account details page.
  • Attributes that can be viewed/edited only after center creation, from the account details page.
S.No. Attribute Name Data Type Default value, Mandatory for state inactive - active  Editable in state active - inactive Range Can be hidden?

Mandatory -Optional -Configurable

Description/Notes

Attributes During Center Creation

1. Name Alphanumeric None - Yes - Yes No - No N/A No Mandatory Name of center should be unique across branch.
2. Loan officer assigned to Center Drop-down None- No - Yes Yes- Yes LOs in that branch No Mandatory This information percolates down to all groups and clients linked to the center.
3. MFI joining Date Date Current date - Yes - N/a Yes - Yes N/A No Mandatory This is the date when the center joins the MFI.  The user can enter any past or future date. 
4. External ID Numeric None - No - Configurable Yes - Yes N/A Yes Configurable If an old system was being used, and now is transferred to the Mifos system, this can serve as a link between old system and the Mifos system. There is no built-in intelligence in Mifos system to handle this data.
5. Meeting schedule – Frequency of Meetings Frequency/ Recurrence None - No - Yes Yes - Yes 999 weeks; 999 months No Mandatory This is the number of times meetings are held within a time period (number of weeks, months).
For details, refer ''__Meetings''__.
6. Meeting Schedule - Location of Meeting Alphanumeric None - No - Yes Yes - Yes N/A No Mandatory This is the text field indicating where meetings are held for the group. This information percolates to all the groups belonging to this center.
7. Center Address -Address 1 Alphanumeric None - No - No Yes - Yes N/A Yes Optional The Address fields for centers can be hidden. If hidden, address fields including city, state, country and postal code are not displayed in the UI.
8. Address 2 Alphanumeric None - No - No Yes - Yes N/A Yes Optional  
9. Address 3 Alphanumeric None - No - No Yes - Yes N/A Yes Optional  
10. City Alphanumeric None - No - No Yes - Yes N/A Yes Optional  
11. State Alphanumeric None - No - No Yes - Yes N/A Yes Optional  
12. Country Alphanumeric None - No - No Yes - Yes N/A Yes Optional  
13. Postal Code Alphanumeric None - No  - No Yes - Yes N/A Yes Optional  
14. Telephone Alphanumeric None - No - No Yes - Yes N/A Yes Optional  
15. Question Groups   None - No - Configurable Yes - Yes N/A Yes Configurable See Question Groups.

Attributes and Actions Viewable/Editable only After Center Creation

16. Groups assigned to Center Group names None - No - No Yes - Yes Groups in that branch No Mandatory Groups cannot be assigned to Inactive centers.
But a center can be made Active without any group assigned to it.
17. System ID Numeric N/A - N/A - N/A N/A -N/A N/A No Mandatory System generated unique center ID to identify the center.
18. Date created in system Date The Date the record is first created - No - No N/A -N/A N/A system filled No Mandatory Date when the center record was created and saved in the system.
19. Assigning clients to center titles (Officer titles/positions) Drop-down None - No - No Yes - Yes Titles defined by MFI and Names of Clients belonging to the center Yes Configurable See Assign clients to positions
20. Notes (500) Alphanumeric None - No - No Yes - Yes N/A No Optional A record can have multiple notes attached to it.
21. Status Radio Buttons Active - N/A - N?A Yes - Yes Active;
Inactive
No Mandatory

By default, a new center is saved in Active state

Center Account Details

The account details screens display the following information:

  • Account information: current loan, savings and center accounts; all the closed accounts and cancelled states
  • Groups assigned to the center.
  • Center information including official titles, meeting details etc.
  • Associated notes
  • Performance history, as described below.

Performance History

Mifos tracks the performance of each center and provides the following metrics, which are displayed in the Performance History box on the account details page.

Performance metrics

Formula

Number of active clients

Total number of active and on-hold clients belonging to the center

Number of active groups

Total number of active and on-hold groups belonging to the center

Total outstanding loan portfolio

Total original value of all outstanding loans (including all group loans and client loans)

Portfolio at risk

The remaining balance of all outstanding loans (of groups and clients together) that have one or more installments of principal past due more than 30 days / Outstanding principal balance of all outstanding loans.

These values are principal only; they do not include interest.

*Currently not available in Mifos.

Total Savings

Includes all the savings accounts of the center, group and also of the clients belonging to the group

 

0
Your rating: None

Group Accounts

In Mifos, clients can be organized into groups. If Mifos is configured to support centers, then groups are associated with centers and inherit the meeting schedule and loan officer from the center.  If Mifos is configured not to support centers, then groups are the top of the client hierarchy and a meeting schedule and loan officer must be defined for the group.

A group may have no clients, one client, or many clients. Clients can be added to a group either at the time of client account creation or at a later time.

The role of the group varies depending on the MFI. For some, the group is the primary unit with which the MFI interacts. Groups maintain a single group savings account and receive a single group loan from the MFI. For other MFIs, the group is simply a collection of individual clients.  The benefits of the group include:

  • By vouching for other members of the group, the group provides due diligence of creditworthiness.
  • By co-signing the loan, the group provides insurance of payment by individuals.
  • The group provides reinforcement, esprit de’ corps, encouragement.

When a group applies for a group loan, the loan application goes through the same approval cycle as an individual loan.

The MFI can assign members positions such as president and treasurer, to facilitate group management.

Group Fees

Group fees can be defined from the Admin tab. A user can remove one or more of these fees for a particular group account. If a fee is removed from one account, it does not affect other accounts. In addition, an LO can apply miscellaneous fees or penalties, either at the time of account creation or later. The LO specifies the amount, which is added in the next payment. These are one-time charges; a penalty cannot be charged for an overdue fee.

Attributes for group records

The following table of group attributes is divided as follows: attributes related to groups, available during group creation; attributes related to the MFI, available during group creation; and attributes and actions that can be viewed/edited only after group creation, from the 'group Details page.

Attributes marked as Mandatory for Partial state in the table below are the minimum required to create a record. Pending Approval is an optional state; if Mifos is configured to hide this state, the attributes marked as Mandatory for Pending in the table should be considered as Mandatory for the Active state.  Note:  We have not thoroughly tested Mifos with the "Pending Approval" state hidden.  We do not recommend hiding this state.

 
 
S.No. Attribute Name Data Type Default value

Mandatory for State = Partial/ Pending/ Partial

Editable After State= Pending/ Approved Range Can be hidden? Mandatory/ Configurable

Description/ Notes

Group Information

1. Name of Group Alphanumeric None Yes/Yes/Yes

Yes/Yes

N/A No Mandatory This must be unique across the branch. 
2. Address of Group - Address 1 Alphanumeric None No/No/Yes Yes/Yes N/A Yes, if optional Configurable First field. The complete address of the group can be hidden.
3. Address 2 Alphanumeric None No/No/Yes Yes/Yes N/A Yes Optional Second field
4. Address 3 Alphanumeric None No/No/Yes Yes/Yes N/A Yes Optional Third field
5. City Alphanumeric None No/No/Yes Yes/Yes N/A Yes, if optional Configurable  
6. State Alphanumeric State of MFI No/No/Yes Yes/Yes Defined by MFI Yes, if optional Configurable  
7. Country Alphanumeric Country of MFI No/No/Yes Yes/Yes Defined by MFI Yes, if optional Configurable  
8. Postal Code Alphanumeric None No/No/Yes Yes/Yes N/A Yes Optional  
9. Telephone Alphanumeric None No/No/Yes Yes/Yes N/A Yes, if optional Configurable  
10. Question Groups   None No/No/Yes Yes/Yes N/A Yes, if optional Configurable See Question Groups.

MFI Related Information

11. LO assigned to group Drop -Down None No/No/Yes Yes/Yes LOs active in the branch. No Mandatory LO is inherited from the center, if Mifos is configured with centers enabled. Field is disabled in UI, if centers are enabled.
12. Name of Center assigned Click and select None No/No/Yes Yes/Yes Available centers, if Centre hierarchy exists. No Mandatory to be approved if Center hierarchy exists. This field  applies on if Mifos is configured with centers enabled.  Center is chosen at the time of group creation.
13. Trained Checkbox None No/No/Yes Yes/Yes Selected/Not selected. Yes Optional Once selected, it cannot be cleared.
For details, see Trained.
14. Trained on Date None No/No/Yes Yes/Yes N/A Yes, if “Trained” is hidden. Mandatory, if group is marked as “Trained”. Once the Trained on date is saved, it cannot be changed. The field becomes read-only.
15. External ID Alphanumeric None No/No/Yes Yes/Yes N/A Yes, if optional Configurable If an old system was being used, and now being transferred to Mifos system, this can serve as a link between old system and Mifos system. There is no built-in intelligence in Mifos system to handle this data.
16. Branch Name Alphanumeric Branch of User Yes/Yes/Yes Yes/Yes Braches as per data scope of logged in user No Mandatory If Mifos is configured with centers enabled, the branch is inherited from the center.  If centers are not enabled, then system should display a list of branches per user's data scope.
17. Meeting Schedule - Location of group meeting Alphanumeric None No/No/Yes Yes/Yes N/A No Mandatory If Mifos is configured with centers enabled, the meeting is inherited from the center.
If centers are not enabled, then the meeting schedules for the group must be defined.
18. Meeting Schedule – Frequency of Meetings Date/T ime/ Recurrence Inherited from center No/No/Yes Yes/Yes 999 weeks; 999 months No Optional Same as 17 above.
19. Apply fee type Multi select None No/No/N/A N/A - N/A All fee types applicable to clients No Optional See Group Fees.

Attributes/Actions Viewable/Editable After Group Creation

20. Assign client ID – Un-editable None No/No/Yes Yes/Yes Clients belonging to the group No   Clients belonging to the group are listed on the group details page.
See Assign Clients to Group
21. Assigning clients to positions (Officer titles/positions) Drop-Down None No/No/Yes Yes/Yes Options defined by MFI Yes, if optional Configurable See ''__Officer Titles; ''Assign Clients to Positions__
22. Group System ID Alphanumeric N/A N/A - N/A - N/A N/A - N/A N/A No Mandatory System generated unique ID.  This is not editable.
23. Record creation date Date None Yes/Yes/No No/No N/A No Mandatory Date when the record was first saved in the system.
24. Historical data Alphanumeric/ Numeric/ Date None No/No/Yes Yes/Yes N/A No Optional Refer Historical Data under Client Accounts
25. Notes (500) Alphanumeric None No/No/Yes Yes/Yes '''N/A''' No Optional A record can have multiple "notes" attached to it.
The last three notes are visible in the ''Details'' page.
26. Status Drop-Down None N/A - N/A - Yes Yes/Yes Refer State flow Pending Approval can be hidden by HO  
27. Flag Drop-Down None No/No/N/A N/A - N/A Refer flags No  

The flag is required only for Cancelled and Closed statuses.

Notes on Attributes

  • Formed by. The Formed by attribute is an additional attribute required to address the fact that the LO who manages a group may not be the same as the one who formed the group. This field is mandatory in all states and the value cannot be modified once specified during group creation. It is displayed in the details and edit pages as read-only information. All Active loan officers in the branch where the group is being created are listed in a drop down list. The LO assigned to the group can be the same as the LO who formed the group. The default value is the loan officer assigned.
  • Name of Center Assigned.  If a center hierarchy exists in the system, groups must be assigned to a center to be approved. Groups inherit the meeting schedule and LO from the center. If a center hierarchy does not exist, the user must define the meeting details for the group. A group's center can be changed, but before that can happen, all loan accounts of the group and the clients must be in a Closed or Cancelled state.
  • Group Trained:  Training is an MFI-wide setting and the training flag indicates whether a group has been trained. When a group is marked as Trained, a Training Date must be specified. A group can be marked as Trained only once and only one Training Date is saved per group record. Once the Training Date is saved, it cannot be edited or re-entered.
  • External ID Number: This field can be helpful if the MFI used a different system in the past to transfer data to Mifos. This ID can be used as a link between the old and new systems. Mifos does not hold any logic to handle this field.
  • Group Charges: Fee Types and Miscellaneous Charges: Miscellaneous fees or penalties can be charged to groups on the Group Charges page. These are one-time charges and penalties are not charged for overdue fees.

Group record states

When a group record is created, it is processed through various states, as illustrated below. A user with appropriate permissions can manually changes a group record state in Mifos.  If a checklist has been defined by the MFI, this checklist will appear when changing the group state [see Checklist].  

The state flow diagram explains the various states or statuses that a group record goes through:

 

 

State Flow Diagram - Group Record
 

As illustrated, a group record can reside in the following states:

state

description

Partial Group Application

If the record has been created, but data is incomplete or the user does not want the state to be Pending Approval, the status can be marked as Partial Application.

Pending Approval

This is an optional state and can be hidden by the MFI. The record contains all necessary data, and is waiting for approval. Before and after this point, there may be some offline processes that govern the approval process. These processes are specific to the MFI and do not impact Mifos functionality.

Approved/Active

The group has been approved and is eligible to open a savings account or apply for a loan or other products offered by the MFI.

Cancel

A group application can be cancelled due to various reasons:
* Group withdraws the application
* An MFI officer rejects the application
* The group is blacklisted and not eligible
* A duplicate group record already exists

A group can reapply at any time after this. When the group reapplies, the old record and system ID can be used and carried forward if it has not been archived. From Cancel, a group record can be moved to a Partial Application state.

On Hold

If the group state is marked On hold, it has the following implications:

* New accounts cannot be opened for the group.
* Savings withdrawals are not allowed, but savings interest continues to accumulate.  Deposits are permitted.
* New loan accounts cannot be created for the group.  Repayments for current group loans remain as scheduled.  Accounts for clients are not affected.

Close

A group record can be Closed to indicate that the group is no longer banking with the branch or that a duplicate record for the group exists in the system. The Flags associated with this state are: Transferred, Duplicate Account, Left Program, Blacklisted, and Other.
* A group cannot be Closed if it has clients or accounts in states other than Cancelled and Closed.
* Once Closed, a group can reapply, but a new record must be created.

 

Notes on states:

  • When a group record is created, it can be either saved in Partial Application state or Pending Approval. When Mifos is configured to exclude Pending Approval (an optional state), a new group record can be saved in Active state. [Note: this has not been thoroughly tested and may not work propertly].  There is no restriction on the number of times a group state is changed.
  • When a group is closed, any associations with its centers (if applicable) and its clients are retained. Outstanding penalties or amounts due listed in the "Group Charges" section remain attached to the record, although a user can still waive outstanding fees. Users will not be allowed to apply any payments or charge any additional fees to an inactive center. 
  • If a group is Blacklisted, this does not change the state of its member records or accounts. Once a Blacklisted flag is attached to a group record, it cannot be removed, regardless of the state the group moves to. For example, a Blacklisted group can be moved to Active, but the Blacklisted flag will still be attached to the record and will be viewable on the group account details page.
  • A group without clients can exist in any state and have active loan and savings accounts.
  • There is no Deleted state. All group records are kept in the system.

Group Account Details

Once a user with appropriate permissions has entered the information to create a group, the user then previews the entire set of information in one screen, to validate the data. This is a mandatory step. When the user approves the preview page, the group’s data is saved in the database. Every time a group record is edited or a state is changed, the user is required to preview the changes before they are saved.

Error checking for mandatory fields and valid data is performed. If an invalid entry is found or any mandatory fields have been left empty, an error message is displayed. The system checks that the group name is unique across the branch, as a way of ensuring that no duplicate records exist. No further checking for duplicate group records is performed.

When a group is created, Mifos generates a unique ID to identify it in the system. This is displayed on the group details page, which also includes the following information:

  • Account information: current accounts for each group; closed accounts and account states for each group
  • Clients assigned
  • Group information: training details, official titles assigned, and meeting details.
  • Associated notes
  • Historical data, as described in Client Accounts.
  • Performance History, described below.

Performance History

Mifos tracks the performance of each group and provides the following metrics, which are displayed in client's and groups’ detail pages in the Performance History box:

performance metrics

formula

Number of active clients

Total number of Active and On hold clients belonging to the group, irrespective of the client state

Amount of last group loan if applicable

Total amount of the last group loan that was disbursed.    Please note that the logic for this field is different on the client page.  There is an open issue (#533) to resolve this.

Average loan size for individual members

Sum of active loan amount for all client loan accounts / Number of client loan accounts

Total outstanding loan portfolio

Total original value of all outstanding loans (including group loans and all client loans)

Portfolio at risk

The remaining balance of all outstanding loans that have one or more installments of principal past due more than 30 days / Outstanding principal value of all outstanding loans.

This includes only Loan product loans.

These values are principal only; they do not include interest.

Total Savings

Total of all savings accounts of the group and those of the clients belonging to the group

Loan cycle per product

See description below*

Notes on loan cycle per product

  • Separate loan counters for each product are maintained for each group. For example, if the group has taken 2 agricultural loans and 3 cattle loans, its performance history displays the loan cycle for educational loan= 2; loan cycle for cattle loan= 3.
  • The counter is incremented when a loan account is approved and decremented for rescheduled loans or written off loans.
  • The loan cycle number from historical data is not included in any of the above counters.

Moving Groups

A group can be moved from one center to another if all the active loan and savings accounts associated to the group and to the clients within the group are closed.  The group can only be moved to a center with the same frequency of meetings as before.  For example, a group that meets monthly cannot be moved to a center that meets weekly).  When a group is moved, the group and its clients inherit the meeting time and loan officer of the new center.  If loan schedules are tied to meetings, then all corresponding loan schedules will be updated. 

A group attempting to transfer to a branch already containing a group with the same name must first change its name to something unique to the new branch.

Loan Officers assigned to groups can also be changed.

0
Your rating: None

Client Accounts

Introduction

As either individuals or as members of groups, clients are the end beneficiaries of microfinance services. Clients are typically recruited, assigned to and managed by a loan officer at a particular BO. If they belong to a group, they inherit the loan officer from the group.

Before clients can receive loans, set up savings accounts, or be charged fees, client accounts must be created for them in Mifos.

Users with appropriate permissions can create a new client record by clicking the Create new client link on the Quick start navigation pane of the Home tab.

Note the following

  • Periodic and one-time center fees can be pre-defined from the Admin tab.  These can be defined to be automatically charged to any newly created center, appearing on the "Client Charges" page.  An LO can remove one or more of these fees for a particular center account and edit the fee amount if it is a one-time fee. If a fee is removed from one account, it does not affect other accounts. In addition, an LO can apply pre-defined fees as well as miscellaneous fees or penalties on the account after it's been created. These charges will be added in the next payment.
  • At the same time, up to three savings accounts that can be automatically created for the client.  The accounts are created when the client is moved into active state.

Attributes for Client Accounts

The following table of client attributes is divided into three sections: personal information, available during creation of a client record; MFI related information, available during creation of a client record; attributes/actions that are viewable and editable only after creation from the client account details page.

Attributes marked mandatory for Partial state in the table are the minimum requirements to create a record. Pending Approval is an optional state; if this state is hidden, the attributes marked mandatory for Pending state should be considered mandatory for the Active state.  Note:  We have not thoroughly tested Mifos with the "Pending Approval" state hidden.  We do not recommend hiding this state.

 

S. No. Attribute Name Data Type Default Mandatory for State Partial / Pending Editable after Approved Partial / Pending/ Approved Range Can be hidden by MFI? Mandatory / Configurable Description / Notes
Personal Information
1. Salutation Drop-Down None Yes Yes Yes / Yes / Yes Options defined by HO No Optional
2. First Name Alphanumeric None Yes Yes Yes / Yes / Yes 100 characters No Mandatory For details, see Name.
3. Middle Name Alphanumeric None No No Yes / Yes / Yes 100 characters Yes Optional
4. Second last Alphanumeric None No No Yes / Yes / Yes 100 characters Yes, if optional Configurable
5. Last Name Alphanumeric None Yes Yes Yes / Yes / Yes 100 characters No Mandatory
6. Government ID # Alphanumeric None Yes Yes Yes / Yes / No N/A No Configurable This can be Government ID, or National ID, or Social Security Number.
This is un-editable after a client enters Active state.
7. Date of Birth Date None Yes Yes Yes / Yes / No Any date in the past No Mandatory Date format is locale specific, but is stored in MFI format.
8. Gender Drop-down None Yes Yes Yes / Yes / Yes Male; Female No Mandatory
9. Marital Status Drop-down None No No Yes / Yes / Yes Options defined by MFI No Mandatory
10. Number of children Numeric None No No Yes / Yes / Yes 0-30 No Configurable
10. Citizenship Drop-down None No No Yes / Yes / Yes Options defined by MFI. Yes, if optional Configurable
11. Ethnicity Drop-down None No No Yes / Yes / Yes Options defined by MFI. Yes, if optional Configurable
12. Education level Drop-down None No No Yes / Yes / Yes Options defined by MFI. Yes, if optional Configurable  
13. Business Activities Drop-down None No No Yes / Yes / Yes Options defined by MFI Yes, if optional Configurable
14. Handicapped Drop-down None No No Yes / Yes / Yes Options defined by MFI. Yes, if optional Configurable MFI can make this yes/no, or this can be “blind” “deaf” “wheelchair”, etc.
15. Photograph Photo No No No Yes / Yes / Yes N/A Yes, if optional Configurable REMOVED in 1.6
16. Spouse /Father First Name Alphanumeric None Yes Yes Yes / Yes / Yes N/A No Mandatory For details, see Name.
17. Spouse /Father Middle Name Alphanumeric None No No Yes / Yes / Yes 200 characters Yes Optional
18. Spouse /Father Second Last Name Alphanumeric None No No Yes / Yes / Yes 60 characters Yes, if optional Configurable
19. Spouse /Father Last Name Alphanumeric None Yes Yes Yes / Yes / Yes 60 characters No Mandatory
20. Flag for whether /not father or spouse name Drop-Down None Yes Yes Yes / Yes / Yes Father or Spouse No Mandatory
21. Address 1 Alphanumeric None Yes Yes Yes / Yes / Yes N/A No Mandatory First field
22. Address 2 Alphanumeric None No No Yes / Yes / Yes N/A No Optional Second field
23. Address 3 Alphanumeric None No No Yes / Yes / Yes N/A Yes Optional Third field
24. City Alphanumeric None Yes Yes Yes / Yes / Yes N/A No Configurable
25. State Drop down MFI state Yes Yes Yes / Yes / Yes Defined by MFI No. Configurable
26. Country Alphanumeric Country of the MFI Yes Yes Yes / Yes / Yes Defined by MFI. Yes. Configurable
27. Postal Code Numeric None Yes Yes Yes / Yes / Yes None No Configurable Label should be defined by MFI: “pin code”, etc.
28. Telephone Alphanumeric None No No Yes / Yes / Yes N/A Yes, if optional Configurable MFI configures whether or not it is mandatory.
29. Question Groups   None No Yes Yes / Yes / Yes N/A Yes, if optional (Unused ones) Configurable See Question Groups.
MFI Related Information
30. Loan Officer Assigned Drop down LO entering record No Yes Yes / Yes / Yes List of active LOs in the system. No Mandatory If client is part of a group, LO should be inherited from group membership. Else, LO can be chosen from the list of LOs.
If the user is an LO, the field should default to the LO’s name
31. Meeting Schedule Date/ Time/ Recurrence Inherited from Group Yes Yes Yes / Yes / Yes 999 weeks; 999 months. No Optional This value is inherited from group information.
If not belonging to a group, the client has an individual meeting schedule, which can be changed anytime in any state except for Closed and Cancelled states.
For details, refer Meetings
32. Trained Check box Not selected No No Yes / Yes / Yes N/A Yes, if optional Optional See Trained.
33. Trained On Date None No No Yes / Yes / Yes N/A Hidden, if “Trained” box is hidden Optional See Trained.
34. Branch Alphanumeric Branch of the user Yes Yes Yes / Yes / Yes Branches in the data scope of the logged in user. No Mandatory Default value for this field should be derived from the login of the user/LO.
Branch is chosen at the time of client record creation. If the client belongs to a group, the branch of the group is selected.
35. Apply fee type Multi select None No No N/A - N/A - N/A All fee types applicable to clients No Optional Personnel can apply fee amount after choosing an appropriate fee type. For details, refer Client Accounts. This can be edited later on from the ''Client Details ''page.
In addition, “default fees” is applicable to all the new client records. If required, users can remove these default fees from a client record.
Attributes /Actions Viewable /Editable After Client Creation
36. Client Start Date Date Date when changing the client state to Active. No Yes No / No / No   No N/A This is the point at which client is first Approved.
37. Record creation date Date N/A Yes Yes No / No / No N/A No N/A This is system generated when the record was first saved in the Mifos system.
38. Client - system ID Alphanumeric None N/A N/A No / No / No   No N/A This is an independent unique ID generated by the Mifos system to identify a client. This is not editable.
39. Assigned to group- Group ID Group ID number None No No Yes / Yes / Yes Groups that exist in the branch No N/A Group ID of the group that the client is a part of.
40. Accounts Account IDs N/A N/A N/A Yes / Yes / Yes Accounts owned by the individual No N/A List of loan, savings and client account of the client.
41. Center membership Center ID Inherited from Group No No Yes / Yes / Yes   No (If Centers exist in hierarchy) Mandatory (if existing in hierarchy and client belongs to a group) Inherited from group details. Clients cannot belong to a center directly.
42. Historical data Alphanumeric/ Numeric/ Date None No No Yes / Yes / Yes N/A No Optional Client’s historical data has to be maintained and displayed in the client details screen.

For details, refer Historical Data.

43. Notes (500) Alphanumeric None No No Yes / Yes / Yes N/A No Optional A record can have multiple "notes" attached to it.
By default, last three notes are visible in the details page. Also if the “See all notes” link is called, all notes related to the record should be shown.
44. Status Drop-down None N/A N/A Yes / Yes / Yes Partial Application;
Pending Approval (optional state);
Active;
On Hold;
Cancelled;
Closed
Pending Approval can be hidden by HO Mandatory
45 Flag Drop-down None No No N/A - N/A - N/A For Status Cancelled-Rejected; Duplicate; Withdrawn;
Blacklisted;
Other
For status Closed-
Transferred; Duplicate;
Blacklisted;
Left Program;
Other
No The flag is required only for Cancelled and Closed statuses. For details, see flags

 

Note that only the following fields are mandatory for On Hold, Cancelled, and Closed states: First Name, Last Name, DOB, Loan officer, Meeting. Also, fields that cannot be edited after Active state are not editable in Closed and On Hold states either.

Notes on attributes

  • Formed by. The Formed by attribute is an additional attribute required to address the fact that the LO who manages a client may not be the same one who created the client. This field is mandatory in all states and the value cannot be modified once specified. It is displayed in the details and edit pages as read-only information. All active loan officers (both LO and non-LO) in the branch where the client record is being created are listed in a drop down list. This list is not affected by the data scope of the user. The LO assigned to the client is the default.
  • Poverty status. This attribute can be used by MFIs to produce reports on the poverty status of its clients. It is required for all states by default, although an MFI can make it optional. The default options, which are available in a drop-down list and can be changed by the MFI, are: Very Poor, Poor, and Non-poor. This attribute is defined at client creation and can be modified at any time from the edit personal information page. The information is labeled Poverty Status and displayed with the client personal information.

Personal details

  • Name. Client, user, father, and spouse names can consist of the following fields: First Name, Middle Name, Second Last, Last Name. The first and last names are mandatory. An MFI can choose whether to collect the middle two; if they aren’t collected, the fields will not be displayed. An MFI specifies the sequence in which the names are displayed. Once defined, names are always displayed in this order, whether in search results, detail pages, or reports. This sequence does not affect how Mifos sorts results, which is as follows:
    • First Name (Middle Name, if it exists) Last Name (Second Last Name, if it exists)
    • Last Name (Second Last Name, if it exists), First Name (Middle Name, if it exists)
  • Addresses. Clients can have multiple addresses.

Client Family details
If this feature is turned on (see Configuration Guide)

  • Name
  • Birthdate

MFI related details

  • External ID Number. This can be a government ID, national ID, or social security number. It is un-editable after a client enters an Active state. An MFI can choose whether to display this field.
  • Client Trained. Training is an MFI-wide setting and indicates whether a client has been trained. It has no correlation to the group training flag. A client can be marked as Trained only once, and only one Training Date is saved per client record. When a client is marked as trained, a training date must be specified. Once the training date is saved, it cannot be edited or re-entered.
  • Assigned to Group. This is the ID of the group that the client has been assigned to. This field is visible only if the client is eligible for group-based membership. A client can be added to an existing group and can belong to only one group at a time. If a client belongs to a group, the LO and meeting schedule of the group are inherited by the client. Clients cannot change groups if they have active loans. A client’s group can be closed if all clients in the group are either in Cancelled or Closed state.
  • Meeting Day. A client inherits the meeting day from the group. If the client is not part of any group, the client can have an individual meeting schedule. [For details, see Meetings.]
  • Fee Type and Miscellaneous Charges. Miscellaneous fees or penalties can be charged to clients and stored in the client accounts. These are one-time charges. Penalties are not charged for overdue fees. In addition, predefined fee types can be applied to the client accounts. [For details, refer Fees.]

Client Record States

When a client record is created, it is processed through various states, as illustrated below.

 

State Flow Diagram - Client Record
 

 A user manually changes a client record state in Mifos.  Between state changes a checklist is displayed if one has been defined. Mifos validates the fields as described in the attributes table above. Every change in state is entered in the change log, along with the date and user ID of the user making the change.  For details, refer to Change Logs and Application Logs.

As illustrated, a client record can reside in the following states. All states are mutually exclusive:

Status Description
Partial Application If the record has been created, but data is incomplete or the user does not want the status to be as Pending Approval, status can be marked as Partial Application.
Pending Approval This is an optional state and can be omitted during setup by the MFI. Record contains all necessary data, and is waiting for approval. Before and after this point, there could be some offline processes, which might govern the approval process. These processes can be specific to each MFI and does not impact Mifos functionality.
A record can be saved in this state after the mandatory fields (according to the attributes table) have been filled.
Active Client has been Approved and is eligible to open a savings account or apply for a loan.
Every client has to have a Loan Officer to be active.
Cancel A client application can be cancelled due to various reasons:
Client can withdraw the application
An MFI officer rejects the application
The client is not eligible, as the client has been Blacklisted.
A duplicate client record already exists and thus the new record is being cancelled.
A client can reapply anytime after this. When a client reapplies after the record is Cancelled, the same client record can be moved to Partial state.
On Hold If the client status is marked On Hold, it has the following implications:
New accounts cannot be opened for the client.
New loan accounts cannot be opened for the client, but repayments for current loans remain as scheduled.
Close A client record can be closed to indicate that the client is not banking with the branch anymore or a duplicate record for the client exists in the system. The flags associated with this state are: Transferred, Duplicate Account, Blacklisted, Left Program, and Other. Once Closed, client can reapply again, but the record creation of the client has to follow the complete application procedure. Refer state flow.

Notes on client states:

  • When a client record is created, it can be either saved in Partial Application state or Pending Approval state. If Pending Approval (an optional state) is not included by the HO, a user with required permissions can save the new client record in Active state.  [This has not be fully tested
  • An Active client record must have an LO and a meeting time.  A client record can be saved in Partial or Pending Approval without an LO assigned or meeting time defined.
  • There is no restriction on the number of times a client state can be changed.
  • If a client state is changed to Cancelled/Closed, the associations with the LO, group, and meeting remain.
  • There is no Deleted state. All client records are kept in the system.
  • A blacklisted client can be moved to Active, but a permanent flag gets attached to the client record to indicate that the client has been previously blacklisted. This flag is viewable on the client account details page.
  • When a client record is closed, the system stops applying any periodic fee linked to the client record. Transactions can no longer be made to the record. Miscellaneous penalty or any amount due remains.

Client Account Details

Once a user with the appropriate permissions has entered the data to create a client, the user then previews the entire set of information in one screen, to validate the data. This is a mandatory step. When the user approves the preview page, the client’s data is saved in the database. Error checking for mandatory fields and valid data is performed. If any invalid entry is found or any mandatory fields have been left empty, an error message is displayed.

When a client record is created, Mifos checks the system for duplicate records, based on Government ID. If a client record with the same Government ID already exists in any state other than Closed, an error is display and the new record is not created. If a Government ID is not present, the system checks for duplicates based on Name and DOB [and father/spouse name?]. If this information matches an existing record, the user must change the name (for example, by adding a middle name) before the new record is created.  In either case, if a matching record is found in Closed state, a warning is displayed to the user to review the existing record before continuing.

The client account details page includes the following information:

  • Current accounts for the client
  • Closed accounts
  • A link to the details page for the group to which the client is assigned
  • A link to the details page for the center to which the client is assigned
  • MFI information, including training details, group membership, and meeting details for each client
  • Personal information
  • Associated notes
  • Most recent set of transactions.
  • A link to summarized historical data

All data, except the system-generated Client ID, Government ID, and DOB can be modified. Government ID and DOB fields can only be modified in Partial Application state. A client’s group membership can be edited or removed, as long as neither the group nor the client have active loan or savings accounts.  Every time a client record is edited or its state is changed, the user is required to preview the changes before they are saved.

Change logs track the following changes made to the client records: Date of change, Changed by, Fields changed, Old value, New value. These logs are viewable from the client details page. Changes are displayed in a single list on one or more pages.

Historical Data

Historical information is available by clicking the View Summarized Historical Data link at the bottom of the account details page.

  • The attributes for historical data given in table below are editable at any time and Mifos system validates these attributes.
  • The system allows users to enter details of a single loan only, which is usually the last loan taken by the client or the group.
  • None of the fields are mandatory.
  • This information is stored for reference purposes only and should be confused with historical data that is migrated into Mifos’ database.  Mifos does not use or incorporate this data to update the client record.  For example, the loan cycle number listed here is not added to the loan cycle number tracked by Mifos.
  • Since most MFIs decide to migrate their data from their legacy system into the Mifos database, we do not expect this feature to be heavily used.

Attribute

Data Type

Remarks

MFI Joining Date

Date

No validations are required. Future or past dates will also be acceptable.

Loan Cycle Number

Number

 

Product Name

Text field

No validations are required.

Amount of loan

Numeric

Information on the last loan is stored by the system.

Total amount paid

Numeric

 

Interest Paid

Numeric

 

Number of missed payments

Numeric

 

Total number of payments

Numeric

 

Notes

Alphanumeric

Only one Notes field is required and this is editable.

 

Performance History

Mifos tracks the performance of each client and provides the following metrics, which are displayed on the client’s detail pages in the performance history box.

The following parameters are used to track the performance of each client by the system:

S. No. Performance Metrics Formula Description
1 Loan Cycle number The counter is incremented when a loan is disbursed if, at loan product definition level [link], the attribute Include in loan cycle is set to Yes.  If the loan account is rescheduled, written off, or cancelled, the loan cycle number is decremented.
 
2 Amount of last loan
Amount of the most recently “closed-obligations met” loan
This consists of the most recently "closed-- obligations met" loan amount that incremented the loan cycle number.   Please note that the logic for this field is different on the group page.  There is an open issue (#533) to resolve this.
3 Total # of active loans Total number of all loan accounts in
* Active in good standing
* Active in bad standing
4 Delinquent Portfolio Amount of overdue loan principal / Total original value of all outstanding loans * This should consider loans in Active in good standing and Active in bad standing states.
* Written-off loans should not be included.
* Closed- rescheduled loans should not be included.
5 Total Savings Sum of account balances of all mandatory and voluntary savings accounts This should include all the savings accounts of the client.
6 Attendance   Attendance of the client is entered from the Enter Collection Sheet screens. The following two counters should be maintained:
* Number of meetings attended: Number of meetings where the client attendance is equal to "Present" and “Late” for the last 12 months
* Number of meetings missed: Number of meetings where the client attendance has a value equal to "Absent", "Approved leave" for last 12 months

For one meeting, attendance should be counted only once, irrespective of the number of times bulk entry has been entered.

7 Loan cycle per product   See description below

 

Notes on loan cycle per product

  • Separate loan counters for each product are maintained for each client. For example, if the client has taken two agricultural loans and three cattle loans, her performance history displays a loan cycle for educational loan=2; loan cycle for cattle loan=3.
  • The counter is incremented when a loan account is approved and decremented for rescheduled loans or written off loans.
  • The loan cycle number from historical data is not included in any of the above counters.

Assigning Clients to a Group

New clients can be added to a group by clicking the Add Client link on the group account details page. An individual can belong to only one group at any time.

The following rules apply to the relationship between group states and client states:

  • An individual state should be equal to, or behind the state of the group:
    • If Group state = Partial Application, the group can have clients who are in Partial state only.
    • If Group state = Pending Approval, the group can have clients in Partial Application or Pending Approval states only.
    • If Group state = Approved, the group can have clients in Partial Application, or Pending Approval, or Approved or On Hold states.
  • If a group is On Hold, the clients are not affected; new clients can be assigned to On Hold groups and client records can be Closed.
  • If a group is Active, a client belonging to that group can be Closed.
  • If clients are Active, the group cannot be closed before assigning the clients to another group or closing them.
  • If clients are in Closed/Cancelled state, the group can be closed.
  • If any client in the group is On Hold, the group cannot be closed unless that client is Closed or assigned to another group.
  • If a group status is changed from Pending Approval to Cancelled, the system changes the Pending Approval status of any clients of the group to Partial Application.
  • Clients in states other than Closed and Cancelled can be assigned a position in the center or the group.

Adding group memberships for existing clients

Existing clients that do not belong to a group can be assigned to a group, as long as their client status is neither closed or cancelled and they do not have an active loan. The group status much be equal to or higher than the client status.

  • If the client status is Approved/active or on hold, the client can only be transferred into groups with Approved/active status
  • If the client status is pending approval,  the client can only be transferred into groups with Approved/active or pending approval status
  • If the client status is partial application, the client can only be transferred into groups with Approved/active, pending approval or partial application status

Group membership is assigned via the Edit meeting schedule/Add group link on the client details page. When a group is selected, the system validates that the client does not have an active loan or savings account and adds the client information to the group account details and updates the group performance metrics.

Changes are made to deposits due from the group: if the group’s mandatory savings account is calculated per individual, the amounts are recalculated based n the new number of clients. The client inherits the meeting schedule and the loan officer of the assigned group.

Removing group memberships for existing clients

Group membership for an existing client can be removed. This can be done by clicking the Edit/Remove group membership link.

The user can optionally assign another loan officer at this point, and enter notes about the removal. When the user clicks Submit, the system prompts the user if the client is active and no loan officer was assigned. If the client was a title holder in the group, the system alerts the user that the title position is now empty. The system then removes the group membership from the client record.

After a client is removed from a group, the performance history details on the group details page is updated with the new number of client members and the individual loan size and total loan portfolio fields are recalculated. If the group’s mandatory savings account is calculated per client, the amount is recalculated based on the change in the number of client members.

Moving Clients

A client can be reassigned to any of the following: 

  • Another group, as long as the client does not have any loan or savings accounts in states other than Cancelled/Closed. When the client is transferred to another group, the LO and meeting schedule are inherited from the new group. 
  • Another branch, as long as the client’s loan and savings accounts in the current branch are closed or canceled. All the client information is transferred along with the Client System ID. When a client is moved to another branch, the user must select a new loan officer after the client is moved.  Please see Issue #1555 in the issue tracker.
  • Another LO within the same branch.  An independent client (a client that does not belong to a group) can be transferred to another LO within the same branch.
0
Your rating: None

Loan Accounts

Loan accounts can be created for all Active products in the system; they inherit the rules and defaults from the product definition. Loan accounts can be created for either an individual or a group, depending on whether the product is defined for clients or groups. A group or client can have multiple loan accounts but a single account cannot be given to multiple groups or clients.

Loan accounts can be opened only for Approved/Active clients and groups.

Fees can be charged to loan accounts in three ways, both at time of account creation and after.

  • Fees are inherited from the product definition. The LO can remove one or more of these fees for a particular account. If a fee is removed from an account, it does not affect other accounts.
  • Predefined fees (not yet associated with the account) can be selected and attached to the account.
  • Miscellaneous fees (one time charge) can be charged to an account. The user specifies the amount, which is added in the next payment.

Loan accounts can be created by clicking the Open new loan account link in the Quick Start navigation pane on the Home tab. A user with appropriate permissions will then need to then identify the client or group for which the loan is being created and select the loan product that will define the loan.

Attributes for Loan Accounts

The loan product attributes are inherited from the product definition. The defaults for some attributes can be overwritten at the account level as long as the new value remains within the min/max range defined in the product definition.

 

  Mandatory for State= Editable after State=
S. No. Attribute Name Data Type Default Value Partial/ Pending Approved Partial Pending Approved Range Can be disabled? Configurable/ Mandatory/Optional Description/ Notes
1.   Account Owner   String  Un-editable, chosen from search results   N/A   Yes   Yes   No   No   No   Search results of list of Approved clients in the system   No   Mandatory      
2.   Purpose of Loan   Drop-Down   None   No   No   Yes   Yes   Yes   Options as defined by HO   No   Optional      
3.   Loan Name   Drop-Down- single select   None   Yes   Yes   No   No   No   All products in the status “Active” and Applicable to the “Account owner type”   No   Mandatory   If Account Owner is a client, products applicable to “Clients” will be displayed in the Loan product list.  Similarly for groups.  
4.   Loan system ID   N/A   N/A   Yes   Yes   N/A   N/A   N/A   N/A   No   Mandatory   Un - editable- system generated
5.   Loan Amount   Number   If specified, inherited from product definition.   Yes   Yes   Yes   Yes   No   Min/Max amounts as defined in product definition   No   Mandatory      
6.   Interest rate   Percentage  

Inherited from

product definition  

Yes   Yes   Yes   Yes   No   Min/Max rate as defined in product definition   No   Mandatory   The rate field can be zero, but cannot be left blank.  
7.   Number of installments   Number  

Inherited from

product definition  

Yes   Yes   Yes   Yes   No   Min/Max installments as defined in product definition   No   Mandatory      
8.   Disbursal Date   Date   Next meeting date   Yes   Yes   Yes   Yes   Yes   Any date – in between the loan approval date and one year from the current date.   No   Mandatory   This date is used as a Loan Start Date to generate the repayment schedule. The user can fill this field at the beginning of the loan to project when loan is disbursed; but this field can be updated anytime before disbursement.  
10.   Grace period for repayments   Number of installments  

Inherited from

product definition  

No   No   Yes   Yes   Yes   0;  Min/max number of installments   No   Mandatory (if grace period is specified)   If grace period type (as per product definition) is “None”, OR,  If Interest is deducted at disbursement, then this field is disabled.  If the loan account is still in grace period, the length of grace period can be extended or reduced.  It cannot be reduced for the period already crossed. For example, if the grace period is for three installments, and when the account is at 0.5 installments, it cannot be reduced to one installment, but can be reduced to two installments.  
11.   Fee types   List  

Inherited from product definition  

No   No   Yes   Yes   Yes   Predefined fee types   No   Optional   Only those fee types for which periodicity aligns with the repayment frequency can be attached to the account/ product.  See fees for details.  
12.   Source of Fund   Look-up, single select   None   No   Yes   No   No   No   Inherited from the product definition   No   Mandatory      
14.   Collateral Type   Drop down- single select   None   No   No   Yes   Yes   Yes   Options defined by HO   No   Optional   Mifos system does not link these accounts; neither does it perform any validations for balance, validity, etc. of the savings account.  
15.   Collateral Notes   Text (200)      None   No   No   Yes   Yes   Yes   N/A   No   Optional   System allows only a single Collateral Note  This note can be edited multiple times, but the system displays only the last saved Collateral Note     
16.   Status   Drop-Down   N/A   N/A   N/A   N/A   N/A   N/A   Refer Status flow.   No          
17.   Flag   Drop-Down- single select   None   N/A   N/A   N/A   N/A   N/A   Rejected;  Withdrawn;  Other   No   Mandatory   Applicable only for status= Cancelled  
18. Question Groups Mix None No No Yes Yes Yes         See Question Groups.    
19.   Notes   Text Field  (500 char)   None   No   No   Yes   Yes   Yes   N/A   No   Optional   An account can have multiple "notes" attached to it.     
20 External ID Text Field None   No   No   Yes   Yes   Yes   N/A   No   Optional   External ID is not enforced as unique. 
Account Balance Details- System calculated Uneditable fields
20.  Principal Paid   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total principal paid by the client/ group till date  
21.   Interest Paid   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total interest paid by the client/ group till date  
22.   Fees Paid   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total fees paid (all fee types) by the client/ group till date  
23.   Penalty Paid   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total penalty paid by the client/ group till date  
24.   Total Amount Paid   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total amount paid (principal + interest + fees + penalty) by the client/ group till date  
25.   Principal Remaining   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total principal to be paid from the current date till the end of the loan period.  This includes any missed installments.  
26.   Interest Remaining   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total interest to be paid from the current date till the end of the loan period.  This includes any missed installments.  
27.   Total Amount Remaining   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total amount to be paid from the current date till the end of the loan period +principal + interest).  This includes any missed installments.  
28..   Principal Overdue   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Principal overdue (from previous installments)  
29.   Interest Overdue   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Interest overdue (from previous installments)  
30.   Fees Overdue   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total fees overdue from the previous installments. This is calculated as sum of all fee types charged to the account.  
31.   Penalty Overdue   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total penalty overdue  
32.   Total Amount Overdue   Number       N/A   N/A   N/A   N/A   N/A   N/A   No   Mandatory   Total amount overdue. This is the sum of overdue (principal, interest, fees, and penalty).  

Loan record states

When a loan account is created, it is processed through various states, as illustrated below.

 If a checklist has been defined by the MFI, this checklist will appear when changing the loan state [see Checklist].  Every manual change in state is entered in the change log, along with the date and user ID of the user making the change [link to change logs].  Note that some state changes (moving from Approved to Active in Good Standing, between Active in Good Standing and Active in Bad Standing, and moving into Closed/Obligation Met) are handled automatically by the system.  These state changes are automatically triggered when a loan is disbursed, a payment is missed, etc. 

If the HO does not include the optional states Pending Approval and Disbursed to LO, the status flow diagram looks like the following (Note: because we haven't thoroughly tested MIfos with these optional states turned off, we do not recommend removing these states): (Disbursed to LO state has been removed)

Loan Account Creation Flow Diagram

 

As illustrated, a loan record can reside in the following states. All states are mutually exclusive:

Status

Description

Partial Application

(Save for later)

This state is used if the record has been created, but data is incomplete or the user does not want submit the record for approval. 

Pending Approval

(Submit for Approval)

This is an optional state and can be omitted during configuration.

This state is used when the record contains all necessary data and is waiting for approval. Before and after this point, there may be offline processes which might govern the approval process. These processes can be specific to each MFI and does not impact Mifos functionality.

Approved

Loan amount and repayment schedule has been approved. Once a loan account is approved, interest, amount, loan term, funding source, etc are frozen. These parameters cannot be changed.

Disbursed to LO

This is an optional state and can be omitted during configuration.  Mifos ships with this state turned off and we recommend not changing this default setting.

Loan amount has been disbursed to the LO of the customer. While loan is in this state, it can still be cancelled.

Active in Good Standing

Once the loan has been disbursed to the customer, the state will be changed to Active in Good Standing automatically by the system. Any applicable grace period starts from this point.

If the disbursement date is different from the date originally entered, the repayment schedule will be regenerated.

Closed - Obligations met

The system moves accounts into this state automatically when a loan amount is completely paid off. This state change cannot be manual.

Closed - Rescheduled

Due to some reason, if the customer is unable to repay the loan on time, he or she can request for loan rescheduling. If MFI allows rescheduling, the current loan account has to be closed with the status marked as Closed- Rescheduled and a new loan account has to be created which can have the same or different conditions and rules compared to the previous loan.

Mifos system does not link the old and new accounts.

In performance reporting and other reporting, this loan is not counted; counter should be decremented.

If this loan is included in the loan cycle, it should be removed from there when the loan account status is changed to Closed- Rescheduled.

Active- Bad standing

Due to violations and/or non-repayment etc, the customer loan account can be marked as “Active- Bad standing”. From this state, customer account can go to “Active in good standing” or “Closed - Written Off”.

System will move the loan account to this state automatically, in case it exceeds the “Definition of lateness” as defined by the MFI i.e., system has not received any payment for X number of days. (X is the lateness specified.)

System will move the account back to the “Active in good standing” status when the total amount overdue has been paid (the complete principal overdue + interest overdue + fee overdue+ penalty overdue has been paid).

The state change from “Active in good standing” to “Active in bad standing” and vice versa will always be automatic. Manual change will not be allowed.

Closed- Written Off

If the MFI/LO determines that the customer cannot repay or has no intentions to repay the loan, the loan can be “Written off”.

Transactions cannot be applied to accounts in this state.

Canceled

A loan application can be cancelled due to various reasons like,

  • Customer withdraws the application
  • An officer of the MFI rejects the application

Notes:

  • If users build reports to query on all active loans, they should query loans in both “Active in good standing” and “Active in bad standing” states.  Similarly, if they build reports to query on all closed loans, they should query loans in both "Closed- Obligation Met" and "Closed- Written Off" states.
  • There is no “Deleted” status. All accounts are kept in the system.
  • There is no restriction on the number of times an account status can be changed.
  • When an account is created, it can be either saved in Partial Application state or Pending Approval state. If Pending Approval (an optional state) is not included by the HO, new account can be saved in Approved state.  [Note, this hasn't been thoroughly tested]
  • A Checklist might be displayed before an account status is changed. This is to remind the users of the offline processes required before an account status can be changed.

Status History

Mifos automatically tracks changes in the loan/savings status. The first entry in this history should be the creation of the loan/savings and should show the change of status from New to Open, while the last entry should be the transition of the loan/savings to a final state of either Closed or Canceled.

This information can be used to track performance of the LO or efficiency of the MFI’s processes by tracking duration between loan/savings statuses.

The following attributes are captured when the status is changed and saved. All these fields are mandatory, un-editable, and generated by Mifos system.

S. No.

 

Attribute Name

 

Data Type

 

Description/ Notes

 

1.

Old Status

String

 

2.

New Status

String

 

3..

Date Changed

Date

This is the system date when the status is saved into a new status.

4.

Changed By

String

This is the username of the system user who performed the change in status.

Note: All status changes, irrespective of number of times these statuses have been changed, are recorded in the status description table.

Status Descriptions for Loan Accounts

Status

Description

Partial Application

(Save for later)

This status is used if the record has been created, but data is incomplete or the user does not want the status to be Pending Approval, status can be marked as Partial Application. The loan account attributes can be updated/modified in Partial Application state and Pending Approval state as per the attributes table.

Pending Approval

(Submit for Approval)

This is an optional state and can be omitted during configuration by the HO.

This status is used when the record contains all necessary data and is waiting for approval. Before and after this point, there could be some offline processes, which might govern the approval process. These processes can be specific to each MFI and does not impact Mifos functionality.

Approved

Loan amount and repayment schedule has been approved. Once a loan account is approved, interest, amount, loan term, funding source, etc are frozen. These parameters cannot be changed.

Disbursed to LO

This is an optional state and can be omitted during configuration by the HO.

Loan amount has been disbursed to the LO of the customer. While loan is in this state, it can still be cancelled.

Active in Good Standing

Once the loan has been disbursed to the customer, the state will be changed to Active in Good Standing by the system. Any applicable grace period starts from this point.

The repayment schedule will be regenerated in case the disbursement date is changed.

Closed - Obligations met

The system moves accounts into this state automatically when a loan amount is completely paid off. This state change cannot be manual.

Closed - Rescheduled

Due to some reason, if the customer is unable to repay the loan on time, he or she can request for loan rescheduling. If MFI allows rescheduling, the current loan account has to be closed with the status marked as Closed- Rescheduled and a new loan account has to be created which can have the same or different conditions and rules compared to the previous loan.

Mifos system does not link the old and new accounts.

In performance reporting and other reporting, this loan is not counted; counter should be decremented

If this loan is included in the loan cycle, it should be removed from there when the loan account status is changed to Closed- Rescheduled.

Active- Bad standing

Due to violations and/or non-repayment etc, the customer loan account can be marked as “Active- Bad standing”. From this state, customer account can go to “Active in good standing” or “Closed - Written Off”.

System will move the loan account to this state automatically, in case it exceeds the “Definition of lateness” as defined by the HO i.e., system has not received any payment for X number of days. (X is the lateness specified at the HO level.)

System will move the account back to the “Active in good standing” status when the total amount overdue has been paid up, that is the complete principal overdue + interest overdue + fee overdue+ penalty overdue has been paid up.

The state change from “Active in good standing” to “Active in bad standing” and vice versa will always be automatic. Manual change will not be allowed.

Closed- Written Off

If the MFI/LO determines that the customer cannot repay or has no intentions to repay the loan, the loan has to be “Written off” and the system should make the required accounting/financial entries.

Transactions cannot be applied to accounts in this status.

Canceled

A loan application can be cancelled due to various reasons like,

  • Customer withdraws the application
  • An officer of the MFI rejects the application

 

 Notes on Loan States:

  • When an account is created, it can be saved in either Partial Application state or Pending Approval state. If Pending Approval (an optional state) is not included by the HO, a user with required permissions can save a new loan account in Approved state.  Note that removing optional
  • There is no restriction on the number of times an account state can be changed.
  • When reporting on or searching All Active loans, the system includes both Active in good standing and Active in bad standing loans by default. User can filter on Active in good standing OR Active in bad standing loans separately.
  • The above logic also applies to All Closed Loans, which includes Closed- Obligation met and Closed- Written Off.
  • There is no Deleted status. All loan accounts are kept in the system.

 

Status History

Mifos automatically tracks all changes in the loan states. [where is it accessed?] The first entry in this history is the creation of the loan record and shows the change of state from New to Open. The last entry is the transition of the loan to a final state of either Closed or Canceled.

This information can be used to track performance of the LO or efficiency of the MFI’s processes by tracking duration between loan/savings statuses.

The following attributes are captured when the status is changed and saved. All these fields are generated by Mifos and are not editable.

 

S. No.

 

Attribute Name

 

Data Type

 

Description/ Notes

 

1.

Old Status

String

 

2.

New Status

String

 

3..

Date Changed

Date

This is the system date when the status is saved into a new status.

4.

Changed By

String

This is the username of the system user who performed the change in status.

 

Loan Account Details

Once a user with the appropriate permissions has entered the data to create a loan, the user then previews the entire set of information in one screen, to validate the data. This is a mandatory step. When the user approves the preview page, the loan information is saved in the database. Error checking for mandatory fields and valid data is performed. If any invalid entry is found or any mandatory fields have been left empty, an error message is displayed.

Once a loan account has been created, its information can be viewed and edited on the account details page, as described in the following paragraphs.

Account Summary

The account summary section of the details page gives an overview of the amount paid and due after the last transaction. This information is updated by the system according to the values defined in the loan attributes table, and is not editable by the user.

The account summary is updated when the system detects any of the following actions:

  • Disbursal is done or a payment is made: amount paid and amount due are adjusted accordingly.
  • Changes in fee types: addition/removal/waiving of fee types/misc fee or misc penalty, change in fee amount etc. changes the amount due. Already charged fees, including unpaid fees, cannot be changed.

The following information is updated whenever a payment is made:

  • Total amount due and the date of next repayment. This total amount is the sum of the original installment and the amount in arrears.
  • Amount in arrears. This is the amount from previous installment(s) not received on the scheduled date.

The following information is included in a table, which is updated whenever a payment is made. The amounts due are calculated as follows:

 

 

Original Loan

Amount Paid

Loan Balance

Principal

Original loan amount- This figure is not updated after the account has been Approved.

Amount paid against principal till date

Original loan amount paid

Interest

Interest expected from this account This figure is not updated once the account becomes Approved.

Amount paid against interest till date.
 

Amount of interest remaining on the loan

 

Fees

Amount expected from this account as per the fee types attached to the account

Amount paid against fees and miscellaneous fees till date

Amount expected from this account as per the fee types attached to the account. It should include unpaid miscellaneous fee charged to the account

Penalty

N/A

Amount paid against miscellaneous penalty till date

Any miscellaneous penalty charged, and not paid.

Total

Total of principal and interest

Total of above 4

Total of above 4

If an installment payment is missed, the amount is added to the next payment and displayed in this section.

The user can view installment details by clicking the View installment details link:

 

Column Name

Description

Current Installment Details

Principal

Principal due for the current/upcoming installment

Interest

Interest due for the current/upcoming installment

Fees

Fee due for the current/upcoming installment as per the fee types linked to the account and miscellaneous fee charged to the account

This amount can be waived.

Penalty

Any miscellaneous penalty charged

This amount can be waived.

Total

Total of Principal, Interest, Fees, and Penalty

Overdue amount

Principal

Amount overdue against principal for the missed installments

Interest

Amount overdue against interest for the missed installments

Fees

Amount overdue against fees for the missed installments

Penalty

This should be a summation of all misc penalties that was charged and was included in the previous installment(s), but not paid.

Total

Total of Principal, Interest, Fees, and Penalty

Recent Activity

Transaction history records and displays the repayment details of the account. This is updated by the system when a transaction is made. The user is not allowed to make any modifications to the transaction history.

Transactions

When an account is first created, a Disburse loan link is displayed in the Transactions box. This can be used to record the loan disbursal.  After disbursal, this link is not available, but the other transaction links can be used to apply payments, charges, adjustments, or to repay the loan.

Performance History

Mifos tracks the performance of each loan and provides the following metrics, which are displayed in the Performance history box on the loan detail page.

Administrative documents

Users can prepare and print whatever administrative documents are available, such as vouchers, payment books, disbursal receipts and payment receipts, by clicking a link under Administrative documents. [link to administrative documents]

Repayment schedule

When a user creates a loan account for a client, he first identifies the client and selects a loan product from the list of products available for the client. If Mifos has been configured to require repayment on meetings days, the system displays only those products whose frequencies are equal to or multiples of the client's meeting frequency. For example, a client with a meeting frequency of three weeks on a Monday is eligible for loan products with a frequency of 3, 6, and 9 weeks. A client whose meeting frequency is the last Monday of every two months is eligible for loan products with a frequency of 2, 4, and 6 months.

On the next page, the default values for that loan product are displayed, which the user may change for the new loan account, according to the ranges indicated in parentheses next to the fields on the page. Automatic administrative fees associated with the account are displayed, and the user can apply up to three additional fees to the loan.

When the user clicks Continue, an installment schedule is displayed. It is based on the loan amount, interest rate, repayment frequency, and the number of installments specified. For more information regarding principal and interest calculations, see . The following information is displayed, which is independent of the grace period and meeting schedule the client belongs to:

Column Name   Description

Due Date

Due date

Date paid

Date of payment- This is not a part of repayment schedule when a loan account is created

Principal

Principal paid/due

Interest

Interest paid/due

Fees

Fees paid/due

Total

Total of Principal, Interest, and Fees

Running balance - This is not a part of repayment schedule when a loan account is created.

Principal

Total principal outstanding

Interest

Total interest outstanding

Fees

Total fees outstanding

Total

Total of Running balance, Principal, Interest, and Fees

If the loan is a variable installment loan, the user is able to edit the loan schedule here.  If Compare with Cash Flow is checked, the user is also able to enter in cash flow details.  See Variable Loan Installments and Cash Flow Comparision FS for more information.

Notes on repayment schedule:

  • The disbursement date for a loan is defined prior to the actual disbursement of the loan and is used as the reference point for creating the schedule. If an MFI has configured disbursements to occur on meeting days, then the Repayment Start Date is the frequency of loan repayment + grace period duration. The Installment Due Dates are calculated based on Previous Installment Due Date + Frequency Elapsed. If payments are allowed on non-meeting days, a user can change the default disbursal date to a non-meeting date, which must be a date in the future.
  • Grace period. This repayment schedule is considered as the Original repayment schedule. Once the loan amount is disbursed to the client, the interest rate cannot be changed. The grace period starts from the day the loan is disbursed to the client and can be modified by a user for a specific loan account before the grace period ends for that account [link]. A user can edit the disbursal date or the repayment date, but it must fall within the acceptable range defined by the user. If no range is defined, there must still be at least one day separating the loan schedule start date from the disbursal date.
  • Non-meeting days. If payments are not allowed on non-meeting days, then the repayment schedule is not editable by the user. [true?] However, the schedule is automatically updated by the system when there is a change in any one of the parameters displayed in the Repayment Schedule table. If the loan duration extends beyond the current year, the system creates the repayment schedule for all years. However, the system assumes that the subsequent years have no holidays. If payments are allowed on non-meeting days, then the user can change the default repayment day. However, the repayment days must still occur at the same frequency as meetings days. For example, if meetings are once a month, loan repayments must be once a month, even if they occur on different days of the month than the meetings.
  • The frequency of repayment is defined by the product definition and cannot be changed for a specific loan, only the day can be changed. For example, if meetings are defined for a client as occurring every 4 Tuesday of each 1 month, on the loan account page, the user can only change the day of the repayments (Tuesday can be changed to Wednesday).

The repayment schedule can be accessed at any time by clicking the View payment schedule link on the loan account details page.

Note:  Also see http://groups.google.com/group/mifosfunctional/browse_thread/thread/7ca15f34dc937d9c for more details on how repayment schedules are created.

Edit disbursal date/repayment day

On the loan account details page, the user clicks the Edit account information link and then edits the disbursal date and/or the repayment day. The system validates that the edits satisfy the predefined interval between the disbursal date and the loan schedule state date and then calculates and displays a new repayment schedule. The system also validates that the date entered is a future date and that the repayment interval has not been altered.

Bulk loan creation and approval

Mifos offers bulk processing features to facilitate creating multiple loan accounts based on the same product definition and approval multiple loans in the Pending approval state.

Bulk loan creation for centers

A user with the appropriate permissions can create loan accounts for all or some clients in a center at one time. These loan accounts will be defined by the same loan product and will be created with the same loan information, except for the loan amount and purpose.

To do this, the user clicks the Create multiple loan accounts link on the Client & Accounts Tasks navigation pane and filters the accounts by branch, loan officer, center (or group if the center hierarchy doesn't exist) and loan product. The system displays the approved clients in the groups in the user’s data scope. The user selects those clients for whom loan accounts are to be created and specifies the loan amount and purpose.

Bulk loan creation does not allow specifying all attributes of a loan including collateral type and info, custom fields and source of funds.

This feature also does not work with loan products with variable loan installments or with interest rate type of Declining Balance - Interest Recalculation

Bulk loan approval

Loans are usually approved by the branch manager. When a loan account in the Pending approval state (or Partial application state if the Pending approval state is not available) fulfills the eligibility criterion, a user with appropriate permissions can approve such loans one at a time by clicking the Edit change status link on the loan account detail page and changing the status to Approved. Alternatively, a user can filter all the loan accounts in his/her data scope that are Pending approval, and change the state to Approved at one time.

To do this, the user clicks the Change account status link on the Clients & Accounts Tasks navigation pane and filters the accounts by branch, loan officer, type, and current status.

0
Your rating: None

Savings Accounts

Savings accounts can be created for saving products already defined in Mifos; they inherit the rules and defaults from the product definition. For example, a minimum deposit may be required before an account can earn interest. Savings accounts can be created for an individual or a group or a center, depending on the definition of the product. When a user creates a client account, he can choose to automatically create up to three savings accounts for the client at the same time.

A savings account can be created only if the product is in an Active state and the client or group is Approved or the center is Active. Accounts can be either mandatory or voluntary, depending on how the Recommended/Mandatory amount for deposits attribute is set.

Group/center savings accounts. By default, all members of a group/center are part of all the savings accounts of the group. These members are allowed to deposit and withdraw from the group/center savings account. When a transaction (deposit/withdrawal) is made, the user selects the client name from a list of Approved clients belonging to the group/center. The deposits/withdrawals can also be made by a non-specified entity.

A center, group or client can have multiple accounts of the same or different products but a single account cannot be given to multiple centers, groups or clients. Individual client accounts cannot be converted to a group account. Similarly, a center/group account cannot be converted.

Savings accounts cannot be deleted.

Notes on savings amount:

  • This amount is considered “due” at every meeting day of the account owner.  Partial payments are allowed.
  • For mandatory accounts: If a deposit is not received as expected on a meeting day, it is added to the due amount for the next meeting day. That is, the account owner will owe double the amount at the next meeting day.
  • For voluntary accounts: If a deposit is not received as expected on a meeting day, it will not be added in the due amount for next meeting day.
  • For center accounts: this amount is applied to all clients in Active or On hold states.
  • For group accounts where the amount applies to per group member: this amount is applied to clients in Active or On hold states.

Attributes for savings accounts

In addition to the attributes inherited from the savings product definition, the following attributes are defined for savings accounts. Attributes that are defined at the product definition level but can be modified at the account level are repeated here.

s. no. attribute name data type default value mandatory state = partial/ pending editable after state = approved partial pending approved range notes

1

Account Owner (client/ group/center)

String (System ID) 

None 

Yes 

Yes 

No 

 No 

No 

All clients and groups in Approved Status; All centers in Active state 

 

2

Savings Product Name 

Drop Down 

None 

Yes 

Yes 

No

No

No

Savings Products in active state 

 

3

 Recommended/ Mandatory Amount for Deposits

 Number

Inherited from product definition 

No

No

Yes

 Yes

Yes 

 

 

4

 Status

 Radio Buttons

 N/A

 N/A

Yes 

Yes

 Yes

Yes

 

 The field will be called "Mandatory amount for deposits" for Mandatory Accounts and "Recommended amount for deposits" for Voluntary accounts."  Mandatory for "Mandatory Accounts" and Optional for "Voluntary accounts." See note on this field below.

5

 Flag

 Drop Down

 None

 N/A

N/A

N/A 

 N/A

N/A 

 

 For canceled state, flag options are: Withdrawn, Rejected, Blacklisted, Other

6

 Notes

 Text

 

 

 

 

 

 

 

Can be added from the account details page 

7

 Question Groups

 Mix

 None

 No

No 

Yes 

Yes 

Yes 

 

 See Question Groups

 

Savings record states

When a savings account is created, it is processed through various states, as illustrated below. A user with appropriate permissions manually changes a savings record state in Mifos, using a checklist [link] if one has been defined by the MFI. Mifos validates the fields as described in the attributes table [link]. However, external MFI processes and business logic are not validated.

Every change in state is entered in the change log, along with the date and user ID of the user making the change [link to change logs].

 [Figure 1: Status Flow Diagram- Savings Account Creation]Status Flow Diagram - Savings Account Creation

As illustrated, a savings record can reside in the following states. All states are mutually exclusive:

Table 2: State Description for Savings Accounts

status

description

Partial Application (save for later)

If the record has been created but data is incomplete or the user does not want the state to be Pending Approval, the state can be marked as Partial Application.

The account attributes can be updated/modified in the Partial Application state and Pending Approval states, as per the attributes table. Deposits/withdrawals are not allowed in this state.

 Pending Approval

This is an optional state, depending on the MFI. The record contains all necessary data, and is waiting for approval. Offline processes, specific to each MFI, might govern the approval process but do not impact Mifos functionality. Deposits/withdrawals are not allowed in this state.

 Active

The savings account has been approved and the client can use their savings account. An account can remain Active with a nil balance.

 Inactive

If there are no transactions in the savings account for X days (X is the dormancy definition defined by the MFI), the state is automatically changed to Inactive. There are no restrictions on deposits, withdrawals, and adjustments while the account is in this state. If a transaction is made, the state automatically changes to Active. These state changes (from Inactive to Active and vice versa) can also be made manually. If an account is Inactive, no voluntary/mandatory deposits due appear in the collection sheet/bulk entry form. Mandatory amounts due stop accumulating but the amounts already accumulated in the account remain.  (This is currently not working due to Issue  1911).

 Cancel

A savings application can be cancelled for to various reasons: client withdraws their application; the application is rejected by an officer of the MFI; the client is not eligible because he/she has been blacklisted. Deposits/withdrawals are not allowed in this state.

 Closed

Savings account is Closed. Once closed, the state of the account cannot be modified. Transactions are not allowed after an account is closed. When an account is closed, the interest till the current date should be calculated and posted to the account.

Because the balance of the account must be nil before it can be closed, a withdrawal transaction must be made. The user must specify the Date of transaction (current date) and the Amount (total account balance including the interest earned till the current date). This amount must be rounded as per the rounding rules. The user must also specify the mode of payment, receipt ID and receipt date, and well as the client name. For group/center savings accounts, the client who made the withdrawal should also be specified. 

 

Savings account details

Once the user identifies the owner of the savings account, selects the product, and enters a savings amount, he/she previews the set of information associated with the savings account, on a single screen. This is a mandatory step. When the user approves the preview page, the savings account is saved in the database and an account number is assigned.

When a savings account has been created, its information can be viewed and edited on the account details page.

Account balance summary

Near the top of the page, the Account balance is displayed, which is calculated as: Deposits – Withdrawals + Interest Earned. This information is not available for accounts in Partial and Pending states. The total amount due and the date are also displayed.

For mandatory accounts only, click the View all account activity link to see a breakdown of the deposits made.

Under Performance History, the account details page also includes a summary of the account balance, as of the last transaction/interest posted. It includes the following:

  • Total deposits (includes adjustments)
  • Total interest earned (includes adjustments)
  • Total withdrawals (includes adjustments)
  • Adjustment if any - out of scope
  • Account balance - out of scope

Deposits due. The account details page also displays the details for the deposit due on the next meeting date. The details included in this section are: [I can’t find this]

  • Original deposit:  amount scheduled to be paid on the next meeting date
  • Past deposit due: amount overdue from past meetings with the break up of amount for each meeting date
  • Total amount due on the next meeting with the next meeting date

Note that the original deposit and the total overdue amount can be waived.

Account details

The following attributes are displayed as read -only information:

  • Recommended amount of deposit
  • Type of deposit
  • Maximum amount per withdrawal
  • Interest rate
0
Your rating: None

Transaction Processing

Transactions made to client, loan, and or savings accounts - either entered individually on account details, or using collection sheets.

Loan Transactions

After a Loan account is in Approved status, transactions can be made to the account. These transactions include the following:

  • Disbursing Loans
  • Loan Payments - Partial payments, early payments, waiving of fees and penalties, backdated payments, adjustments to the last transaction made to the account

Note:

  • The transaction entries listed here are not included in the Change Logs.
  • Each one of the transaction entries are made against the correct GL Code picked from the chart of accounts defined for that HO. The details on transaction entries in the database are part of the design document.

In addition, loan disbursals can be reversed.

Savings Transactions

Fees / Penalties, and Collection Sheet Entry

Import Bank Transactions

 

0
Your rating: None

Disbursing Loans

A loan repayment schedule is set up at the time of loan creation.  In addition to the amount of the loan repayment, the collection installment amounts may include MFI fees, penalties, and other adjustments. When a loan state is changed to Disburse to LO (or Approved, if Disburse to LO is not used by the HO), the loan can be issued to the client. The transaction is entered in Mifos through a Disburse loan link which is displayed on the loan details page once the loan is approved. Alternatively, disbursals can be entered in Mifos using the collection sheet entry.

Loan amounts are disbursed in full only.

The following details are captured when the loan is disbursed:

  • Disbursal Date. By default, this is the date specified in the proposed disbursal date in the account details. If the date is modified during loan disbursal, the repayment schedule is regenerated accordingly. MFIs can configure a minimum and maximum number of days between the loan disbursal date and the loan repayment start date.
  • Receipt ID and Receipt date
  • Mode of payment for the disbursal, including interest, if interest is deducted at disbursement, and fees, if applicable

Miscellaneous fee or miscellaneous penalty charged to the account before disbursal is added to the first installment.

When the disbursal entry is made, the account activity is updated, the repayment dates in the repayment schedule is updated as per the date of disbursal, and the disbursal date is changed to the date entered by the user.

Transaction entries are updated with the loan amount, including interest and/or fees, and the status of the loan account is changed to Active in good standing.

The grace period starts when the client account reaches the Active in good standing state for the first time.

0
Your rating: None

Loan Payments

Introduction

When a loan officer returns from a meeting or otherwise receives a payment, he/she or a data entry clerk enters the collection details in Mifos and the system updates the relevant records. To record a payment, the user clicks the Apply payment link under Transactions on the loan account details page.

The system enters the current date for the Date of Transaction. The user enters the amount of the payment and, optionally, the receipt ID and date of receipt. When completed, the user previews the payment information and then saves it. Once the payment is recorded the payment is broken into principal, interest, fees, and penalty components, which are displayed in a table on the account details page. The account balance, amount paid and total amount remaining, and the next payment details are updated accordingly.

The loan account details page shows the total amount due on the next scheduled payment date. The user can click the View installment details link to see the total amount broken into the following components for both the current installment and overdue amounts: principal, interest, fees, and penalty.

Early total repayment of loan

After a loan is disbursed, a client can at any time repay the loan in a single payment. To record a total repayment, the user clicks the Repay loan link in the Transaction box on the loan details page. The system calculates the total amount due as of the current date, including principal, interest, fees and penalties, as follows:

  • Principal. This is the sum of total principal due in unpaid, due and future installments.
  • Interest. For flat and declining interest types, the interest for all future installments is not included, but the interest for all past unpaid installments and the current installment is included. For example, if the loan is for 12 months and is paid monthly and the client wants to repay the complete loan on her 4th installment date, the interest calculated is for the 4th month. If the client misses the 4th installment and wants to repay the loan in between the 4th and 5th installments, the interest for the 4th and 5th installments is included.

Note on holidays: In case a holiday is added after the disbursal of the loan and the original calculation of the repayment schedule, one installment can be shifted to the next repayment date. For example, payment on 1st Jan is shifted to 1st Feb. In this case, if an early repayment is done on or before 31st Jan, it will not consider the interest amount, which would have been due on 1st Jan if Jan 1st were not a holiday.

  • Fees. Similarly to interest calculations, the fees due for all future installments is not included, but the fees due for all past unpaid installments and the current installment is included in the total due. Using the previous example, the fee calculated includes only the amount to be paid till the 4th installment, and the fees for the remaining 8 months are ignored. If the client repays the loan in between 4th and 5th installment, the total due will include the fees due for the 5th installment. 
  • Penalty. This includes miscellaneous penalties and penalties due to late repayments, if any. The total includes miscellaneous penalties, both for the current installment and for those due through the last installment. Penalties due to late repayment are calculated as of the night previous to the total repayment.

The user specifies the mode of payment, and optionally the receipt ID and date for the total amount due. The system updates the account summary table with the amounts applied to principal, interest, fees and penalties and changes the account state to Closed – Obligation met.

 

Payment not equal to payment due

A client may at any time make a payment that is not in the amount due on a specific date. For example, a client may make a partial payment when she’s short of cash or an overpayment when she has a surplus. A user records these payments in the same way he/she records normal installment payments, by clicking the Apply payment link in the Transaction box of the account details page. However, in these cases, the user needs to modify the default amount shown for the payment to reflect the actual payment amount before previewing and submitting the payment.

The implications of payments that do not match the amount due are described in the following paragraphs.

Partial payments

A partial payment is first applied against the penalty due. If the amount exceeds the penalty, it is applied against the fee due, followed by the interest due and then the principal. The system updates the account activity and transaction history entries. If the user clicks the View repayment schedule link, he/she sees that the partial payment is reflected in both the Installments paid and Installments due sections of the table. The Date paid for an installment is displayed only when the entire installment has been received.

Primary Flow- Partial Payment

  1. User clicks on “Apply Payment” link in loan details page.
  2. User modifies the default amount and enters an amount less than the expected amount.
  3. User clicks on “Review Transaction”.
  4. System validates that the date of transaction is between the last payment date and current date.
  5. System validates that the amount entered is not greater than the total amount outstanding on that account.
  6. System displays the Preview page with the information entered.
  7. User clicks on “Submit” to save the transaction.
  8. System submits the amount received. The amount is first applied against the penalty due. After penalty payment, if there is an excess, the amount is applied to the fee due, followed by interest due and then the principal.
  9. System logs Account activity and Transaction History entries.
  10. System: “View repayment schedule" is updated to depict the status of each component (penalty, fee, interest and principal). The partially paid installment is displayed in both “Installments paid” and “Installments due” sections with the amounts paid and due respectively. The “Date paid” should only be displayed when the entire installment is paid off.   

Early payments

Before the system accepts an early payment, it validates that the date of transaction is between the last payment date and the current date, and that the amount entered is not greater than the total amount outstanding for the loan. The amount paid is first applied to the current installment.  The remaining amount is then applied to the penalty due, if any, for the next installment. An excess at this point is applied to the fee due, followed by the interest due, and then the principal. The system updates the account activity and transaction history entries. If the user clicks the View repayment schedule link, he/she sees that the early payment is reflected in both the Installments paid and Installments due sections of the table.

Primary Flow- Early Payment

  1. User clicks on “Apply Payment” link in loan details page.
  2. User modifies the default amount and enters an amount greater than the expected amount.
  3. User clicks on “Review Transaction”.
  4. System validates that the date of transaction is between the last payment date and current date.
  5. System validates that the amount entered is not greater than the total amount outstanding on that account.
  6. System displays the Preview page with the information entered.
  7. User clicks on “Submit” to save the transaction.
  8. System submits the amount received. The amount is first applied to the current installment due. The excess amount is then applied to the penalty due, if any, for the next installment. After penalty payment, if there is still excess, the amount is applied to the fee due, followed by interest due and then the principal.
  9. System displays Preview page for the next installment if there was excess.
  10. System logs Account activity and Transaction History entries.
  11. System: “View repayment schedule’ is updated to depict the status of each component and installment (penalty, fee, interest and principal).

Backdating loan payments

Mifos allows backdated payments if the configuration settings allow it. The system calculates and displays the total amount due as of the current date. If a backdated payment is paid, the user manually calculates the amount due as of the transaction date. The system verifies the date and amount. If the amount entered is not equal to the amount due as of the transaction date, the system does not accept the payment.

The date of payment can be between the date of the last meeting and the current date.

  • Partial, back-dated payments. For these payments, the user modifies the date of the transaction to a past date, in addition to modifying the default amount to a lesser amount than expected. When the user submits the transaction, the system applies the amount to the penalty due for the oldest unpaid installment. Any excess is paid against the fee due, followed by the interest due, and then the principal. At this point, the process is repeated for any remaining amount, and the payment is applied against the next unpaid installment, and then the next, until the entire payment has been applied.

Alternate Flow- Backdated Payment

  1. User clicks on “Apply Payment” link in loan details page.
  2. User modifies date of transaction to a past date.
  3. User modifies the default amount and enters an amount less than the expected amount.
  4. User clicks on “Review Transaction”.
  5. System validates that the date of transaction is between the last payment date and current date.
  6. System validates that the amount entered is not greater than the total amount outstanding on that account.
  7. System displays the Preview page with the information entered.
  8. User clicks on “Submit” to save the transaction.
  9. System submits the amount received. The system picks the oldest unpaid installment and applies the amount against the penalty due for that installment. After penalty payment, if there is an excess, the amount applied to the fee due, followed by interest due and then the principal.
  10. System rrepeats step 9 for all the unpaid installments until the amount become 0.
  11. System logs Account activity and Transaction History entries.
  12. System: “View repayment schedule’ is updated to depict the status of each component and installment (penalty, fee, interest and principal).

Missed loan installments

If an installment payment is missed, it is displayed in the overdue information, and the Total Amount Due includes the missed installment. For example, if a client has to repay $100 (principal = $80 and Interest = $20) every month, and she defaults for the month of August, then for the month of September, the following amounts are displayed in the Next Payment details:

            Principal Due= $80

            Interest Due = $20

            Penalty Due = $2 (for the missed/defaulted installment)

            Principal Overdue= $80 (for the missed/defaulted installment)

            Interest Overdue = $20 (for the missed/defaulted installment)

            Total Amount Due= $202

            While the payment is entered, the system accepts either $202 or no payment at all.

Adjusting payments

To rectify errors, the full amount of the last amount paid can be nullified by clicking the Apply adjustment link from the Transactions box on the account details page, the repayment schedule page, or the next installment details page. Multiple repayments can be reversed by reversing each payment amounts one at a time.

Users adjusting loan payments for a loan already of the status Closed – met obligation, must have a specific permission to do so.

When the user clicks the Apply adjustment link, he indicates that the last payment should be reverted, and includes a note describing the reason for the adjustment. These notes are stored with the transaction history, rather than with the Recent notes or All notes for the client. After the adjustment has been previewed and submitted, the user can click the Apply adjustment link again, to reverse the previous payment, and so on, until only the first payment remains.

Once an adjustment is made, the system breaks down the last amount paid into its components and updates the respective amounts where required. For example, if the last amount was paid for principal, interest and fees together, the system breaks the total amount into these amounts and subtracts it from the principal paid till date, the interest paid till date, and the fee paid till date, and adds it to the loan balance of principal, interest, and fees to pay.

After each adjustment, the system updates the following:

  • The account summary:
    • Total amount due on the current day is increased by the adjusted amounts
    • Amount in arrears = adjusted amounts, if adjustment date > last installment date
    • Amount paid: the amount adjusted is subtracted from the amount paid
    • Loan balance: the amount adjusted is added to the amount due
  • The repayment schedule: both the "installments paid" section and "future installments" sections. The repayment schedule gives a picture prior to the repayment adjusted.
  • The respective repayment line is removed from the "installments paid" section and inserted in the "future installments" section.
  • The installment details: the current installment and overdue amount due on the next meeting (always from the current day)
  • Current installment is updated with the next meeting due amount
  • Overdue amount increases with the adjusted payment, if adjustment date > last installment date
  • Performance history updates:
    • The number of payments
    • The number of missed payments are incremented:
    • The number of days in arrears are recalculated = Today's date-last payment date
  • Transaction history includes entries for the related transactions that were reversed due to the adjustment entries

Alternate Flow - Adjusting payments

  1. User makes a complete payment of Rs. 100 on 1st Jan.
  2. User clicks on “Apply adjustment” link on loan details page on 15th Jan and nullifies the last transaction.
  3. System completes the adjustment flow.
  4. User clicks on “Apply payment” link in loan details page on 16th Jan.
  5. User modifies the date of transaction to 10th Jan.
  6. User makes a partial payment and saves the transaction. 
  7. System should consider the amount due as Rs. 100 and complete the partial payment flow.

Waiving Fees and Penalty

See Collecting Client Charges

Additional information

  • If adjustment is done after a partial payment, the complete amount paid in last transaction should be nullified.
    • For example, User records a partial payment of 20 rs.
    • User then makes an adjustment on last transaction.
    • The payment of the entire 20 rupees is adjusted.
  • If fee due = fee 1 + fee 2, fee 1= 20 and fee 2= 30, and the amount paid = 25- system should not have a logic to distribute the partial amount into various fee types.
    • For example- Client owes 150 Rs.- 25 in penalty, 25 in fees across 3 different fee types, and 50 in interest and 50 in principal.
    • Client makes payment of 35 Rs.
    • System accepts 25Rs to cover penalty and 10Rs to cover fees partially.
    • Repayment schedule will display 10 Rs as paid fees and 15 Rs as unpaid fees.
    • System will not know how the partial payment is disbursed across the various fee types. 
    • The partially paid fee and/or penalty can be waived by the user.
  • If an installment is partially paid, it should be considered as a “missed payment” for performance metrics.
  • If an account is in “Active in bad standing” state, the state should be changed to “Active in good standing” only on complete payment of due amount.
  • Even for backdated transactions, “amount due” displayed by the system should be as of current date
  • Early payment- if the client pays complete amount for one future installment and then an upfront fee is applied to the account- this fee should be applied to the first unpaid installment.
  • Early payment- if an adjustment is done after an early payment, system should nullify the transaction and revert the transaction like a normal adjustment.
  • If a client/group has 2 or more loan accounts of the same product, system will not allow early/partial payment from bulk entry.

    • System will validate that the amount entered is not greater than the total amount outstanding.
    • This amount will be more than the amount calculated by the system through “repay loan”.
    • The assumption is that if the user wants to completely repay the loan, “Repay loan” will be used and not “Apply payment” or bulk entry.
0
Your rating: None

Reverse and Redo Loan Disbursals

Reversing loan disbursals

Data entry errors can result in loans that are created and disbursed to a wrong client/group or recorded against the incorrect client. Or a loan account of the incorrect product can be created and disbursed to a client. The error might not be detected until after multiple repayments have been recorded.

To correct this type of error, a user with the appropriate permissions can reverse the loan disbursal and all payments made again the loan, as long as the loan is within the user’s data scope. The loan must be in an Active in good standing or Active in bad standing states only.

The user clicks the Reverse Loan Disbursal link on the Admin tab, enters the reason for the reversal in the Notes box, and then previews the change before saving it. Mifos changes the loan account state to Cancelled with the flag Loan reversed, and reverses any payments that have been made along with the reversal of the loan disbursal. The notes are included in both the account notes and the adjustment notes, and the change is logged in the account activity. All relevant counters, such as the loan cycle, are decremented and the loan is not included in loan counts for reports. The loan is moved to the Canceled state, with a reason flag of “reversed.”

If several payments have already been collected, the user can use the Redo Loan Disbursal link to recreate a loan and historical payments.

Primary Flow - Reverse Loan Disbursal

  1. User clicks on “Reverse loan disbursal” link on the Admin page.
  2. User enters in Loan Acct ID and clicks “Find”
  3. System makes the following validations:
    • Account id is that of a loan account in “Active in good standing” or “Active in bad standing state”.
    • Account is in user’s data scope.
    • User has permission to perform this action.
  4. System: displays the account search result page and the account and client/group information is displayed in the following manner:
  5. User: enters the notes and previews and submits.
  6. System: following actions are required
  7. Reverse all the financial transactions done till date on the account.
  8. Log an entry in account activity with description = ‘disbursal adjusted’ and the amount = loan amount
  9. Log payment adjustment entries for the payments reversed.
  10. Notes specified by the user should be used both as account notes and adjustment notes
  11. In transaction history, the entries should also have related transaction Ids. (Not transaction ids—those should be unique, but another ID—same payment ID??)
  12. All appropriate counters (like loan cycle, etc) will be decremented-- and this loan shouldn't shouldn't be included in any reports as to "# of loans disbursed", etc. For portfolio reporting purposes, it should be as if this loan didn't exist.
  13. Loan account is moved to cancelled state, marked with the reason flag "reversed". This reason flag will not appear as an option when user is manually cancelling a loan.

Alternate flows

  1. User searches for an account id which does not exist or which is not a loan account id- An error is thrown
  2. User searches for an account which is not in active in good/bad standing state

Additional information

  • User is allowed to adjust disbursal only if he/she has permission to do so.
  • User is allowed to adjust loan accounts in his/her data scope only.
  • Only loans in Active in good standing or Active in bad standing states can be adjusted.

Redoing loan disbursals

After an error has been made and the loan reversed as a result, as explained in Reversing loan disbursals, a user with appropriate permissions can redo the loan disbursal by opening an account for the correct client with the correct product selected.  The loan disbursed should be reversed first before being redone.

To do this, the user clicks the Redo Loan Disbursal link on the Admin tab and selects the client for whom the account is to be redone. The system validates that the client is within the user’s data scope and displays the Redo Loan Account page.  Red warning text indicates that the user is redoing the loan account.

The user enters the loan account information. Note that the user is able to enter a disbursal date in the past.

When the user clicks Continue, the Redo Loan Account Installment page is displayed, on which the Actual Payment Date and Actual Amount paid are user-editable. After the user previews and submits the loan account information, the account is flagged as redone and the loan is immediately moved to Active in Good Standing.

Primary Flow - Redo Loan Disbursal

  1. User: clicks on "Redo Loan Disbursal" link on the Admin page.
  2. System: makes the following validation:
  • User has permission to perform this action.
  1. User is taken to the Redo Loan Account Search page where he can select a client/group whose account is to be redone.
  2. System makes the following validations:
  • Results outside the user's data scope should not be shown to the user.
  1. User enters the Client/Group name and clicks on "Search".
  2. On clicking Search, the user is taken to the Redo Loan Account Search Results which displays the relevant search results.
  3. The user clicks on the required Client/Group name and is taken to the Redo Loan Account page.
  4. In the Redo Loan Account page the user can select the Loan product name and click on "Continue".
  5. User is then taken to the Redo Loan Account 1 page where the loan account information needs to be entered.
  • Note: The system should allow the user to enter a disbursal date in the past.
  1. After enetering all the required fields, the user clicks on "Continue".
  2. User is then taken to the Redo Loan Account Installments page where he can review the installments.
  • Two fields Actual Payment Date and Actual Amount paid are user editable.
  1. After making relevant changes, the user clicks on "Preview".
  2. User is then taken to the Redo Loan Account Preview page the entire loan account is presented as a snapshot. If the user wants to make any changes he can click on "Edit loan account information" which redirects him to the Redo Loan Account 1 page.
  3. If the user is fine with the loan account information he can click on "Submit" which takes him to a confirmation page.

Alternate Flows

  1. User searches for an client/group account which does not exist or which is not a valid loan account id - An error should be thrown.
  2. If the user does not enter information for a mandatory field in any page, an appropriate error must be thrown.

Additional Information

  • A red warning text will be displayed while the user is redoing the loan account.
  • An additional permission should be added to the permission list in loan transaction section.
  • Loan accounts which have been redone should be flagged with a tag mentioning that it has been redone. This information could also be mentioned on the loan details page.
  • Status History page should display the date that the loan is moved into "Active in Good Standing". This is the same date the the loan is "redone" -- since the redo pipeline saves the loan immediately in this state.
  • There is a bug in Mifos currently (Issue 2449) where if you enter an amount more than the total  owed when redoing the loan, you will be locked out of the Redo Loan path.  
  • Redo Loan has fixed payment type of Cash.

UI screens

Redo Loan Disbursal: UI screens are accessible here

To view the screens, download and extract the zip folder, click on admin.htm, and if your browser gives you a warning select "Accept blocked content". Click on the Redo Loan Disbursal link under Manage Accounts and follow the user flow below.

 
last modified 2010-07-16 05:47
0
Your rating: None

Collecting Client Charges

Introduction

Fees and penalties can be applied at either the loan account or at a client/group/center account.  When client accounts are created, predefined charges (fees) may be attached to the account. These charges are in the form of periodic or one-time fees, and one-time miscellaneous fees or penalties. The amount due at any given time is displayed under Account information on the client detail page.

To record a charge payment for a client account, the user clicks the Apply charges link on the client details page and enters the amount, date of transaction, mode of transaction, receipt ID and date.

Applying Fees & Penalties

Loan Fees and Penalties

In addition to the fee types inherited by the loan account from product definition, user can apply other predefined fee types to the account and also apply a Misc fee to the account.
To calculate the next payment due, system will consider all the fee types applied to the account and the misc fee amount applied to the account, if any, and calculates the “Payment Due amounts”.

Notes:

  • One time- upfront fee- if a one-time upfront fee is charged to the loan account- it will be added to the upcoming/today’s installment. The user can edit the amount of upfront fee, before it is applied.
  • One-time fees can also be at “Time of disbursement” or “Due with first installment”. These should be charged with disbursal or first installment respectively. These fee types can be added till the day of disbursement/or first repayment respectively. For example, if 1st Jan is the disbursal date, “time of disbursement” fee can be added till 31st Dec irrespective of whether the disbursal was recorded in the system or not.
  • Periodic fee- if a periodic fee is applied to the loan account; amount equal to one fee installment should be added to the upcoming loan installment. After the upcoming installment, the recurrent fee installments should be added to future loan installments as per the periodicity of fee type.
  • Periodic fee can be removed from a loan account. If a fee is removed, it will be removed from all the future loan installments.
  • If a periodic fee is applied before loan is disbursed, it should be first charged to the first installment. Thereafter, the fee should be charged as per the fee periodicity and aligned to the loan installments.
  • The periodicity unit of recurrent fee and loan frequency should match. That is, if loan frequency is in months, recurrent fees with periodicity in months can be charged to the account but recurrent fee type where periodicity is in weeks cannot be charged to the account. Similarly a monthly fee cannot be charged to loan products with loan frequency in weeks.

User can also apply a “Misc penalty” amount to the account. If a miscellaneous penalty amount is applied to the account, the same is included in the upcoming/today’s payment due for the account.

Note:

  • Amount applied to the loan accounts is included in repayment schedule when the amount is charged. But this amount is not included in Transaction Table, until the payment for the same has been received.

Waiving Loan Fees and Penalties

Fee installments and penalty installments can be waived and the same amount will be reduced from the next installment details

  • Following amounts can be waived:
    • The fee due in next installment can be waived
    • Note- System will allow waiving of total amount of fees due (i.e. all fee types + misc fee). Waiving of individual fee amount will not be permitted.
    • The fee overdue (due to missed installments) can be waived i.e. the total fee overdue till the current date can be waived but partial amount or individual components of fee cannot be waived.
    • Penalty due in next installment- That is, if any misc penalty has been charged to the account, it will be part of the next installment. This misc penalty, which is charged to the account and is due in the next payment, can be waived. 
    • Penalty overdue- Misc penalty charged during previous installments which were not paid, can be waived.
      Note: waiving of partial fees/penalty will not be allowed. Also, waiving a particular component of penalty overdue (example, misc penalty, or penalty for installment #1 etc) will not be supported.  
  • Once an amount is waived, it will require following update
    • Installment details
    • Account summary
    • Repayment schedule- In case, fee is waived, the amount under fee column should be updated

 

Details
  • “Waiving” is an activity and should be recorded in “Recent activity” and “Account activity”
  • Transaction entry is not required when an amount is waived.

Client/Group/Center Fees and Penalties

Client, Group, and Center accounts may also have fees and penalties attached.  Fees predefined as applies to that account can be attached to the account.  They are due at the next meeting day when applied.  Fee payments can be applied before the next meeting day.  Partial payments of fees due can also be applied.  See Early Repayment of Fees for detailed scenarios.

Types of Fees/Penalties

  • Periodic Fees - due at every meeting day
  • One time Fee - one time charge due at the next meeting day after being applied
  • Misc Fee or Penalty - one time charge due at the next meeting day after being applied
0
Your rating: None

Collection Sheet Entry

Overview

When a Loan Officer returns from the field, the officer has to enter the collection sheet details in the system. Alternatively, he can provide the details to a non-loan officer who can enter the data for him. After necessary validations, the system updates the relevant records with the transaction details provided by the LO/user.

  • Collection Sheet Entry forms are generated by a center name and by date for a Loan Officer. If center hierarchy does not exist in an MFI, collection sheet entry can be generated separately for each group.
  • There is only one format for Collection Sheet Entry
  • Amounts displayed in collection sheet entry (loan disbursals, payments and savings deposits) are of the last/today's meeting. These amounts are not updated if any payment has been made to any of the accounts or penalty is charged due to missed payments. If the payments have been made, Mifos will throw an error if user tries to re-enter the payment again.
  • Collection Sheet Entry contains space for the user to enter the actual amounts for repayments collected and disbursements made and the attendance for customers can also be specified. Fields in collection sheet entry are detailed below.
  • Collection sheet entry for future dates are not supported.  These contain only the details of payments/disbursements for current and past meetings.
  • Only exact amounts in fees will be accepted
  • Assumption- Each Collection sheet entry will have approximately 40 records (including client, group and center records).
  • If there is a payment and disbursal due at the same time for a client for one loan product (in case when interest is deducted at disbursement), both issues and due sections in the collection sheet entry have text boxes with appropriate amounts.

Collection Sheet Entry Steps

Steps to enter a center’s data in collection sheet entry.   User can enter this feature from Enter Collection Sheet Data link in Mifos in the left navigation pane.

  • User selects a Branch. 
  • From a list of Loan Officers, User selects one LO.
  • Centers assigned to the selected LO are populated and User selects one.
  • Transaction date- disabled - defaulted to the last meeting day.
  • Specify: Payment type, Receipt#, receipt date (these 3 items would then apply across all transactions collected for the center.
  • User continues to next Collection Sheet Entry screen.
  • The amounts for each client, group and account are pre-populated when the collection sheet entry loads. These amounts will be as of the current date
  • Edit the expected transactions - This is detailed below.
  • Preview
  • Submit

Data Displayed on Collection Sheet Entry Form

The collection sheet entry form will have the following data:

 
 
Sl. No. Column Name

Description

1 Client/Group Name, Client/Group ID Client Name should be only First and last name.

Due

2 Loan Product 1, 2… System calculated values should be pre-filled
These can be edited by the users.
3 Savings Account 1, 2… Mandatory deposit amount for savings account 1 due till the current date.
For voluntary savings accounts, this amount will only have the latest amount due and will not include the amounts due from past meetings.
System calculated values should be pre-filled. The amount can be edited by the user.

Issues/Withdrawals

4 Loan Account 1, 2… System calculated values for Loan amount due to be disbursed to the client/group. The amount will be editable.
5 Savings Account 1, 2… User-entered- Withdrawals made in the field clients/groups/centers

Other Collections

6 Client Charges System calculated- Fee/Misc fee/ Misc penalty charged to client/group/center account and due
7 Attendance Drop down with the following options:
Present, Late, Absent, (Approved) Leave.

 

  • The validation required when the above data is entered and submitted is:
    • Loan repayment should either be zero or equal to the amount due
    • Loans disbursed should either be zero or equal to the amount due to be disbursed
    • Withdrawals cannot be greater than the current account balances. If it is so, system should throw an error.
    • Fees should either be zero or equal to the amount due
  • For group and center savings accounts- The system logs transaction entries for each client deposit/withdrawal made to the group account.
  • If a client or group has more than one active loan accounts of the same loan product, the repayment and disbursals due should be clubbed together in the same row. The system will accept only complete or no repayment for the clubbed amount.
  • If a client, group, or center has more than one active savings accounts of the same savings product, collection sheet entry will display only one active savings account (which was created the earliest).
  • User must preview data entered in collection sheet entry before saving.
  • When a collection sheet entry form is submitted, Mifos does the following:
    • Transaction IDs will be generated.
    • Respective savings/loan/client accounts will be updated with the transactions.
  • If a collection sheet entry is generated twice, attendance from the last submitted entry will be displayed in the collection sheet entry. Changes made to the attendance will overwrite the attendance entered before.

Loan Disbursal Update from Collection Sheet Entry

Collection Sheet Entry displays disbursals due on a meeting. If the transaction date is modified to a date other than the last meeting date, Mifos updates the disbursal date for that loan account and regenerates the repayment schedule as per the new disbursal date.

UI Notes

  • All clients/groups from search criteria entered appear in collection sheet entry; even if a client/group has no active loan or savings accounts and has no charges pending in the client account.
  • In Collection Entry UI, the collection sheet grid contains the following details-
    • Details of all client loans and savings accounts
    • Details of center savings accounts
    • Details of client and center accounts
    • Details of group accounts
    • Details of group savings accounts where unit for “Recommended amount for deposits” is “per group”
    • Details of group savings accounts where unit for “Recommended amount for deposits” is “per client”
  • If any column is not relevant for a client/group, the respective cell should be left blank, that is, a text box should not be displayed in that cell
  • In preview page- the text color should be Red in following cases
    • If the attendance is not “Present”,
    • If loan repayment is zero or there is a partial loan repayment,
    • Mandatory savings amount is not equal to the amount due,
    • Account charges collected are not equal to the charges due.

Out of Scope

  • Collection Sheet Entry for clients who do not belong to any group.
  • Full repayment to close loan accounts through bulk entry. Full loan repayment and closure must happen directly off the client page.
 
last modified 2010-06-18 16:07
0
Your rating: None

Import Bank Transactions

Release: 1.4 (updated in 1.6.x)

Introduction

Al Majmoua currently handles all repayments of loans by clients by having clients deposit their repayments directly at a bank, and then Al Majmoua is able to download online a file of these recorded transactions to import their MIS.  They need the ability to do this in Mifos as well.  See related Business requirements for more detail.

User Stories (Epics)

Priority User Story Section in FR
1 As a user (accountant) at the HO, I want to be able to import a XLS of bank transactions from Audi Bank into Mifos so that all details for our clients' payments are accurately recorded in Mifos  
1 As a loan officer at a BO, I want to be able to see the clients at branch have paid their loans in Mifos  
2 As a user (accountant) at the HO, I want to be able to import a XLS of bank transactions from any bank into Mifos so that all details for our clients' payments are accurately recorded in Mifos  

Goals

  • Ability to import file of loan repayment transaction details into Mifos
  • Transaction History in Mifos accurately shows loan payments.

Non-Goals

The following items will not be addressed in this release:

  • Importing bank transactions from any bank other than Audi Bank
  • No import of attendance, savings, fees, or loan disbursal information - only loan repayments are imported.
  • Additional logging of import than what we do already in Mifos for logging

Definitions and Terminology

  • Mandatory fields will be preceded by *
  • Links are italicized
  • Buttons are Button

Related Documents

  • Business Requirements

Import Bank Transactions

This feature is in the Admin section and will allow the User to import bank transactions

Use Cases

Administrator assigns permissions to accountant to import bank transactions

Actors

  •  Administrator

Preconditions

  •  None

Basic Flow

  1. Administrator logs onto Mifos and navigates to the Admin section. Administrator selects Manage Roles and Permissions. Administrator selects the role for accountants.
  2. Mifos displays all possible permissions for the role and Administrator scrolls down to "Bulk". Administrator confirms that "Can import transactions" is checked.

Post-conditions

  • Accountant role has permission to import bank transactions

Alternative Flows

  • None

Validations

  • None

Accountant imports transactions (Audi Bank) - file with no errors

Actors

  • Accountant

Preconditions

  •  Accountant has permissions to import transactions
  • Accountant has file in xls (Excel 97 format) to import

Basic Flow

  1. Accountant logs onto Mifos and navigates to the Admin section. Accountant selects Import transactions.
  2. Mifos displays new screen for Import Transactions.
  3. Accountant selects Audi Bank Excel 97 or Audi Bank TSV for bank, and selects file from their computer for import. Accountant clicks on Continue.
  4. Mifos imports file and checks for any errors (see Validations below). If there are no errors, Mifos displays Review & Submit screen with "There are no errors found. Click Submit to continue with import.".
  5. Accountant clicks on Submit. Mifos displays confirmation screen that import was successful.

Post-conditions

  • All data available in the file has been imported and all the correct tables and loan account data correctly populated.

Validations

  • If a row has a cell that's empty in a required column is empty, that row is rejected and appropriate error message displayed.
  • No bad data - ie, no numbers in columns that require text and vice versa. Date of Transaction is in date format YYYY/MM/DD if it's a TSV file, or does not follow the expected format of that column. See FR's below.

Alternative Flows

Accountant cancels Import

  1. At step 4, Accountant clicks on Cancel instead. Mifos returns User to the Admin screen.

Post-conditions

  • No data has been imported.

Import has errors and Accountant chooses to continue

  1. At step 4, Mifos determines there are errors from Validations above.  Mifos displays Review & Submit screen with error messages depending on types of error.
  2. Accountant chooses to continue with import of the valid rows and clicks on Submit.   Mifos displays confirmation screen that import was successful.

Post-conditions

  • Valid rows are imported and invalid rows are rejected.

Import has errors and Accountant chooses to Cancel

  1. At step 4, Mifos determines there are errors from Validations above.  Mifos displays Review & Submit screen with error messages depending on types of error.
  2. Accountant chooses to cancel and clicks on Cancel instead. Mifos returns User to the Admin screen.

Post-conditions

  • No data has been imported.

Import has errors and Accountant chooses to import a different file

  1. At step 4, Mifos determines there are errors from Validations above.  Mifos displays Review & Submit screen with error messages depending on types of error.
  2. Accountant chooses to import a different file and clicks on Edit Import Information instead. Mifos returns User to the previous screen.  Return to Step 2 of Basic Flow.

Post-conditions

  • No data has been imported.

Loan Officer checks data has been updated

Actors

  • Loan Officer

Preconditions

  • Loan Officer has permissions to view clients loan data
  • Administrator has already imported data for that date.

Basic Flow

  1. Loan Officer logs onto Mifos and navigates to client A's loan account.
  2. Mifos displays Transaction History. Loan Officer confirms that a repayment has been updated correctly.

Post-conditions

  •  None

Alternative Flows

Loan Officer doesn't see the data updated

  1. Loan Officer selects a client who did not pay for the date of transaction the Administrator had imported.
  2. Loan Officer goes to view that client's transaction history and sees that no transaction has been made.

Accountant imports bank transactions (generic) - P2

Actors

  • Accountant

Preconditions

  •  Accountant has permissions to import bank transactions

Basic Flow

  1. Accountant logs onto Mifos and navigates to the Admin section. Accountant selects Import bank Transactions.
    1. OR Accountant clicks on link in Quick Start - Import bank Transactions
  2. Mifos displays new screen for Import Bank Transactions.
  3. Accountant enters date of transaction (defaulted to today). and selects file from their computer for import. File follows generic format set by Mifos.
    1. Accountant can select up to 5 custom fields they want data imported from the file to map to.  Ie - they select custom Field "Serial" and enter in column name "Serial" where the import will map to that column.  No validations are done on custom field columns.
    2. Accountant clicks on Continue.
  4. Mifos imports file and checks for any errors (see Validations below). If there are no errors, Mifos displays Review & Submit screen with "There are no errors found. Click Submit to continue with import.".
  5. Accountant clicks on Submit. Mifos returns the Accountant to the Admin screen.

Post-conditions

  • All data available in the file has been imported and all the correct tables and loan account data correctly populated.

Validations

  • If any cell in a required column is empty  entire import is rejected with appropriate error message.
  • No bad data - ie, no numbers in columns that require text and vice versa. Date of Transaction is in date format MM/DD/YYYY or does not follow the expected format of that column. See FR's below.  This is only for columns required in generic format - there is no validation done on Custom fields.

Alternative Flows

User Stories

Priority Size User Stories Mingle card #
1 X-Small As a User, I can give permission to import bank transactions.  
1 Small As a User, I can click on Import Bank Transactions and see options to import my file (Audi Bank).  
1 Small As a User, I can confirm that I want to import the data into Mifos.  
1 Medium Populate all data from file import in Mifos  
2 Medium As a User, I can click on Import Bank Transactions and see options to import my file (generic)  

Import Bank Transactions (Audi Bank) Functional Requirements

Add new permission

FR# Pri Description Comments / Mockups
1.1 P1 Add new permission "Can import transactions" under the Bulk subsection in Permissions. The ADMIN role should by default have this permission checked.  
1.2 P1 Assumption is the only check when the user imports transactions is if they have this permission checked in their role. There is no checking of their data scope and hierarchy. Ie: If the user is a Loan Officer in BO1, and has this permission checked in their role, then they are allowed to import any bank file, and there is no check that the data they are importing is only for their branch office.  
1.3 P2 If one day we implement importing transactions per branch, then permission should also check for data scope.  Ie, can only import data for a particular branch.  

Add new screen for Import Bank Transactions (Audi Bank)

FR# Pri Description Comments / Mockups
2.1 P1 Add Manage Imports section with Import Transactions link in Admin section  
2.2 P1 New Import Data Transactions Screen with following fields:

* Import format (dropdown)

* Select import file (browse for select file)
 
2.3 P1 Import format Field will have two options: Audi Bank (tab delimited) and Audi Bank Excel 97 formats  
2.4 P1 Screen has buttons Continue and Cancel.  Clicking on Continue imports the file selected and Mifos does validations and brings User to Review & Submit screen.  Clicking on Cancel returns User to Admin screen.  
2.5 P1 If there is no import plugin for the MFI, then the Import Format options will be blank and if the User tries to import a file and Continue, the following error message will be displayed at the top.  Also if the User does not select a plugin even if there are options then the following error message will be displayed.



Please select the import type.
 
2.6 P1 If there is no Mode of Payment configured in Mifos to be the same as the first cell of that file (in this case, should always be Bank Audi sal), then an error message will be thrown on the Import screen:



No payment type found named <bank>

where <bank> is the first cell of that file.
 

Import File Details and Validations (Audi)

FR# Pri Description Comments / Mockups
3.1 P1 Audi Bank import file is currently in Excel.  Al Majmoua will save these as a tab-delimited file first before importing into Mifos.  
3.2 P1 Audi Bank import file first few lines contain description of file.  These are to be ignored.  Only data after row of column headings will be imported.  
3.3 P1 Import file will have columns in below table  
3.4 P1 There will be bare basic error checking - to successfully import the data.  
3.5 P1 If a row with C (for Credit in D/C column) contains a cell that's missing a required field, Mifos displays an error message for each row this occurs.

Row <#> is missing data.

where the row # is the original row # of the import file.
 
3.6 P1 If any value under Trans.Date column is not in format of YYYY/MM/DD if User is using TSV importer, then Mifos displays an error message for each row this occurs.

Transaction date value in Row <#> does not follow expected format (YYYY/MM/DD).

where the row # is the original row # of the import file. 

No error message will be thrown to validate date format when using Excel importer since the importer will check for correct date format automatically.
 
3.7 P1 If any value under the Serial column is not numeric (ie text or special character) then Mifos displays an error message for each row this occurs.

Serial value in Row <#> does not follow expected format.

where the row # is the original row # of the import file. 
 
3.8 P1 If any value under the Description column does not follow the format PMTMAJ<2 letter code><5 digit loan id for external id or 15 digit loan id for Mifos loan id> then Mifos displays an error message for each row this occurs. Mifos should throw an error message when:
  1. PMTMAJ<two-letter-code> does not precede some numbers.
  2. If the numbers that follows is not 5 digits or 15 digits. 



    The following error message should be displayed.

    Loan ID could not be extracted from Row <#> where the row # is the original row # of the import file.
 
3.9 P1 Check if the same file name has been imported.  If so, then throw an error message and reject the whole import.



Same file name has been imported.  Please import a different file.
 
3.10 P1 After clicking on Continue, Mifos will display the Review & Submit screen with the following:

Review the information below.  Click Submit if you want to continue with import or click Edit to make changes. Click Cancel to return to Admin page without submitting information.



Import information



Import file name: <name of file>

Import Status: <#> rows contained no errors and will be imported.



where <#> is the number of valid rows being imported. 

See mockup.
 
3.11 P1 If any error messages apply, then Mifos adds the messages line by line.



The following rows contained errors and will not be imported:
  • Row <x> is missing data.
  • Serial value in Row <x> does not follow expected format. and then the error messages are displayed one per line.
 
3.12 P1 User can then either
  1. Click on Edit import information to go back to previous screen and upload new file.
  2. Continue with import and Submit.
  3. Cancel out of the workflow (returning to Admin screen).
 
3.13 P1 If User clicks on Submit, Mifos imports the file and displays confirmation screen - see mockup ->  
3.14 P1 There is no option to revert a file upload once it has been submitted.  
3.15 P1 There is no checking of duplicate rows (see 3.9)  
3.16 P1 Currency of values imported is directly inherited from the loan product that the loan account is mapped to.  
3.17 P2 If there are no rows found with import data, the following error message should be thrown:



No rows found with import data.
 

 

Audi Bank Import Columns and Description

Column Name Required Description Comments Validations Range Example Maps to Mifos
Trans.Date Yes Payment date   Validate date is in range (see above) YYYY/MM/DD (for tab-delimited files) 2009/09/01 Transaction Date
Serial Yes reference number for the transaction   Only validate value is numeric (see above)   1234567 Serial Number (internal field in DB)
Value Date No   Ignore this column        
Reference No   Ignore this column         
D/C Yes Debit or Credit Only import rows with C No validation - only import rows with C D or C C None
Amount Yes transaction amount can be in USD or LBP, currency is not indicated Only validate amount is a number numeric number 2577 Transaction amount
Balance No ignore Ignore this column        
Description Yes contains the loan id Only import rows with A, Z, or C in the 2nd letter of <two-letter-code>



Need to extract the loan id from this row

loan id is 5 digits or 15 digits
Only validate if the loan id can be extracted for rows with A, Z, or C - so if format is incorrect and loan id cannot be extracted, display error message (see above) PMTMAJ <two-letter-code><5 digit external loan id or 15 digit mifos loan id><space><two-digit LA code> <client name> PMTMAJ EC12345 82  Joe Smith 

PMTMAJ EC1234567890123456 82  Joe Smith
External ID

Loan Repayment Details

FR# Pri Description Comments / Mockups
4.1 P1 Assumption: All transaction detail is for loan repayments (loan fees, interest, principal). There is no data in file for loan disbursals, savings withdrawals or deposits, client, group or center fees, or client attendance.  
4.2 P1 Trans.Date is actual repayment date recorded  
4.3 P1 Amount that is being paid - pre-payments and partial payments are allowed.  Amount in file is applied in the following order - Penalties, Fees, Interest, Principal.  
4.4 P1 Trans. Date cannot be after today in Mifos  
4.5 P1 Mode of Payment must be configured in Mifos to have Bank Audi sal, which will be the mode of payment used for all transactions in that import.  
4.6 P1 If there is an overpayment, Mifos should thrown an error.  

Other Assumptions

LSIM

  • LSIM will be on - but should work on or off

QA Considerations

  • Performance History - PAR, other values calculated correctly
  • View Loan Account Details - correct dates and values imported
  • Transaction History - each transaction should still be logged, with the user who did the import

Standard Considerations

Security (Permissions, Roles, and Data Scope)

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? No
Are you adding any new permissions or changing existing permission to control this feature? Yes - adding new permission Can import bank transactions
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 special considerations.  Default value is checked in ADMIN role and unchecked for all other roles.
What will be the default values for default roles in a new installation?  

Impacts to System

Does this feature affect Bulk Loan Creation?  How? No
Does this feature affect Collection Sheet Entry?  How? No
Does this feature affect Redo Loans? No
Does this feature affect Undo Loans? No
   

Globalization/Localization

Will this feature support users localizing data that they enter?  
Does this feature involve any date/time related data, and if so how should conversions be handled?  
Is there currency or other numeric data ? If so does it require any special handling or validation?  

Logging

Change Log

Do changes to the data that is collected or stored by the new feature have to be fully logged by the system? Yes
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.

Does the feature affect any existing reports? No
Does the feature require adding any new reports? No

Performance

Will the feature be a high use-case scenario? No
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 ASP page timeout?  
Will the feature contain any bulk insert/update/delete transactions?  
Will the feature contain any caching mechanisms or cache refreshing mechanisms? Unclear
Could the feature result in a large amount of data being sent to the client or between the database and web server? Yes
Would users on a low bandwidth connection likely face issues with a part of this feature? Depends on size of file
Does the feature affect existing batch jobs or require adding any new batch jobs? Unclear

Setup and Installation

New Installations

Will the feature include demo data? No
Does the feature require any data to be gathered at setup runtime? No

Backward Compatibility and Upgrades

Is there any data conversion that needs to be done as part of an upgrade?  
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. ADMIN role should be updated to have this permission checked.
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

If different user groups are using the same database, are there concerns over the sharing of data related to the feature?  
Are there expected to be performance related issues with having many customers sharing the same hardware in support of this feature?  

Configuration

Does this feature require changes to configuration files? No
If so, is this feature enabled or disabled by default? N/A

Open Questions and Notes

Answered

  • we need a sample of what data can be dumped from the banking system
  • Is it one file for the whole MFI or one file per branch office?
    • one file per currency per bank (there are currently 5 banks) - SB
  • Is this one person w/ an Administrator role doing this at the HO
    • It will be more than one user in the HO accounting department, not all of which should be admins
  • What is the name of their bank?
    • Audi Bank is the main one
  • Is it only Audi Bank or BSL too?  Both are referenced in some of the sentences
  • How important is it to share what type of error it is and at what level does it need to be at if it's necessary - ie do we need to tell what row the error occurs on or can we just say generically what the error is?
    • Medium important, for each row that has an error, an accountant is going to have to examine it and manually correct it, possibly after calling a bank or branch. So, it would be better to have Mifos report which rows have errors, otherwise the accountant will have to manually scan the import files and keep trying to import until she finds all the errors.
  • Does Excel format mean it won't accept Unicode (Arabic) characters?
    • Not sure, but it doesn't matter. We only need to import (loan id, bank ref #, trans date, amount), none of which will have Arabic characters.
  • Typical size of file - will this have impact on performance? - Load of transactions - 1500 transactions/file?
    • please see samples attached to MAJ:Bank Imports , these are representative of a typical day. Keep in mind though, the growth projections for MAJ:Al Majmoua
  • Can we get access to the bank's website?
    • they probably won't give us their online banking password, but just let me know what you need and I will ask their accounting department.
  • I deleted the spec I had in progress from mifos.org in lieu of what you said (Sam) about Al M's desire to keep information away from competitors.  We can revisit later what we can and cannot put on mifos.org
    • thank you!!!
  • Do we need to have the Excel format converted first to a different format for easier/quicker development of this feature?
    • whatever is best for feature development.
  • Current spec is assuming option 2 of multicurrency (products have been created and entered in respective currency)
    • interesting... let's catch up on multi-currency then, I thought option 2 was a no-go when we discussed it Monday

can we get the bank to only put loan id in the description field? No

Unanswered

  • credit rows in Audi with no loan id - are these reversals, or missing loan ids?
  • look at Audi USD line 202
Audi Bank   Generic Import  
Pros Cons Pros Cons
Faster Restricts us to adding one bank at a time in the future Can accommodate all 5 of Al Majmoua's banks Will take longer to implement
       

Review and Approvals

 

Date Name Role Status
    PM  
    Dev  
    QA  
0
Your rating: None

Deposits and Withdrawals to Savings Accounts

Deposits and Withdrawals on Savings Accounts


Introduction

When a savings account is in Approved status, the following types of transactions can be made to the account:

  • Deposits
  • Withdrawals
  • Adjustments
  • Interest posting

Each of the transaction entries described here is made against the correct GL Code, according to the chart of accounts defined for the HO. The transactions are not included in the change logs.

Deposits and withdrawals

For mandatory savings accounts, the total due, including amounts not paid in past meetings, and the date, are displayed on the account details page. If the mandatory deposits are specified as per group member, then deposits made against Non-specified do not reduce the amounts to be deposited by each group member. This is applicable to all center savings accounts as well.

For voluntary savings accounts, a recommended amount is displayed on the account details page.

The user specifies the following when making a deposit/withdrawal:

  • Type of transaction: (Deposit/Withdrawal)
  • Amount
  • Date of transaction
  • Mode of payment
  • For client accounts:  Client name. The list includes of all the clients of the group/center and one Non-specified option. Clients in Approved and On Hold states are listed.
  • Receipt ID
  • Receipt date

For mandatory accounts, the amount deposited can be less than or equal to or greater than the mandatory deposit amount, with the following implications:

  • If the amount is less than the mandatory deposit amount, the balance due but not paid is displayed in Past amount due section.
  • If an amount greater than the mandatory deposit account is deposited, this will not affect the next deposit due.
  • If partial payment is made, Mifos applies the amount against the oldest mandatory payment first.

The system records the date of transaction and the username. The user previews and saves the information. The system performs basic error checking and records the transaction date and the user name and records the transaction and updates the savings account balance.

Note : Even though the current account balance is shown as one value (sum of all debits minus all credits), the system can detect if, for example, an adjustment is made, whether it was a withdrawal or a reduction of interest earned .[correct?]

Savings adjustments

To rectify errors/mismatches, users with appropriate permissions can modify or nullify the amount last paid. The system then reverses the last entry (withdrawal or deposit) and creates another transaction for the new deposit. The corresponding financial transactions entries (DR/CR) are made.

For mandatory accounts:

  • If the last transaction was a deposit, and it is nullified or decreased, the system decreases the account balance, ensuring that the adjustment does not create a negative account balance. A negative adjustment cannot be entered.
  • If the last transaction was a withdrawal, and it is nullified or decreased, the system updates the account balance accordingly. But if the amount is increased, the system ensures that the withdrawal is not greater than the account balance. A negative amount cannot be entered.

For voluntary accounts:

  • The amount can be nullified/decreased or increased.
  • If the last transaction was a deposit, and it is nullified/decreased or increased, the system updates the account balance accordingly.
  • If the last transaction was a withdrawal, and it is nullified or decreased, the system updates the account balance accordingly. But if the amount is increased, the system ensures that the withdrawal is not greater than the account balance

For group/center savings accounts, if the last transaction is nullified, it is adjusted against the client who made the transaction.

Bulk entry. For center savings accounts, there can be multiple deposits and/or withdrawals. For adjustments, the system picks up the amount under the non-specified option of the center account as the last transaction. If this is empty, the system allows an adjustment on the transaction made for the last client. A similar rule applies to group savings accounts.

Interest posting

More on interest posting and calculations here

Transaction history

This section records all amounts that were deducted or added to the account.

The details recorded are:

  • Date of transaction: For deposits/withdrawals and payments, this is the user-entered date of transaction.
  • Transaction ID: ID generated by the system for each transaction
  • Type: Type of transaction is one of the following:
    • Deposit
    • Withdrawal
    • Interest
    • Adjustment
  • GL Code: GL Code against which this has been recorded
  • Debit
  • Credit (note that it will be either debit or credit per transaction)
  • Balance: System updates the account balance after every transaction and displays this balance in transaction history.
  • Date Posted: Recorded and displayed by the system.
  • Posted By: username of the user recorded and displayed by the system.
  • Client name: for groups and center accounts
0
Your rating: None

Retrieving Information

0
Your rating: None

Searching and Browsing

Search

Users can search for clients, groups, and centers in Mifos by name and by ID, and they can search for loans and savings account by account number. Search fields are displayed on both the Home tab and the Clients & Accounts tab.

The system performs a name search first and then an ID search on the user entry. Search results show the total matches within the user’s data scope, starting with the user-specified keyword. It displays 20 results per page, and allows the user to navigate between the pages.

Names:  Users can search for any client, group, and center names and the system returns matches within the user’s data scope. For example, a search for John results in all client, group, and center names that start with john (like <value>%) and belong to a branch within the user’s data scope.

The system searches a client’s first, second last and last name, but not middle name.

If a user searches for a client name consisting of multiple words, the system treats these as a single word. For example, if a user searches for an or anne m, then anne marie will be one of the results. But if a user searches for marie, then anne marie will not be a search result. Results are displayed by client type, with client names followed by groups, followed by centers. Each type is sorted, with clients sorted by last name and then first name only.

IDs: Users can search by client ID, client's government ID, group ID, center ID, and loan and savings account numbers. When using this search method, the ID or number entered must be exact, otherwise no results are displayed.

Search results

Search results for a client/group/center ID or name include links to the following:

  • Client/group/center details page
  • Loan account(s) details page for the client
  • Savings account(s) details page for the client
  • Parent information: branch home page of the client; center details page of the client; and group details page of the client

Here is a sample:

Search Structure
 

Search results performed on loan/savings account system ID include a link to the account details page of the searched ID.

Using search to create a new client account

To create a new client account in Mifos, the user begins by searching for the group to which the client will belong. The results show the groups that match the search criteria, together with the branch/center to which each group belongs.

Group Search Details
 

The user then clicks the appropriate group name to begin entering the client information. A user also searches for groups when transferring a client from one group to another.

Using search to create a new group

To create a new group record in Mifos, the user begins by searching for the center to which the group will belong. The results show the centers that match the search criteria, together with the branches to which each center belongs. The search results are sorted first by branch name and then by center name. [what about area offices?]

Center Name Search
 

The user then clicks the appropriate center name to begin entering the group information. A user also searches for centers when transferring a group to another center in the same or a different branch.

Browsing

On the Clients & Accounts tab, under Select a Branch Office, users can navigate as follows:

  • From the list of branch offices (in the user’s data scope) > to a list of all loan officers of a particular branch > to a list of all active centers (or groups if center hierarchy doesn’t exist) of a particular loan officer > to the selected center details.
  • Loan officers can then browse the centers (or groups if center hierarchy doesn’t exist) assigned to him/her.

If a branch has no loan officers, the results display “No loan officers available.” If a loan officer has no centers assigned to him/her (or groups if the center hierarchy doesn’t exist) the results display “No centers/groups available.”

In addition, on the details page of client, group, center, loan and savings accounts, users can navigate as follows.

Client

Branch home page of the client
Center and group details page of client
Loan accounts detail pages of client
Savings account details pages of the clients
Client charges page

Group

Branch home page of the group
Center details page of group
Loan accounts detail pages of group
Savings account details pages of the group
Group charges page
Clients’ details page of the clients belonging to the group

Center

Branch home page of the center
Groups’ details page of the groups belonging to the center
Savings account details pages of the center
Center charges page

Loan account

Branch home page of the account owner
Center and group details page of account owner
Account owner’s detail page

Savings details

Branch home page of the account owner
Center and group details page of account owner
Account owner’s detail page

Client changes

Branch home page of the client
Center, group and client’s details page of client

last modified 2010-05-14 07:36

0
Your rating: None

Administrative Documents

MFIs can use BIRT, the same reporting tool used to create reports at the HO level, to create a set of administrative documents that can be attached to specific loan and savings accounts and printed as needed. The administrative documents that ship with Mifos v1.1 include a voucher, payment book, disbursal receipt, and payment receipt. [more info about each of these?]

Uploading administrative documents

Once an administrative document has been created, it can be uploaded to Mifos through the Upload admin documents link on the Admin tab. The user enters a document title, account type (either loan or savings), and the states in which the document can be printed. He then uploads the document template, previews it, and clicks Submit, to make the report available in Mifos.

Users can click the View admin documents link on the Admin tab to see a list of available administrative documents. From this page, the user can edit a document definition or download a document and modify the layout or data fields and then upload it to Mifos again.

Generating administrative documents

Available administrative documents are displayed on the loans and savings account details page, for every loan or savings account that meets that status requirements specified in the document definition. When a user clicks on a document link, the document is displayed with the data pertaining to that account. The user can then print the document, or the user can click Cancel to return to the account details page.

There is an open issue where admin documents are not working with Savings Accounts.  Issue MIFOS-1977

 

last modified 2009-01-20 15:37

0
Your rating: None

Surveys

DEPRECATED in 1.6.x - See Question Groups for new functionality.

Surveys provide a means for collecting information about a user or a group that can then be used, for example, when assessing loan applications, poverty levels, and for measuring impact and creating exit and collateral surveys.  MFIs first create a common set of survey questions. Users can then choose from these questions when defining surveys. Surveys can be attached to clients, groups, centers, loan accounts, and savings accounts. The same survey can be attached multiple times to the same entity to track historical changes over time.

Defining survey questions

Survey questions are defined from the Define questions link on the Admin tab. They are defined at the HO level; AO’s and BO’s cannot define new questions.

For each question, the user specifies the question name, the question, the question type and the possible answers, as described in the following table.

Table 1: Attributes for Question Definition
S No. Attribute Name Data Type Range Description
  1.  
Short Name Text (50) 50 characters Short name of the question ie 'Annual Family Income' instead of 'what is your annual family income'. Duplicates will be checked using this field. This field will also preface the full question whenever Questions are displayed
  1.  
Question Text (4000) 4000 characters Question (as it will appear in the surveys) will be added here. Number of characters for the question '/' can be max 4000 but only 500 characters will be displayed in the question list.
  1.  
Answer Type and Answers   See 3a - 3e  
3a. Single Select   Number of options; Text fields = number of options Number of options can be maximum 20. These answers will have radio buttons.
3b. Number   Minimum Value allowed; Maximum Value allowed Specifies the range of allowable answers that a question can have.
3c. Date None None Definition of date will be inherited from MFI. If marked mandatory; at least option must be selected.
3d. Multi Select Number of options; Text fields = number of options Number of options can be maximum 20. These answers will have check boxes.  
3e. Free Text   Number of characters (1-4000 characters) User can define what size text field s/he wants to allow so some response fields can be a single line, others a large box.
  1.  
State   Active;Inactive Questions can be marked as inactive if they are not part of any survey. Inactive questions will not be visible in the Questions list displayed when creating a survey; however they will still be displayed in the Question Bank.

The user enters the possible answer choices one at a time. After each entry, he clicks Add, and the answer is added to the choice list. Once the answer choices are defined, he clicks Add Question, and the question is displayed as a preview. When the user has finished adding questions, he clicks Submit. The questions are added to the question bank and are available for use in surveys. The user is returned to the Admin tab.

Note the following:

  • Before a question is saved, it is validated for duplication against the Short Name field.
  • The Answer choice text box is available only if either Single Select or Multi Select has been select in the Answer type drop down field.
  • Once defined, questions can be modified by clicking the View question bank link and then selecting the question.
  • Questions cannot be deleted, as they can be part of one or more surveys, but the status of the question can be changed to active or inactive on the edit page. Inactive questions are not displayed when surveys are defined.

[how are questions flagged for PPI?]

Questions in the question bank can be viewed by clicking the View question bank link on the Admin tab.

Defining surveys

A new survey is defined by clicking the Define new survey link on the Admin tab. The user names the survey, specifies who the survey applies to, and adds questions to the survey, which have already been defined in the question bank.

The fields are defined in the following attributes table.

S No. Attribute Name Data Type Range Description
  1.  
Survey Name     Duplicate survey names will be allowed
  1.  
Survey Type   Client; Group; Center; Loan; Savings; All Specifies who the survey applies to... Client/Group/Center together are grouped as customers when browsing surveys; Loan/Savings are grouped as Accounts
  1.  
Creation Date      
  1.  
Add Questions to Survey   Search Results or All Questions Questions will be added to the survey in the order of selection. Reordering of questions in survey will not be allowed
  1.  
Mandatory     Specify which questions have to be marked as Mandatory in the survey. There is currently an issue in Mifos (Issue 2446) where if you set a question as Mandatory, you cannot unset it. Workaround is to create a new question and replace it in the survey.
  1.  
State   Active;Inactive Surveys can be made inactive if they are not attached to any record

The questions are added to the survey one at a time, by selecting a question displayed in the list box and clicking the button. The question name and the question itself are then displayed in the bottom portion of the screen. The user can mark the question as mandatory. He can click Delete to remove the question from the survey.

When the list of questions is complete, the user clicks the Preview button to view the survey. He can click Edit Survey Information at this point to edit the list of selected questions. When he clicks Submit, the survey becomes active and available for use. A confirmation page is displayed, with a View survey details now link and a Define a new survey link.

Once submitted, a survey cannot be edited [true?]. Surveys can be deleted only if they have not been attached to any record. However, they can be hidden, so that they cannot be attached to any new survey. Multiple instances of the same survey in the same state are allowed.

Viewing surveys

Existing surveys can be viewed from the View surveys link on the Admin tab or by clicking the View all surveys link on an account details page. The system displays all existing surveys grouped by who the survey applies to (group, center, client, etc).  Users can view a specific survey by clicking its link on this page. On the survey details page, users can click the Printer version link to display a printer-friendly version of the survey and the Edit survey link, to edit the survey.

Completing and attaching surveys

Surveys are completed and attached to an account (client, group, center, loan, or savings) from the account details page. When a user clicks the Attach a survey link, in the Surveys box, Mifos displays a Select a survey box with a list of surveys applicable to the account type. The user selects a survey and enters the date of the survey and the officer who conducted the survey and then completes the questions in the survey. When completed, the user previews the information entered. He can click Clear All to re-enter information or Submit to save the survey results.

The system validates that required questions are answered and displays the survey name in the Surveys box on the account details page. Multiple instances of the survey can be attached to the record.

The information in completed surveys can be used to generate custom reports.

Progress out of Poverty Index survey

The Progress out of Poverty Index Survey is a country-specific survey that is used to determine the likelihood of a client belonging to a specific poverty level. An MFI uses this information on a portfolio level to calculate overall poverty rates. At the client level, the information is used to determine which products to offer a client or to track loan repayments/retention/recruitment rates of clients falling into each of the poverty buckets.

The surveys for each country include 10 questions. For each question, points are associated with each possible answer. The total number of points for a completed survey is called the poverty index score. For each country, a poverty likelihood chart is defined that maps the poverty index score to a percentage indicating the likelihood that a client is non-poor, at-risk, poor, or very poor. For example, in India, if a client receives a poverty index score of 52, that means that the client has a 2.5% change of being very poor, a 10.8% chance of being poor, and a 86.7% change of being non-poor.

Configuring PPI settings

An MFI can define the poverty index score range for each poverty level from the Configure PPI Settings link on the Admin tab. This is optional; an MFI can use the PPI survey but choose not to have its score impact their clients’ poverty status.

The user selects a country and sets the status to Active or Inactive. For each poverty status level, the user defines a point range, and then clicks Preview. On the Preview page, the user clicks Submit.

PPI settings can be viewed and edited from the View PPI settings link on the Admin tab.

Once a Poverty Index Survey has been defined for an MFI, a link to it appears in the Survey box on every client account details page.

Because Poverty Index Surveys and their corresponding Poverty Likelihood Charts change so infrequently, there is no user interface for entering this information and must be implemented directly into Mifos.  Any changes to the survey and the chart will impact only future surveys and scores.

Completing a PPI Survey

PPI surveys can be attached to client accounts only. To complete a PPI Survey for a client, the user clicks the Attach a survey link on the client details page and selects the survey from the drop-down list. The user enters the date the survey data was collected. Surveys can be back-dated with no restriction. The user then completes the survey questions and clicks Preview. The system checks to ensure all mandatory questions are answered. The total score is calculated, which can be between 0 and 100. The Status field is automatically calculated by Mifos, based on the total score and the defined poverty levels. The user clicks Submit, or can click Clear All to re-enter the answers.

If poverty levels have been configured, then a poverty field is attached to the client details page under a new section called Poverty measurement information, which has the following fields: Poverty measurement tool; Poverty band. 

At any time, these survey results can be edited or deleted. If edits change the poverty status, this will automatically be reflected in the Poverty field on the details page. If a survey is deleted, the associated poverty status and scores are also removed and the Poverty field reverts back to the previous score.

 

 

last modified 2009-08-11 15:28

0
Your rating: None

Reporting in Mifos

NOTE: We are currently transitioning our reports from BIRT to Pentaho.  See Pentaho Reports in Mifos for new reports.

 

Overview

Once Mifos is being used to manage accounts, handle scheduling, and collect repayments, the data being generated can be viewed in reports:

  • Standard reports: There are three reports that Mifos ships with by default. Accessing and using these reports does not require that BIRT (Business Intelligence and Reporting Tools) be installed. However, if you want to customize the reports, you will need to install BIRT.
  • Custom reports: You can also create your own reports using BIRT. BIRT is a free open-source application from Eclipse.

Using the Standard Reports

By default, Mifos provides the following reports, each of which you can access from the Reports tab:

  • Collection Sheet Report: Helps Loan Officers organize and prepare for their repayment collection meetings with clients and groups.
  • Branch Cash Confirmation Report: Assists management and accounting in tracking daily cash inflows and outflows.
  • Branch Progress Report: Helps management monitor office progress.
  • GL Report (Mifos 1.6.x): Lists transactions by GL code
  • Detailed Aging Portfolio at Risk (Mifos 1.6.x):

You generate reports from the Reports tab. To change how the reports appear on the Reports tab or to edit the appearance of the reports themselves (by editing or creating your own reports templates), use the View report templates and Upload report templates links under Manage Reports on the Admin tab.

Collection Sheet Report

Collection Sheet Reports are used by Loan Officers for their meetings with clients. The reports provide Loan Officers with the amounts that need to be collected from each client, including loan repayments, fees, penalties, recommended savings amounts, and any other dues that need to be collected. The reports also provide the amount of money that should be disbursed to each client at the meeting.

To generate a Collection Sheet Report:

  1. On the Reports tab, click Collection Sheet Report.
  2. Select values for Branch, Loan Officer and Center.
  3. Enter the date of the meeting for which you want to run a report.
  4. Click Generate.

To create your own Collection Sheet Report template:

  1. On the Admin tab, click View report templates under Manage Reports.
  2. To use the default Collection Sheet Report as a starting point for creating your own template, click the Download link for Collection Sheet Report.
  3. Save CollectionSheetReport.rptdesign locally.
  4. Open the above file in BIRT RCP Designer and give it a new name, thus preserving a backup.
  5. Edit your version of the .rptdesign file in BIRT.
  6. In Mifos, use the Upload link under Manage Reports on the Admin tab to upload your new report template.

Branch Cash Confirmation Report

The Branch Cash Confirmation Report lists a branch's daily cash inflows and outflows and is used to tally the day's accounting books. This report is typically used by management as well as accounting departments. 

To generate a Branch Cash Confirmation Report:

  1. On the Reports tab, click Branch Cash Confirmation Report.
  2. Select a Branch.
  3. Enter a date.
  4. Click Generate.

To create your own Branch Cash Confirmation Report template:

  1. On the Admin tab, click View report templates under Manage Reports.
  2. To use the default Branch Cash Confirmation Report template as a starting point for creating your own template, click the Download link for Branch Cash Confirmation Report.
  3. Save BranchCashConfirmationReport.rptdesign locally.
  4. Open the above file in BIRT RCP Designer and give it a new name, thus preserving a backup.
  5. Edit your new .rptdesign file in BIRT.
  6. In Mifos, use the Upload link under Manage Reports on the Admin tab to upload your new report template.

Note: Currently this report is hardcoded to extract data from a database named 'mifos'.  If you have changed the name of the Mifos database, the report needs to be updated with the correct database.

Branch Progress Report

The Branch Progress Report consists of the summary statistics, staff performance metrics and loan details of the office for which the report is being generated. This report is typically used by management to monitor office progress and aid decision making. Because the report can be generated for any date in the past, comparative studies and trend analysis are possible.

Mockup/Spec: Branch Progress Report Mockup

Sample PDF: Sample Branch Progress Report

To generate a Branch Progress Report:

  1. On the Reports tab, click Branch Progress Report.
  2. Select a Branch.
  3. Enter the date as of which you want information.
  4. Click Generate.

To create your own Branch Progress Report template:

  1. On the Admin tab, click View report templates under Manage Reports.
  2. To use the default Branch Progress Report template as a starting point for creating your own template, click the Download link for Branch Progress Report.
  3. Save BranchProgressReport.rptdesign locally.
  4. Open the above file in BIRT RCP Designer and give it a new name, thus preserving a backup.
  5. Edit your version of the .rptdesign file in BIRT.
  6. In Mifos, use the Upload link under Manage Reports on the Admin tab to upload your new report template.

General Ledger Report

Installing BIRT

To customize the standard reports provided by default with Mifos or to create your own reports, you will need to download and install version 2.1.2 of the BIRT RCP (Rich Client Platform) Report Designer from Eclipse. The RCP version is required because it produces reports in the version (3.2.6) supported by the BIRT Report Viewer provided with Mifos. It also simplifies the Eclipse user interface so that only essential screens and options are presented.

To install BIRT:

  1. Download, free of charge, the BIRT RCP Report Designer version 2.1.2.
  2. Accept the default installation location (for example, C:\Program Files\birt-rcp).

Creating your own Reports

Designing your Reports

Designing your own report starts with planning it on paper or in a spreadsheet application like Excel. See the following sample: report designed in Excel.

Data Extraction and Mifos

If you are creating your own report, the data in the report can be extracted one of two ways:

  • Using an SQL query (recommended): In this approach, you create a new report in BIRT that includes an SQL query that you provide. When the report is generated, data is extracted over a database connection. The topics below describe this approach and assume a working knowledge of SQL.
  • Using a direct software connection: You can also use a direct software connection (or, in BIRT terminology, a scripted data source) to extract data. In this approach, BIRT interacts with the business logic layer in Mifos' Java code. Java knowledge is required. For more information, see Creating A BIRT Report Using A Scripted DataSource.

For a technical overview on how BIRT interacts with Mifos, see Current Reports Architecture.

Extracting Data Using SQL

To create a custom report that uses SQL to extract data, use the procedure below. For help with steps you perform in BIRT, see the following in the BIRT RCP Designer online help: BIRT Report Developer Guide > Field Guide to BIRT > Learning the Basics > Tutorial 1: Building a Simple Listing Report.

  1. Open a new report in BIRT RCP Designer.
  2. Create a data source in BIRT, using the following values in the New Data Source wizard:
  • Data Source Name: Mifos Data Source
  • Driver Class: com.mysql.jdbc.Driver (what to do if this driver isn't listed)
  • Database URL: jdbc:mysql://localhost:3306/mifos (if you're creating reports locally)
  • User Name: root
  • Password: the default is mysql
  • JNDI URL: leave blank
  1. In the Query tool of your choice, write the SQL query. See SQL Query Tips for more information.
  2. In BIRT, create a data set. In the Query window, paste in the query you wrote in step 3.
  3. Create one or more input parameters in BIRT. See About Input Parameters below for more information.

If com.mysql.jdbc.Driver isn't listed

If com.mysql.jdbc.Driver isn't listed, download it from http://dev.mysql.com/downloads/connector/j/5.0.html and place the file mysql-connector-java-5.1.5.bin.jar in ...\mifos\build\src_pkg\WEB-INF\platform\plugins\ where ... is the path to your Mifos working copy. For example, on Windows: C:\subversion\projects\mifos-trunk\mifos\build\src_pkg\WEB-INF\platform\plugins, on Mac OS X or GNU/Linux: /home/user/svn/mifos-trunk/mifos/build/src_pkg/WEB-INF/platform/plugins/.

SQL Query Tips

As you write your query, keep the following in mind:

  • Look at the Mifos database: Using the sample report you designed in Excel and an application like MySQL Query Browser, view the tables and their columns in the Mifos database to determine what you need. The automatically generated Mifos schema diagrams are another resource. Pick the database link that corresponds to your Mifos database version. To determine your Mifos database version, run the following command on your Mifos database: select * from database_version
  • Sequence is important: Put your SQL query fields in the same order in which you want them to appear in your report.
  • Hash sign not recognized: BIRT does not recognize the hash sign (#). To include comments, use the following characters: /* comment */
  • Finish your query: Make sure your query is final before you paste it into the data set you'll create in step 4.

About Input Parameters

An input parameter is a value entered by the user. A series of input parameters, called cascading parameters, can dynamically filter, or constrain, the next option's possible values. The Collection Sheet Report uses cascading paramters.

For steps on how to create input parameters (or in BIRT terminology, data-set parameters) see the following section in the BIRT RCP Designer online help: BIRT Report Developer Guide > Field Guide to BIRT > Enabling the User to Filter Data.

Creating a Receipt Template (Administrative Documents)

The Administrative Documents feature in Mifos allows you to generate a receipt for an account -- without having to use the Reports tab. You can also use this feature to generate other administrative documents specific to an account, such as vouchers and passbooks.

To create a receipt template:

  1. In BIRT, open a new template. You do not need to specify a data source -- the Mifos database will be automatically used.
  2. Use the following parameters, in the following order:
  • userId
  • account_id
  • reportName
  1. In Mifos, upload the template using the Upload new Admin document link on the Admin tab. A receipt link will automatically appear on client loan account pages. Note the template must be a BIRT report design document which has an extension of '.rptdesign'.

When you click an account's receipt link, the system automatically passes in the account ID of the loan account and generates a receipt, based on the BIRT template design you uploaded.

Localizing your Report

To add labels in another language:

  1. With your report loaded in BIRT RCP Designer, click the Layout tab.
  2. Select your report by clicking white space or a margin in your report.
  3. In the Property Editor window on the bottom, select Resources.
  4. Add resources using the following naming convention: [file name]_[language]_[country].properties. For example: EndaTransactionReport_fr_FR.properties and EndaTransactionReport_en_US.properties

Tips for populating the properties file(s):

  • Take the raw column names, such as customer_name, government_id, etc., and add them to the .properties file(s). You can get them from the output columns in the data set or from the xml in the XML Source tab.
  • If you've already re-named the column headers with user-friendly names, you can type them into the .properties file.
  • Column header text must exactly match the text in the .properties file.
  • To run the report in BIRT RCP Designer in a specific locale, on the Windows menu of BIRT RCP Designer click Preferences > Report Design > Preview > Choose your locale. Note that the file name suffix must correspond to the locale. See Java locale naming conventions.

Uploading and Editing your Report

To upload and view your report:

  1. On the Admin tab in Mifos, click Upload report templates under Manage Reports.
  2. Provide the report name, choose the Reports tab category under which you want your report to appear, then click Preview > Submit.
  3. To view the report, click your report's name on the Reports tab, select and/or enter the parameters, then click Generate.

To edit your report:

  1. On the Admin tab, click the View report templates under Manage Reports.
  2. Click Edit.

Controlling Access to Reports

Mifos allows you to control two things related to report security:

  • What Mifos users can do with reports (download, edit, delete, etc.).
  • Which report data users can see.

You handle the first by associating report-related actions with specific user roles. You handle the second by incorporating one or more parameters in your report that are based on organizational hierarchy.

Associating Report Actions with a Role

To manage the permissions related to a report:

  1. Ensure that you are logged in as admin.
  2. On the Admin tab, click Manage roles and permissions under Manage Organization.
  3. Choose a role or create a new one.
  4. Select or clear the report permissions you want associated with that role.
  5. Click Submit.

Hierarchy and Data Scoping

If a report has parameters based on organizational hierarchy, a user's access to that report is affected by her position in the organization's hierarchy. For example, if a user is assigned to the Head Office, which is the top of the hierarchy, she can see all report data. If a user is assigned to Branch A, she can only see data for Branch A. If a user is a loan officer, she can only see data for her clients.

Troubleshooting

A Common BIRT Error

The following error indicates that you are using a BIRT extension of Eclipse, instead of the BIRT RCP:

		ERROR [STDERR] Caused by: Error.DesignFileException.INVALID_XML - 1 errors found!
1.)  (line = 0, tag = null)
org.eclipse.birt.report.model.parser.DesignParserException
(code =  Error.DesignParserException.UNSUPPORTED_VERSION, message : The report
file of version "3.2.14" is not supported.)

To resolve this error, install the BIRT RCP.

Known Issues

  • The names of the branch, LoanOfficer, and loan product parameter that Mifos gets from the database are in alphabetical order, but in the BIRT parameter list, it has no order. This is due to a bug in BIRT that has been fixed in the latest BIRT 2.1.3 build.
  • According to the business logic, the best choice for the "loan number" column in report 1 is globalAccountNum. loan account id, another logical choice, is a sequential number in the database, each loan account id corresponds to one account. loan account id means nothing outside the Mifos database; !globalAccountNum does.
  • The method, "!getTotalPrincipleAmountInArrears" does not consider lateness, it only returns the principal that is overdue.
  • The default value of Branch parameter is "BSK", but the default value of LoanOfficer parameter is null.
  • LoanOfficer and LoanProduct should display "All".

 

 

last modified 2010-06-13 22:38

0
Your rating: None

Pentaho Reports in Mifos

With Mifos 2.0.x and above, Mifos supports reports in Pentaho.

Management Reports

Operational Reports

Management Reports

MFI Progress

This report shows a comparison of 2 months specified by the user of the MFI's metrics, arrears, loan balances, etc.  This report can be run down to the branch office level as well.  This report is useful in providing information on progress at the MFI - for example, if they are expanding their outreach at a certain pace, or if their PAR has increased or decreased.  This report can also help the MFI see if certain branch offices are doing better or worse than others.

PDF Sample - MFI Progress Report (.pdf)

Loan Officer Detailed

This report allows the MFI to see detailed metrics per Loan Officer, such as the branch offices they have been at, the number of centers they manage, and arrears and loan portfolio information.  This report should be used to assess a LO's performance, and also see key statistics about their management.

PDF Sample - Loan Officer Detailed Report (.pdf)

Client Exit

This report lists all clients that have been changed to a Closed status in Mifos for a particular branch office or group level, their closed status, reason, notes, and # of loans they had.

PDF Sample: Client Exit (.pdf)

PPI Data Dump

This report is an export in CSV format that lists all clients with PPI data, details about client, and their PPI scores and likelihoods relevant for their country.

.CSV Sample - PPI Data Dump (.csv)

Operational Reports

 

Loan Officer Performance Summary (cumulative)

This report allows the MFI to compare Loan Officers by certain measures such as arrears amounts, PAR, etc.  This report helps the MFI assess Loan Officer's performance.  Data shown in this report is cumulative as of end date of report.

PDF Sample - Loan Officer Performance Summary (cumulative) (.pdf)

Loan Officer Performance Summary (during period)

This report allows the MFI to compare Loan Officers by certain measures such as arrears amounts, PAR, etc.  This report helps the MFI assess Loan Officer's performance.  Data shown in this report is for during the period stated.

PDF Sample - Loan Officer Performance Summary (during period) (.pdf)

Balance Outstanding

This report shows outstanding balances of loans or savings accounts based on filters selected, such as office, loan officer, product, and account status, as of a certain date.  It is also possible to group the accounts by group, LO, or branch office, and get totals for each.

PDF Sample: Balance Outstanding (.pdf)

Savings Accounts

Field Definition
Account ID Short Mifos ID of Account
Client Name Name of Client the Account belongs to
Balance Amount Balance of Savings Account as of the date the report was run
Saving Status Account Status
Date of Opening Date the Account became Active
Gender Gender of Client the Account belongs to
Group Name Name of Group the Client belongs to
Loan Officer Loan Officer as of date

Loan Accounts

Field Definition
Account ID Short Mifos ID of Account
Client Name Name of Client the Account belongs to
Loan Amount Amount of Loan Disbursed
Balance Amount Outstanding Balance of Loan Account as of the date the report was run
Loan Status Account Status
Disbursal Date Date the Account became Active
Gender Gender of Client the Account belongs to
Group Name Name of Group the Client belongs to
Loan Officer Loan Officer as of date
Source of Funds Source of Funds for Loan Account

 

Balance Outstanding by Source of Funds

This report shows balance outstanding and other figures per source of funds in Mifos.  This report helps the MFI give figures to their Funders on loans sourced by that fund.

PDF Sample: Balance Outstanding by Source of Funds (.pdf)

Branch Expected Cash Flow

This report shows expected in and out cash flow for branch per day for the period specified.  This report includes Principal, Interest, Loan Fees, and any Client, Group, or Center Fees (under Client Fees).  This report does not include savings.

PDF Sample: Branch Expected Cash Flow (.pdf)

Center Collection Sheet

This collection sheet is optimized for centers, and for MFIs that collect only at meetings. MFIs from India would typically use this collection sheet.

PDF Sample: Center Collection Sheet (.pdf)

Group Collection Sheet (MPESA)

This collection sheet report is optimized for groups and also for MFI's that may collect between meetings, through a system like MPESA (mobile payments) where payments are imported into Mifos before the meeting occurs.  Collected columns are populated with prepayments for loans. This report would typically be used in regions like Kenya where the center model is not used. 

PDF Sample - Group Collection Sheet (MPESA) (.pdf) 

 

Due vs Collected by Branch

This report shows what was due and collected for loan repayments for one or more branches.  This report should be run frequently to verify amounts that were collected.  This report can also help the MFI determine if collections were under or over what was expected for the branch.

PDF Sample: Due vs. Collected by Branch (.pdf)

Field Definition
Principal Due Principal due for that branch's loan repayments on the repayment date specified - does not take into account prepayments or arrears
Interest Due Interest due for that branch's loan repayments on the repayment date specified - does not take into account prepayments or arrears
Principal Arrears Due Principal that was overdue for that branch's loan repayments on the repayment date specified
Interest Arrears Due Interest that was overdue for that branch's loan repayments on the repayment date specified
Principal Collected Principal that was paid (both due and overdue) for that branch's loan repayments on the repayment date specified
Interest Collected Interest that was paid (both due and overdue) for that branch's loan repayments on the repayment date specified

Due vs Collected by Center

This is the same report as Due vs Collected by Branch, except it can be filtered further by Center.  This report helps to see what a specific center collected versus what was due.

PDF Sample: Due vs. Collected by Center (.pdf)

Due vs Collected by Loan Officer

This is the same report as Due vs Collected by Branch, except it can be filtered by Loan Officer.  This report helps to see what a specific Loan Officer collected versus what was due.

PDF Sample - Due vs. Collected by Loan Officer (.pdf)

Funds Movement

This report shows loan accounts by source of funds, and information about each of them such as Loan Disbursal Dates, # of Installments, etc.  This report can help the MFI see details of loan accounts for a specific source of funds.  This report can be run to drill down into any problem loan accounts associated with a source of fund.

PDF Sample - Funds Movement (.pdf)

Loan Classification by Product

This report displays metrics by loan product.  This report helps to differentiate each product the MFI offers, and helps the MFI assess if any changes should be made to their loan products based on the metrics.

PDF Sample - Loan Classification by Product Report (.pdf)

Filter Description
Date Range Period to run report for
Office Head Office down to Branch Office selected
Field Definition
Product Name Name of Loan Product
# of Loans Disbursed (During Period) Number of Loans disbursed during date period specified
Amount Disbursed (During Period) Amount of Loans disbursed during date period specified
# of Loans Disbursed (Cumulative) Number of Loans disbursed cumulative by end of period for that loan product
Amount Disbursed (Cumulative) Amount of Loans disbursed cumulative by end of period for that loan product
Amount Outstanding (End of Period) Principal Outstanding at end of period for that loan product
Arrears (End of Period) Principal in Arrears at end of period for that loan product
PAR (End of Period) Portfolio at Risk at end of period for that loan product
# of Active Loans (End of Period) Number of Active Loans (Active in Good or Bad Standing Status) at end of period for that loan product
% of Portfolio Amount (End of Period) Principal outstanding at end of period for this loan product divided by total principal outstanding * 100

Loans Pending Approval

This report shows all loans that are in pending approval status for a particular period, and also by loan officer and loan product.

PDF Sample - Loans Pending Approval (.pdf)

Loans To Be Disbursed

This report shows all loans that have been approved, but not yet disbursed, for a particular period, and also by loan officer and loan product.

Loans To Be Disbursed (.pdf)

Mifos Transactions - Detailed

This report can be run at the end of day to display all transactions made in Mifos that day.  This report shows each detailed transaction.  This report is useful for reconciliation with accounting.

PDF Sample - Mifos Transactions - Detailed Report (.pdf)

Mifos Transactions - Summary

This report is similar to the Mifos Transactions - Detailed report, except it groups transactions by Receipt ID, and shows totals for each group of transactions by Receipt ID.  This report is useful if reconciliation at the MFI is by Receipt ID.

PDF  Sample - Mifos Transactions - Summary (.pdf)

 

0
Your rating: None

Question Groups and PPI

Questions and Question Groups

Question Groups provide a means for collecting information about a user or a group that can then be used, for example, when assessing loan applications, poverty levels, and for measuring impact and creating exit and collateral surveys.  MFIs create a common set of  questions. Users can then choose from these questions when defining new question groups. Question Groups can be attached to entities or workflows.  The same question group can be attached multiple times to the same entity to track historical changes over time.  Question Groups replace both Additional Field and Survey functionality in Mifos 1.6.x and lower.

Questions

Question Group questions are defined from the Define questions link on the Admin tab, or during creation of a Question Group. They are defined at the Head Office level.

For each question, the user specifies the question title, the question, the question type and the possible answers, as described in the following table.

Table 1: Attributes for Question Definition
S No. Attribute Name Data Type Range Description
1. Question Text (x) x characters Question (as it will appear in the surveys) will be added here. Number of characters for the question can be max x characters.
  1.  
Answer Type and Answers   See 3a - 3f  
3a. Single Select   Number of options; Text fields = number of options If there are less than 7 options, answers will have radio buttons.  If there are more, then the answers will be available in a dropdown.
3b. Number   Minimum Value allowed; Maximum Value allowed Specifies the range of allowable answers that a question can have.
3c. Date None None  
3d. Multi Select Number of options; Text fields = number of options Infinite number of options  
3e. Free Text   Number of characters (1-4000 characters)  
3f. Smart Select   Max 5 tags allowed, each 50 characters max.  
  1.  
State   Active;Inactive Questions can be marked as inactive. Inactive questions will not be visible in the Questions list displayed when creating a question group; however they will still be displayed in the Questions list.

The user enters the possible answer choices one at a time. After each entry, he clicks Add, and the answer is added to the choice list. Once the answer choices are defined, he clicks Add Question, and the question is displayed as a preview. When the user has finished adding questions, he clicks Submit. The questions are added to the question bank and are available for use in question groups. The user is returned to the Admin tab.

Add question

Questions can be added from either Add Question in Admin, or during creation of a Question Group.

  • More than one question can be added at a time.
  • While adding a new question, a user can enter a question title and can set the corresponding answer type.
  • Answer types can be free text, date, number, single select, multi select, smart select.  See below for more details on each.
  • Preview of added questions is visible on the same page upon clicking “Add Question”.
  • The preview of the question contains the following: question title, answer type, choices and the remove link.
  • Answer choices can be added for single select / multi select / smart select answer types
  • Each answer choice added can be removed
  • On submitting the question, the user is taken to the Mifos Admin page.
  • Adding a question without specifying the question title gives an error message in red on the top of the page asking the user to specify the question title.
  • The user is prompted with a validation message if any of the following mandatory fields are not filled before submission: Title, Applies To.
  • In the case of single select / multi select / smart select, if the user tries to add a question without entering more than one choice of answer, the user is prompted by a validation message.

Answer type: Free text

Any type of text can be entered as part of response for this type of question including special characters.

Answer type: Number

  • Maximum and minimum values of the number can be entered
  • A default value cannot be set.

Answer type: Multi Select / Single Select

This answer type should be used for questions where you want the user to choose one choice or multiple choices for answers.

  • Any number of answer choices can be added.
  • The answer choices added do not have to be unique
  • Each choice can be removed by using the associated remove link before adding the question
  • Tagging is not available for this answer type.  See Smart Select Answer type for this.
  • Once a question has been added to the preview, clicking the remove button for this question will remove the question along with all its answer choices.

Answer type: Smart Select

This answer type can be used for questions where you might have categories, and you may want the user to have see answer choices and their tags when entering in answers.  For example, you may want to ask a client what their business activity is, and have categories of business activity.  Answer choices could be entered as Cow Purchase, Pig Purchase, etc.  A tag can be added to these answer choices as "Animal Husbandry".  Then, when the Loan Officer is entering the answer for this client's business activity, they can enter Animal Husbandry to see the detailed choices.

  • Any number of answer choices can be added
  • Maximum 5 tags can be added per answer choice to give responder an idea of what all the answer choice incorporates
  • Tags can be of max 50 characters
  • A tag can be removed by clicking the cross beside it
  • There is a remove link for each answer choice. Clicking on this removes the choice along with its tags.
  • Both answer choices and the associated tags get stored as responses.
  • Tags cannot contain special characters (Including white space), only alphanumeric characters allowed
  • Tags are not arranged in alphabetical order
  • User cannot view the tags associated with an answer choice on the Add Question screen, once a question has been added to preview.

View Question

  • List of all questions can be seen
  • The question title, answer type, the answer choices and the associated tags for each answer choice (if applicable) can be viewed.
  • Questions can be edited by clicking the Edit link.
  • No other information except the question title can be seen on the View Questions screen.
  • Once a question has been created, it can never be deleted. It can only be set as inactive.

Edit Question

  • Only one question can be edited at a time.
  • Only the Title and status can be edited.
  • The status of the question could be set to active or inactive by clicking on the corresponding radio buttons.
  • A note is displayed on the Edit Question page at all points of time which says : Significant modification of questions could affect reporting
  • By default, the status of the question is set to active
  • Answer type of the question is not editable
  • While editing a question for single select/ multi select / smart select / smart select
    • Additional answer choices can be added
    • Only newly added answer choices can be removed
    • Existing answer choices are visible but cannot be edited or removed
  • For smart select, tags can be added to existing as well as new choices.  Tags can be removed for existing answer choices as well
  • Both minimum and maximum values are editable for questions with numeric answer types.
  • On submitting the changes, user returns to the view question details page and the changes are reflected on that page.
  • The user is prompted with a validation message if mandatory fields are not filled before submitting.
  • On cancelling the changes, user returns to the view question details page and none of the changes made are saved

Question Groups

A new question group is defined by clicking the Define new question group link on the Admin tab. The user names the question group, specifies where the question group applies to, and adds questions to the question group.

The fields are defined in the following attributes table.

S No. Attribute Name Range Description
1 Question Group Title 50 in the UI, 200 in the database Duplicate QG names will be allowed
2 Applies To Create Client; View Client; Close Client; Create Group; View Group; Create Office; Create Personnel; Create Center; View Center; Create Savings; View Savings; Create Loan; View Loan; Disburse Loan; Approve Loan. Specifies where the survey is applied.  Can be applied to more than one entitiy or workflow.
3 Apply to all Loan Products? Y/N If the QG applies to Create Loan, check this box to have this QG applied to all existing loan products.
4 Is response editable? Y/N If this is checked, the responses to this QG can be edited by a user with the right permissions.  Old responses will still be saved, but only the latest answer will be displayed.  This pertains to the Create workflows.
5 Section Heading 50 in the UI, 200 in the database This is used to group questions into sections.  Each section will have its own heading.  This defaults to Misc.
6 Add Questions to the QG   Questions can be created on the fly or added from Question Bank.  Questions are added to the bottom.  Questions can be reordered in the QG.
7 State Active;Inactive Question Groups are active by default when created.  They can be marked as inactive when being edited.  If it is marked inactive, then the QG will not be displayed in the entities or workflows it appiles to.

Questions can be added to the QG from the Question Bank or creating new questions on the fly.  The user can select multiple questions from the Question Bank to be added to the survey.  The question name and the question itself are then displayed in the bottom portion of the screen.  The user can also add a new question while creating the QG.  The new question will be automatically added to the Question Bank.  If a question has already been selected for the Question Group, it cannot be added again.  The user can mark each question as mandatory.  By default, each question added is mandatory. He can click Remove to remove the question from the survey.  Questions can be reordered by clicking the arrows in the Order column.  Whole sections can also be reordered by clicking the arrows.

Add question Group

 

  • Question Group Title, Applies to and Select Questions are mandatory fields.
  • The admin can choose to make the response editable by checking in the ‘Is response editable’ option.  If this is checked, and the response to the question group is edited, the old answer choices are overwritten in the UI.  Historical data entered is still saved, but it is expected that reports may take the latest answers entered.
  • A question group can be created for any of the following workflows
    • Create Client; View Client; Close Client; Create Group; View Group; Create Office; Create Personnel; Create Center; View Center; Create Savings; View Savings; Create Loan; View Loan; Disburse Loan; Approve Loan
    • For the "Create" workflows, the Question Group is displayed during creation of that entity.  For the "View" workflows, the QG can be attached to that entity.
    • If "Create Loan" workflow is selected, you can choose to have the QG automatically apply to all Loan Products. If this is not checked, then the user must go edit each loan product individually for the QG to apply to that loan product.
  • There can be more than one section within a group.
  • More than one question can be selected from the list of questions at one time.
  • User can add any number of questions to the sections.
  • The questions added to the section can be marked mandatory.
  • If the user removes a particular section, all the questions within that section will also be removed.
  • Removing all the questions within a section removes the section itself.
  • The question list can be from the content typed in the text box corresponding to ‘Select Questions’, or new questions can be created on the fly.  See Add Question for more details.
  • Simply adding the questions without mentioning the section title puts the questions within the default section Misc.
  • If a question has already been added to some section, that question is no more a part of the list of questions in the drop-down available.
  • A section should have at least one question within it.
  • Question group title and the section title can both contain special characters (including spaces).
  • When the user selects a question to be added to a particular section containing at least one question , but do not click ‘Add Questions’ and instead clicks submit, the user is taken to the admin page and the question does not get added.
  • Two sections cannot have the same questions within them.

 

View Question Group

 

  • View Question Groups lists all question groups created with the workflow it is applied to.  Because a Question Group can be applied to multiple workflows, a QG may be listed multiple times.
  • A new question group can also be defined from the view question group page.
  • On the particular question group page, I can view the following information :
    • The workflows it belongs to
    • Is the response editable
    • Questions within the question group, if the question is mandatory, and the status of the question (active or inactive).
    • Status of the question : whether the question is active or inactive
  • Once a question group has been created, it cannot be deleted. It can only be set as inactive or it may be hidden if all the questions within that question group are inactive
  • On the particular question group page, for questions within that question group, tags cannot be seen if the chosen answer type for the questions is smart select.

 

 

Edit Question Group

 

  • Question group title can be edited
  • Additional sections can be added to the question group
  • Both new and existing questions can be added
  • Only one question can be edited at a time.
  • The status of the question group could be set to active or inactive by clicking on the corresponding radio buttons.
  • By default, the status of question group is set to active
  • On submitting the changes, the user is navigated to the view question group details page and the changes made to the question group are reflected on that page.
  • On cancelling the changes, user returns to the view question group details page and none of the changes made are saved
  • The ‘is response editable’ field can be checked or unchecked depending on whether the user wants the question group responses to be editable or not.
  • Each question within a question group can be set mandatory or otherwise. By default, the mandatory option is unchecked.
  • If a user leaves the section heading field blank and adds questions, these questions will be added to Misc section
  • The list of existing questions limits itself to the text typed in the attached textbox.
  • The section heading textbox populates itself with the last typed section heading. By default, the section heading is set to Misc.
  • The workflows the QG applies to can be edited as well. If a QG is removed from a workflow, the answers saved remain the DB, but the QG no longer appears as available in the workflow.
  • Section headings cannot be edited
  • Within a question group, a question cannot be a part of more than one section.

 

 

Associating question groups to "Create" workflows

 

  • A question group is created for this flow by selecting the ‘applies to’ field as ‘create' xxx depending on which entity.
  • When question group is created belonging to ‘create ’ flow, the sections and questions within it can be viewed on the second page of the workflow questions during that entity's creation. The user is expected to respond to the questions on this page. The user will not be allowed to proceed to the next page if the questions have been marked mandatory in the question group definition.
  • The question group name is not visible on the capture response page. The section headings and the associated questions are only visible.
  • The sections and questions belonging to that question group are also visible on the ‘Review and submit’ page during client creation. The responses to the questions are also visible here.
  • ‘Edit additional information’ button on the ‘Review and submit’ page lets the user edit the response to the questions belonging to the question group.
  • The questions and the associated responses can be viewed by clicking on ‘View Additional Information’ link on client details page.
  • The responses can be edited if ‘is response editable’ field has been set to yes in the question group definition. The responses edited and saved are versioned.
  • For "Create Loan" workflow in particular, the loan product have this QG applied for it to be available.

 

Associating question groups to "View" workflows

 

  • A question group is created for this flow by selecting the ‘applies to’ field as "view" xxx depending on which entity.
  • Users can be made to respond to these question groups by clicking on ‘attach a survey’ on the right hand corner of entity details page.
  • A question group can be selected for responding from ‘select survey’ which contains the list of all question groups associated with this workflow.
  • After selecting a question group and clicking ‘continue’, the user is navigated to the capture response page for the selected question group.
  • The question groups responded to and the date of response can be seen under the ‘Surveys’ label on the entity details page.
  • The responses can be edited if ‘is response editable’ field has been set to yes in the question group definition. The responses edited and saved are versioned.
  • Clicking on the edit link on the ‘view and edit questionnaire’ page lets the user edit the responses to the questions within the question group.
  • The edited version is appended to the list of responded surveys along with the date of modification.
  • The previous (non-edited) version of the responded question group also remains as part of the list.

 

 

Associating question group to Approve loan workflow

 

  • A question group is created for this flow by selecting the ‘applies to’ field as ‘Approve Loan’
  • When question group is created belonging to ‘approve loan’ flow, the sections and questions within it can be viewed on the capture response page for loan approval. The user is expected to respond to the questions on this page. The user will not be allowed to proceed to the next page if the questions have been marked mandatory in the question group definition.
  • The question group name is not visible on the capture response page for loan approval. The section headings and the associated questions are only visible.
  • The responses are not editable (even if the ‘is response editable’ field is checked in the question group definition)

Viewing responses to Disburse Loan, Create Loan workflows

  • Currently, QG's can be applied to these workflows, but the responses cannot be viewed in the UI.  They are saved and available in the DB.  Issue MIFOS-4241.

Activate question groups

 

Mifos 2.0 allows MFIs the feasibility of creating question groups using XMLs. As soon as the XMLs are saved in the folder in the format. The $MIFOS_CONF/uploads/questionGroups and $MIFOS_CONF points to the users’ Mifos configuration directory. The files are named as "PPISurvey<QuestionGroup_NAME>.xml" where [QuestionGroup_NAME] should be replaced with the question group name that the user wishes to activate.  See Past Releases - PPI Surveys on location of these XMLs.

Data Migration

As a result of this feature being implemented in Mifos 2.0, existing additional fields and surveys are automatically migrated during the upgrade to 2.0.  Please see Important Information regarding this before you upgrade.


 

PPI

Introduction

The Progress out of Poverty Index Survey is a country-specific survey that is used to determine the likelihood of a client belonging to a specific poverty level. An MFI uses this information on a portfolio level to calculate overall poverty rates. At the client level, the information is used to determine which products to offer a client or to track loan repayments/retention/recruitment rates of clients falling into each of the poverty buckets.  See Progress Out of Poverty website for more information.

The surveys for each country include 10 questions. For each question, points are associated with each possible answer. The total number of points for a completed survey is called the poverty index score. For each country, a poverty likelihood chart is defined that maps the poverty index score to a percentage indicating percentage likelihoods of poverty for the client.

PPI in Mifos

PPI's are available in the Question Group format in Mifos.  See Past Releases - PPI Surveys for information on location of these files and how to copy the relevant PPI QG for their MFI into the appropriate folder.  In Mifos, under Activate Question Groups, the Administrator can choose to activate the PPI Survey for their country.

Once activated, the PPI QG is automatically created in Mifos, set as active, and applied to the Create Client workflow.  The Mifos Administrator can navigate to View Question Groups to view the PPI QG and edit the workflows it applies to.  Questions can be reordered but should NOT be edited.  If they are edited, the PPI Scoring Tool will not work.

PPI's can be entered like other QG's.  Mifos BI 1.0 includes a PPI Scoring and Likelihood Tool that scores the PPI's entered into Mifos, and provides a PPI Data Export that lists clients and their PPI data.

See PPI Functional Spec for more information on PPI in Mifos.

0
Your rating: None

System Processing

Financial calculations, batch jobs, and logs.

0
Your rating: None

Interest Calculations for Loan Accounts

Mifos supports the following types of interest calculation; flat interest rate, declining balance, declining balance interest with equal principal installments, and declining balance with interest recalculation. Flat and declining balance types both result in Equal Monthly Installments (EMI). Declining balance interest with equal principal installments allow MFIs to calculate interest using equal principal installments, and simple declining balance formula to calculate the interest.

P = principal amount (initial amount)

r = annual rate of interest (as a decimal) Assumption: Number of decimals used for calculation will be the same as that specified by HO.

A = amount of money accumulated including interest

n = number of times the interest is compounded per years

Periodic intervals: daily, monthly, quarterly, semiannually, or annually (This can be number of days and number of weeks too.)

EMI Definition: EMI (Equated Monthly Installment) is the amount payable to the lending institution every month, till the loan is paid back in full. It consists of a portion of the interest as well as the principal.

Declining Balance Interest (EMI of Principal and Interest)

Declining Balance Definition: Interest is computed at periodic intervals on the amount of the original principal that has not yet been repaid. Since the borrower only pays interest on that amount of original principal that has not yet been repaid, interest paid is smaller every period. However, to make sure that the borrower sets EMI, the formula is:

EMI formula:

EMI = i*P / [1- (1+i)^-n]

Where,

P = Loan amount

r = Rate of interest per year

n = Term of the loan in periods

l = Length of a period (fraction of a year, i.e., 1/12 = 1 month, 14/360 = bi-weekly.)

i = Interest rate per period (r*l)

Examples:

P=1000, r = 5/100, l = 6/12 n = 2, i = 0.025

EMI = 0.025 * 1000 / [1-(1+0.025)^-2]

EMI = $518.83

The way to apply payments is as follows:

            Calculate interest in the principal due: If balance = $1000, and i = 0.025, interest is $25

            Calculate the amount to principal which is the monthly payment minus the interest due: $518.83 - $25 = $493.83

            Calculate the principal remaining, which is the previous principal remaining minus the amount applied to principal: $1000 - $493.83 = $506.17 (remaining balance)

            Once next payment is received, repeat steps 1 to 3.

Note: Due to rounding of computed values, it could potentially be off by a maximum of N number of pennies after the full term of the loan. It will never be short if we round up, rather, principal could end up with a few more pennies. 

Declining Balance Interest – Interest in Periodic Payments; Principal at the End (or Earlier)

Declining Balance Definition: Interest is computed at periodic intervals on the amount of original principal that have not yet been repaid. Since the borrower only pays interest on that amount of original principal that has not yet been repaid, interest paid is smaller every period.

For this interest type, the client only needs to pay per period the interest and the complete principal at the end of the loan cycle. Thus, per period the client pays the same interest amount, unless he or she pays part of the principal ahead. If so, the future periodic payments are less the interest amount.

Note:

            Early payments of principal/interest will not be handled in version 1.0.

            If loan is disbursed in between two meetings, interest installments are not EMIs.

Formula:

For one period interest calculation: interest = P * (r/n)

Where,

P = loan amount- Use the Principal Remaining (which at one point is equal to the initial amount).

r = rate of interest (annual/100)

n = term of the loan

Examples:

P=1000, r = 3% monthly, n = 4

Interest = 1000 *(3/100) = 30

Monthly payments of 30

If client pays 300 of principal, then next payment will be of:

Interest = 700 *(3/100) = 21

Flat Interest

Definition: Flat interest refers to charging interest on the full original loan amount, rather than on the declining balance. For example, with group based loans, a common "interest rate" is "3% per month, flat, for four months". This means that a $100 principal amount lent is multiplied by 3%, and then by 4 months to come up with $12 in interest. Thus, $112 would be repaid over four months in equal installments.

This is the most common calculation used in Grameen Style MFIs (most MFIs). Also there is no incentive for repaying early, since customer still has to pay the total interest as was calculated at the start of the loan.

The use of "flat" interest rates is usually explained as facilitating understanding by poorly educated and illiterate clients. "Flat" interest is easier to calculate than “declining balance” interest. However, "flat" interest also disguises the "effective" interest rate (APR, or internal rate of return) to the loan. Based on how often the principal is collected (weekly, monthly or at the end of the term), and assuming there are no additional fees, the above loan has an APR of between 39% and 71%.

Formula:  Interest = P * r/100 * n

P = loan amount- Initial amount

r = rate of interest

n = term of the loan

Examples:

P=100, r = 3/100 per month, n = 4

Interest = 100 *(3/100) * 4 = 12

Monthly payments of 112 / 4 = 28

Note: The above formula holds for loans disbursed in between two meetings also.

Declining balance interest calculation with equal principal installment

This feature allows MFIs to calculate interest using equal principal installments, and simple declining balance formula to calculate the interest. This means that the borrower pays equal installments of principal for the duration of the loan, and the interest is calculated on principal that has not been paid for the loan period.

Formula Interest = (P-Pp) * r * n

Where,

P = loan amount

Pp= Principal paid

r = rate of interest

n = term of loan

The following example illustrates this:

Principal = 15,000

Int. Rate = 25 %

No of payments = 25

Payment schedule (Every 2 weeks) = 14 days

Principal = 15,000/25 = 600

Payment Schedule

Installment

Principal

Interest

Total

1

600

(15,000 – 0)*0.25*14/365 = 143.83

743.83

2

600

(15000-600)*.25*14/365 = 140

740

3

600

(15,000 – 1200)*.25*14/365 = 132.32

732.32

Repeat

 

 

 

 

The following additional logic is needed in the Loan Repayment and Interest Calculation:

  1. Calculate the Principal per Installment
    • PPI = Total Principal/ No of Payments
  2. Interest Per Period = (P-Pp) * r * n Where, P = loan amount Pp= Principal paid r = rate of interest n = term of loan

Declining balance calculation with interest recalculation

This takes the Declining Balance interest rate type,  but interest charged is updated based on early or late payments.  See Declining Balance - Interest Recalculation FS for more information.

0
Your rating: None

Interest Calculations for Savings Accounts

Introduction

Interest is calculated on savings accounts in Mifos based on options set when creating the savings product.  The administrator can set frequency of interest calculation and posting on each savings product to configure how often interest is posted to a savings account.  The start date for interest calculation and posting, and the reference for the time period, is the start of the fiscal year. Interest is posted on the last day of the time period (as per Frequency for interest posting to accounts).

Definitions

  • Active account = Account where status is active
  • Time period of interest calculation = period of time over which the interest is being calculated.  For example, if time period for interest calculation is 1 day, interest is being calculated per day for the account.  If time period for interest calculation is 1 month, the interest is being calculated at the end of every month.
  • Frequency of interest posting = when the interest is actually posted to the account (and can be seen in the UI).  For example, if frequency of interest posting is 1 month (and time period for interest calculation is per day), even though the interest is calculated daily in Mifos, the interest is not actually posted to the account until the end of the month.
  • Fiscal year = 12 month period that we are using to determine interest calculation and interest posting.  Currently these periods are calculated from the beginning of the fiscal year.
    • In Mifos, Fiscal Year is hard coded.  First day is January 1st and and last day is December 31st.  (won't fix to be able to configure fiscal year by user)
  • Deposit = money added to an account
  • Withdrawal = money deducted from an account
  • When referring to deposits and withdrawals, it is from the whole day's worth when talking in relation to calculations.
    • For example, if you deposit $10 and withdraw $20 on the same day, in calculations, it is considered a $10 withdrawal that day.

Formula

For one period interest calculation: A = P(1+r/n)

Where:

P = principal amount (initial amount)

r = annual rate of interest (as a decimal)

A = amount of money accumulated including interest

n = number of times the interest is compounded per year

Periodic intervals: can be set by number of days or months.

Average Balance:

The average balance is the average of all the daily balances for that interest calculation period.

A=P(1+(r/n))

A=1200(1+(.08/4))

Requirements and Calculations

General Interest Calculation and Posting Requirements

TBD

Interest Calculation and Interest Posting

See Savings Interest Calculation and Posting for more information.

Rounding and Precision

  • Configuration Options DigitsafterDecimal  and CurrencyRoundingMode  are used to set the precision of values in Mifos DB and UI .
    • Each interest calculation period, Mifos rounds to precision set in Configuration Settings and store this value in DB, and subsequently display in UI when interest is posted.  Extra precision is not  saved.  DB and UI values match.
    • Caveats - In cases of extremely small balances or low interest rates, this could amount to 0 interest earned depending on precision set in DigitsAfterDecimal .
    • Examples
CurrencyRoundingMode DigitsAfterDecimal Annual Interest Rate Minimum Balance
HALF_UP 1 <= 1% <= 60
  2 <= 1% <= 5
CEILING 1    
  2    
FLOOR 1    
  2    

0
Your rating: None

Batch Jobs

Overview

Batch jobs are a series of back-end jobs on a computer that are executed through predefined scripts.  Mifos is configured to run a set of batch jobs nightly at 12 am. The server must be kept on at night for these processes to run.

Mifos users will be automatically logged out when batch jobs run, and no logins are permitted until the batch jobs complete.

Please see Managing Batch Jobs for information on how to configure and monitor these nightly jobs.

Batch Jobs

Product Status

ProductStatus

This job updates the status of the product to active on the start date and to inactive on end date. For more explanation of start/end dates of products, see Product Definitions.

Savings

SavingsIntPostingTask

Calculates interest and posts interest to savings accounts.

GenerateMeetingsForCustomerAndSavingsTask

Generates the next year meeting schedule for savings accounts at the end of current year. Note that this same job also handles client accounts. See Meeting Schedule Change below for additional notes

Loans

LoanArrearsandPortfolioatRiskTask

Updates a loan account to status of In arrears (“Active in bad standing”) if a payment is late and if the acceptable lateness (specified in configuration settings) has been exceeded.  Also calculates the portfolio at risk value for all loan accounts.

LoanArrearsAgingTask

Calculates how many days in arrears loan accounts are in.

Client accounts

ApplyCustomerFeeChangesTask

Updates existing accounts with changes in fee status or amount.

For example, suppose all clients must pay a monthly membership fee or 10Rs. When clients are created, this membership fee is attached to their account. If the MFI later decides to change the membership fee to 15 Rs, the MFI can make this change directly on the fee definition page and choose to apply the change to all exisiting accounts. This batch job then updates the membership fee amount across all current accounts.

GenerateMeetingsForCustomerAndSavingsTask

Generates the next year meeting schedule for client accounts at the end of current year. Note that the same batch job also handles savings accounts.  See Meeting Schedule Change below for additional notes.

Holidays

ApplyHolidayChangesTask

This job updates any holiday changes to loan and savings schedules in Mifos.

0
Your rating: None

Change Logs and Application Logs

Introduction

Mifos produces change logs, which capture and store information on all the activities performed on data. It also produces application logs, which consist of error messages, warnings, and actions performed by the users of the system.

Change Logs

For each installation of Mifos, the change log captures the creation and modification of data in the system. Specifically, Mifos captures the following activities, which are preconfigured in the system and cannot be modified:

  • System username of the person who made the change or created the record
  • Date of record change
  • Field that was changed
  • Original data value
  • Modified data value

Change logs are captured for the following entities:

  • Clients
  • Groups
  • Centers
  • Loan Accounts
  • Savings Accounts
  • Personnel
  • Loan Product details
  • Savings Product details

In addition to other data, the change log captures changes for the following:

  • Status changes for clients, groups, centers, loan accounts, and savings accounts
  • Loan officer changes for clients, groups, and centers

Additional data changes will be recorded in the change log, but there is no guarantee that any change, other than the status and loan officer changes listed above, will be captured in the change log.

Activities for which the change log captures data changes are pre-configured in Mifos.  New activities cannot be brought under the scope of the change log.

 

Change log for a particular entity are visible from the section where details of the entity are created or modified. The change log can be accessed from the View change log link at the bottom of each page. The data is in a flat list format organized by date.

Out of Scope

  • Ability to select changes to “reverse-out”
  • Facility to configure which data changes need to be logged
  • Export and print of the change log entries
  • Financial transactions in the change log
  • Archival of change logs

 

Application Logs

The application log helps developers and IT personnel ensure the proper functioning of Mifos by providing a log of debug or error messages, warnings, and actions by the users. It is stored on the server and is not available through the Mifos user interface.

A severity or importance level is assigned to all entries in the application log. The entries can be sorted by the severity levels, thereby enabling users to focus on issues of interest. System administrators are able to turn off and on certain types of logging by setting a configuration value.

Application logging is enabled at the module level, and hence there are different loggers per module. This is done so that various modules can have different levels of logging. The stabilized modules log only 'ERROR' or 'FATAL' levels. while the modules under development would be at 'DEBUG' level. Modules that are released and are relatively, but not completely, stabilized are logged at 'INFO' level.

Developers can use application logging to identify where a particular error has occurred as well as test proper functioning.

Out of Scope

  • Functionality to define new instance for the creation of application logs
  • Option to configure features to be logged
  • Analysis and reporting on the log information stored in the database or files
  • Export or print the logs
  • UI for viewing the application logs
 
last modified 2009-01-23 10:46
0
Your rating: None

Rounding rules for loan payment schedules

When a loan is created, the schedule of repayments is computed to 13 decimal places of precision, then rounded to the precision specified by the settings described below. Finally, the last payment is adjusted to account for roundoff errors. This page describes the precise manner in which MifOS rounds and adjusts these loan payments.

Rounding configuration options

Three types of application-wide settings affect how a loan repayment schedule is rounded and adjusted: currency precision, rounding precision, and rounding mode. (See "Currency and Rounding Rules" for a general discussion of currency and rounding.)

Currency precision
Specifies the number of digits after the decimal place that are carried by the application's currency. Set by the configuration option AccountingRules.DigitsAfterDecimal
Rounding precision
Specifies the degree of rounding, to the closest decimal place. Example: 1 (closest Rupee), 0.5 (closest half-dollar, for example), 0.1 (closest US dime), 0.01 (closest US penny) 0.001, etc. Precision is limited by the currency being used by the application. For example, US dollars limit the precision to two decimal places (closest penny).

Rounding precision is set by two configuration options:

Initial rounding precision
The total of all repayments, as well as the total of each scheduled repayment but the last, is rounded using this precision. Set by configuration option AccountingRules.InitialRoundOffMultiple. Allowable values are 1, 0.5, 0.1, 0.01, and 0.001.
Final rounding precision
The total of the last scheduled repayment is rounded using this precision. Set by configuration option AccountingRules.FinalRoundOffMultiple. Allowable values are the same as those for initial rounding.
        Rounding mode

Specifies the method of rounding. MifOS supports three rounding modes: HALF_UP, FLOOR, and CEILING. The mode is set by three configuration options, one for each rounding context:

AccountingRules.CurrencyRoundingMode
AccountingRules.InitialRoundingMode
AccountingRules.FinalRoundingMode
 
 
 
 

How to Choose Rounding Settings

(*Section Under Development*)

The Currency Rounding mode is set for all of Mifos; as mentioned above the settings determines the number of decimal places after the decimal point will be displayed throughout the application.  Mifos administrators usually set this to be the actual level of precision of the currency.  The settings MFIs use are very dependent on what makes sense for collecting payments in the country and area in which they are working.

 
The following scenarios walk through how two MFIs chose their rounding settings.
 
Example 1
An Indian MFI wants their interest and other amounts within Mifos to display as precisely as possible.  In Rupees the smallest amount of currency is a paise, which is 1/100 of a rupee.  So this MFI set

AccountingRules.DigitsAfterDecimal= 2
 
For group meetings this MFI doesn't want to collect small coins, only whole Rupees.  Requiring clients to bring paises makes it harder to collect money at meetings and it is simpler to have clients bring money in whole rupees.  Since the loan calculations won't always lead to amounts in whole rupees, they want to round up the initial payments so the client's final payment can be smaller. So this MFI set
 
AccountingRules.InitialRoundingMode=CEILING
       AccountingRules.InitialRoundOffMultiple=1 
 

        For the final payment the MFI also does not want the client to bring small coins.  The
        MFI wants any rounding to benefit the client, so the final amount is rounded down.

       AccountingRules.FinalRoundOffMultiple=1
AccountingRules.FinalRoundingMode=FLOOR
 
Example 2
A Tunisian MFI also wants their interest and other amounts within Mifos to display as precisely as possible.  For Dinar (the Tunisian currency) the smallest amount of currency is a milim, which is 1/1000 of a dinar.  So this MFI set

AccountingRules.DigitsAfterDecimal= 3
 
For group meetings this MFI only wants to collect amounts to the nearest 1/2 dinar.  Requiring clients to bring precise change is not worth it, but the 1/2 dinar is commonly used.  Since the loan calculations won't always lead to amounts to the nearest 1/2 dinar and they want to collect money as close as possible to the exact amount according to the loan schedule, the MFI uses HALF_UP rounding. So this MFI set
 

AccountingRules.InitialRoundingMode=HALF_UP
       AccountingRules.InitialRoundOffMultiple= .5
 
        For the final payment the MFI wants the money collected as precisely as possible. 
 
       AccountingRules.FinalRoundOffMultiple=.001
AccountingRules.FinalRoundingMode=CEILING
 
 
If you would like any help deciding on your MFI's settings please email the functional list and the community can help with suggestions.

Rounding and adjusting the loan repayment schedule

Overview

A loan's repayment schedule is computed, or re-computed, when

  • the loan is first created,
  • a fee or penalty is added or removed, or
  • the loan is redone.

The computation is exact, normally keeping up to 13 decimal places of precision. In most scenarios, the payment amounts need to be rounded off before becoming final. Rounding is done automatically by MifOS before the repayment schedule is displayed or printed.

Note: for release 1.1, the ability to add or remove a charge after one or more payments are applied is disabled unless the amount of the charge is already rounded (and thus MifOS will not re-round the installments). The feature will be enabled once business rules are established for how rounding should be applied in the case that past or future payments have already been applied.

 

MifOS rounds each part (principal, interest, fees, penalties, interest) of an installment separately, and rounds the total payment as well. This often results not only in small overpayment or underpayment of parts of the installment, but also in a difference between the rounded total installment payment and the sum of its parts. MifOS corrects for this by adjusting parts to add up to the whole installment, according to the rules described below.

Finally, after installments are rounded and adjusted, it is possible that neither the total paid across all installments nor the total principal actually paid will add up to the amounts originally computed. MifOS corrects for this by adjusting the amounts in the final installment.

The details of how MifOS carries out this rounding and adjusting is described in the steps below.

Let's illustrate the steps with a sample loan. Assume these application settings:

Currency precision: 3 decimal places
Currency rounding mode: HALF_UP
Initial rounding mode: HALF_UP
Initial rounding precision: 1 (round to whole currency unit)
Final rounding mode: HALF_UP
Final rounding precision: 1 (round to whole currency unit)
Days in fiscal year: 365

The terms of the loan are:

Loan amount: 120
Interest rate: 25%
Number of installments: 6
Payment frequency: weekly
Loan Type: Equal payments, declining interest

In addition, the loan includes a periodic fee of 4% applied to principal + interest, and the first installment includes a miscellaneous fee of 5.

Step 1: Calculate exact payment schedule and totals

MifOS creates the repayment schedule based on accounting rules and the terms of the loan.

Installment Num. Total Principal Interest Loan Fee Misc. Fee
1 30.2178231440342 19.7616116826613 0.5753424657534 4.8808689956195 5.0000000000000
2 25.2178231440342 19.8563591359343 0.4805950124804 4.8808689956195 0.0000000000000
3 25.2178231440342 19.9515608578189 0.3853932905958 4.8808689956195 0.0000000000000
4 25.2178231440342 20.0472190263153 0.2897351220994 4.8808689956195 0.0000000000000
5 25.2178231440342 20.1433358298661 0.1936183185486 4.8808689956195 0.0000000000000
6 25.2178231440342 20.2399134674066 0.0970406810081 4.8808689956195 0.0000000000000
Totals 156.3069388642050 120.0000000000000 2.0217248904856 29.2852139737172 5.0000000000000

Step 2: Round and adjust total payments

MifOS first computes the rounded and adjusted totals for the loan. It

  • rounds the loan's exact total payments (sum of exact principal, exact interest, exact fees and penalties) using final rounding.
  • rounds total fees using currency rounding. Note that the principal, as well as miscellaneous fees and penalties need not be rounded, since they are entered using precision of the prevailing currency.
  • rounds total interest due using currency rounding.
  • adjusts the total interest so that rounded fees, principal, and adjusted interest sum to the rounded total payments.

These are the amounts that the customer will actually pay during the life of the loan.

Because total interest is adjusted, the amount of interest that the borrower pays may differ from the total (currency-rounded) interest due. In order to balance accounts, that difference goes into the 999 account .

Initial-rounded total payments: 156.000
Principal (already rounded): 120.000
Currency-rounded loan fee: 29.285
Currency-rounded misc. fee: 5.000
Currency-rounded interest: 2.022
Adjusted interest: 1.715 (total payments - principal - fees)

The customer will pay 0.307 less interest than actually due, which is accounted for in the 999 account.

Step 3: Round and adjust each installment's payments.

What happens depends on whether or not the installment is the last one, and whether any grace period applies.

3a. Non-grace-period installments except the last:

  • Round the installment's exact total payment using initial rounding. This is what the customer will pay over the life of the loan.
  • Round the installment's exact interest using currency rounding.
  • Round each of the installment's fees using currency rounding.
  • Adjust the installment's principal to make up the difference between the installment's rounded total payment and its rounded interest and fee payments.
  • After rounding and adjusting, the installment's (rounded) total payment is exactly the sum of (rounded) principal, interest and fees.

The first 5 payments are rounded and adjusted as shown below.

Installment Num. Total Principal Interest Loan Fee Misc. Fee
1 30.000 19.544 0.575 4.881 5.000
2 25.000 19.638 0.481 4.881 0.000
3 25.000 19.734 0.385 4.881 0.000
4 25.000 19.829 0.290 4.881 0.000
5 25.000 19.925 0.194 4.881 0.000

3b. The last installment:

Compare the loan totals computed in step 2 with running totals of all but the last installment, and adjust the last installment's parts so that the running totals of all installments sum to loan totals.

The last installment is adjusted as follows:

Total payment = 156 - (25 + 25 + 25 + 25 + 25)
  = 26
Principal = 120 - (19.544 + 19.638 + 19.734 + 19.829 + 19.925)
  = 21.330
Loan Fee = 29.285 - (4.881 + 4.881 + 4.881 + 4.881)
  = 4.880
Interest = 26 - (0.575 + 0.481 + 0.385 + 0.290 + 0.194)
  = -0.210

3c. Principal-only grace-period installments

The principal is always zero, and only interest and fees are paid. As above, the installment's interest amount absorbs any rounding discrepancies:

  • Round the installment's total payments as above.
  • Round the installment's fee payment as above.
  • Adjust the interest to force interest and fee payments to add up to the installment's total payment.

3d. Principal + interest grace-period installments

Calculations are the same as if there were no grace, since the zero-payment installments are not included in the installment list at all.

Negative payments

Under some scenarios, rounding can result in the last installment becoming negative -- see this known issue. At this time, the only resolution available is to adjust the terms of the loan.

 

last modified 2009-01-20 15:37

0
Your rating: None

Miscellaneous

0
Your rating: None

Loan Arrears Aging

Aging in Arrears Feature

Background
Almost all MFIs need a report which gives a status of loan accounts in arrears. This feature maintains a summary table that captures arrears data so that it can be easily accessed by the reporting module.

Feature summary
Below are the requirements for this table:

  • Per Client, per group, per center, per branch, following information is required:
  • Number of loans and amount of unpaid balance of loans (total unpaid balance, and broken down by unpaid principal and unpaid interest) in arrears by following timeframe:
    • 1 - 7 days overdue (1 week)
    • 8 - 14 days overdue (2 weeks)
    • 15- 21 days overdue (3 weeks)
    • 22 - 28 days overdue (4 weeks)
    • 19 - 35 days overdue (5 weeks)
    • 1- 30 days overdue
    • 31- 60 days overdue
    • 61 - 90 days
    • 91 - 180 days
    • Greater than 181 days
  • Standard practice is to have only 1-30 days; 31 - 60 days, etc. However, for MFIs with weekly repayment rates, a weekly breakdown for the first month is important. This doesn't fully match GK's current report, but it should be sufficient for their needs.
  • For each of the buckets identified, report is required know number of clients that have at least 1 loan in arrears for that period of time i.e., number of clients with loans 1-7 days in arrears, etc.

Feature description

  • To meet the above requirement and enable MFIs to pull out the arrears report, the following summary table is maintained by the Mifos system:
    • Client/group name, client/group ID
    • Parent ID
    • Branch ID
    • Loan account ID
    • No. of days in arrears
    • Unpaid principal
    • Unpaid interest
    • Unpaid balance (= unpaid principal + unpaid interest)
    • Overdue principal
    • Overdue interest
    • Overdue balance (=Overdue principal + Overdue Interest)
  • This table is updated every night.
  • Days in arrears is the same as the metric used in “Performance history” for loan accounts and is = payment due date (for the first unpaid/partially paid installment) – current date
  • When a client misses a payment, the counter for “days in arrears” starts.
  • This counter is reset to 0 when a client makes a payment that completely pays off his/her overdue amount.
  • The count is not altered if a client makes a partial payment.
  • When an adjustment is made and the last payment is nullified in an account, this count is recalculated by the system
  • This job does not consider loan accounts in the following states
    • Cancelled
    • Closed- obligation met
    • Closed- reschedule
    • Closed- written off
0
Your rating: None