16.11.2013 Views

Declining Balance Feature.pdf - Java

Declining Balance Feature.pdf - Java

Declining Balance Feature.pdf - Java

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Code Bounty Offered for:<br />

<strong>Declining</strong> balance interest for loans<br />

Terms of the bounty can be found at http://wiki.java.net/bin/view/<strong>Java</strong>tools/CodeBounties<br />

Background: MFIs typically use two ways of calculating interest for their loans. One is<br />

called “flat interest” (also referred to as “simple interest) in which the interest is<br />

calculated as a “flat amount” based on the principal disbursed and the duration of the loan<br />

repayment. For example, 10% flat interest annually on a 100dollar loan repaid over a<br />

year would be 10 dollars. This amount is typically distributed equally across all<br />

payments, although some MFIs ask the clients pay the interest “up-front”. This way of<br />

calculating interest is not common in the US. Some MFIs also calculate interest based on<br />

the declining balance model which is typical in the US. In this approach, interest is<br />

calculated based on the amount of principal that has not yet been repaid. Because the<br />

amount of unpaid principal (theoretically) declines with each payment in the amortization<br />

schedule, the amount of interest due for each payment also declines. In the example<br />

above, if the interest was 10% declining balance and loan repayments were made<br />

monthly—the amount of interest paid by the customer would be less than 10dollars.<br />

<strong>Feature</strong> summary: This feature would allow MFIs to create loan repayment schedules<br />

with equal installments and interest based on the declining balance formula.<br />

User Flow:<br />

• User clicks on “Create a new loan product” from Admin screen<br />

• User fills out all details for the loan product. Under the “Interest rate” bolded<br />

header, in the field “interest rate type”, the option “declining balance” appears.<br />

User selects this option. User previews and saves the new loan product.<br />

• User then clicks “Create loan account” and selects an individual or group as the<br />

owner of the loan.<br />

• On “Create loan account – Enter loan account information”, user selects the loan<br />

product type that was defined in the steps above (ie, the one with declining<br />

balance). User fills out the required data needed to create a loan account, and<br />

clicks “continue”<br />

• On “Create loan account – Review Installments” page, user is shown a repayment<br />

schedule calculated based on EMI and declining balance interest rates.<br />

• Formula for calculating repayment schedule is the following:<br />

EMI formula:<br />

EMI = i*P / [1- (1+i)^-n]<br />

Where,<br />

P = Loan amount<br />

r = Rate of interest per year<br />

n = Term of the loan in periods<br />

I= loan duration (fraction of a year)<br />

i = Interest rate per period (r*l)<br />

Emily Tucker, 30 June 2006 - 1 -


Examples:<br />

P=1000, r = 5/100, l = 6/12 n = 2, i = 0.025<br />

EMI = 0.025 * 1000 / [1-(1+0.025)^-2]<br />

EMI = $518.83<br />

The way to apply payments is as follows:<br />

• Loan duration calculation- loan duration should be calculated in<br />

years as per the below given rules:<br />

o If Number of interest days in a year =360<br />

number of days in a month will be 30 for all months,<br />

number of days in a week = 7<br />

o If Number of interest days in a year = 365<br />

number of days in a month will be 30/31 (actual number of<br />

days in a month will be taken)<br />

o Example:<br />

number of interest days in a year = 360,<br />

if interest rate = 3 % p.a.<br />

frequency of installments = every week<br />

number of installments = 20<br />

Then loan duration = 20*7/360 = 140/360 = 0.38 years<br />

• Calculate interest on the principal due: If outstanding balance =<br />

$1000, and i = 0.025, interest is $25<br />

• Calculate the amount to principal which is the monthly payment<br />

minus the interest due: $518.83 - $25 = $493.83<br />

• Calculate the principal remaining, which is the previous principal<br />

remaining minus the amount applied to principal: $1000 - $493.83<br />

= $506.17 (remaining balance)<br />

• Repeat steps 1 – 3 for the remaining installments.<br />

• Repayment schedule should follow rounding rules and decimal precision rules<br />

as defined, and already implemented, in the system.<br />

• Repayment schedule is saved in the system and appropriate values for this<br />

repayment schedule are displayed on the “Repayment schedule” page and<br />

loan account details page.<br />

• If a user misses a payment, repayment schedule does not change. That is,<br />

loan is amortized in advance and interest is due regardless of early<br />

repayment.<br />

Alternate Flow 1:<br />

• User creates a new loan product with declining balance interest.<br />

• User checks the “interest deducted at disbursement”<br />

• System throws an error message that reads: You cannot deduct interest at<br />

disbursement for declining balance loans. Please unselect this option or change<br />

the interest calculation method to flat interest.”<br />

Alternate Flow 2:<br />

Emily Tucker, 30 June 2006 - 2 -


• User creates a new loan product with declining balance interest.<br />

• User selects “principal due on last installment” and saves loan product type.<br />

• User clicks to create a loan account with this product definition, types in relevant<br />

details, and generates repayment schedule.<br />

• Repayment schedule is calculated assuming no principal is paid throughout the<br />

loan cycle. Each payment includes interest charge but no principal. The last<br />

payment includes interest + principal payment.<br />

Alternate Flow 3:<br />

• User creates a new loan product with declining balance interest.<br />

• User selects Grace period type “Grace on all payments”, grace period as N<br />

installments, and saves loan product type.<br />

• User clicks to create a loan account with this product definition, types in relevant<br />

details, and generates repayment schedule.<br />

• Repayment schedule is calculated with the first loan repayment coming N + 1<br />

installments after disbursement date. Interest is not accumulated for this period.<br />

In other words, grace is given on both principal and interest. Start date for loan<br />

repayment schedule is essentially “pushed out”.<br />

Alternate Flow 4:<br />

• User creates a new loan product with declining balance interest.<br />

• User selects Grace period type “Principal only grace”, grace period as N<br />

installments, and saves loan product type.<br />

• User clicks to create a loan account with this product definition, types in relevant<br />

details, and generates repayment schedule.<br />

• To calculate loan duration, grace period should also be included in “total<br />

installments”.<br />

• Repayment schedule is calculated with the first N installments being interest-only<br />

payments—this amount calculated based on the assumption that no principal has<br />

been paid off. After the “principal only grace” ends, and repayment schedule<br />

includes both interest and principal payments amounts calculated per the EMI rule<br />

above.<br />

Other information:<br />

• No permissions are needed for this feature<br />

• This feature has no impact on the “change logs”<br />

Emily Tucker, 30 June 2006 - 3 -


Terms of Participation<br />

http://wiki.java.net/bin/view/<strong>Java</strong>tools/TermsParticipation<br />

Terms of the Agreement between you, the Volunteer, and GFUSA: You affirm to<br />

Grameen Foundation USA (GFUSA) in connection with your participation in the<br />

GFUSA-sponsored process of MIFOS development (the Project):<br />

• You will only contribute to the Project intellectual property that you are free to<br />

contribute and that belongs solely to you.<br />

• If you use the equipment or resources of your employer in connection with your<br />

work on the Project or you do work on the Project during you're the period that<br />

your employer considers to be working hours or you have an agreement or<br />

company policy that limits your participation in the outside projects, you have<br />

obtained permission from your employer to participate in the Project.<br />

• Your participation in the Project will not violate any laws of any applicable<br />

jurisdiction, including any United States Export laws. You are not a citizen of any<br />

nation to which export of (or access to) technology is prohibited under United<br />

States Export Laws and you are not a person listed in any United States law as<br />

prohibited from access to technology.<br />

• All code, including your contributions to the Project will be released under the<br />

Apache 2.0 open source license.<br />

• Information about or from the Project's beta customers is confidential and you<br />

will not disclose that information to third parties or use it for any purpose other<br />

than to make contributions to the Project.<br />

• You understand each of these matters and have had an opportunity to ask<br />

questions of GFUSA to get all clarifications required by you.<br />

Emily Tucker, 30 June 2006 - 4 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!