Currency-Denominated Loan Products

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