Hi all, We are observing that Mifos doesn't respect the fiscal month in calculating interest for savings.
For instance: we configured the fiscal year to start in April. The saving product is annual interest with 15% and 365 days. Compounding is set to annual with daily balance. If we make a saving deposit of $1000 on June 23, 2016 and trying to post on April 1 2017, our expectation is that the interest will be $115.89 (1000*282*0.0004109589). There are a total of 282 days with daily interest rate of 0.0004109589 (1/365*0.15). In Mifos, we are getting $118.81 instead. What we learned is that there is a compounding happening on Dec 31, 2016 even though it's not a fiscal year end. >From June 23 to Dec 31, there are 192 days and it's getting a new available >balance on Jan 1. It's compounding from Jan 1, 2017. [cid:[email protected]] When digging through the code, even though Fiscal month is passed around in the interest calculation, it wasn't used when determining compounding periods. File: PostingPeriod.java Method: determineInterestPeriodEndDateFrom case ANNUAL: periodEndDate = periodStartDate.monthOfYear().withMaximumValue(); //This is causing to default the compound period to Dec as period start year is 2016. periodEndDate = periodEndDate.dayOfMonth().withMaximumValue(); We are still trying to go through the logic and we'd greatly appreciate your help. Thank you. [cid:[email protected]] [cid:[email protected]]
