[
https://issues.apache.org/jira/browse/FINERACT-2359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Adam Saghy resolved FINERACT-2359.
----------------------------------
Fix Version/s: 1.13.0
Resolution: Fixed
> Wrong Days in Year configuration used for calculating interest
> --------------------------------------------------------------
>
> Key: FINERACT-2359
> URL: https://issues.apache.org/jira/browse/FINERACT-2359
> Project: Apache Fineract
> Issue Type: Bug
> Reporter: Arnold Galovics
> Assignee: Ruphine Kengne
> Priority: Major
> Fix For: 1.13.0
>
>
> *Repro steps:*
> * Create a Loan Product with days in year config of 360
> * Create a Loan with the product for 100 000 USD with 1% interest with
> WHOLE_TERM option and 60 days repayment period and 60 days term
> * Approve, disburse the loan
>
> *Expected result*
> Interest for the single period loan is 1000 USD
>
> *Actual result*
> Interest for the single period loan is 1013.89 USD
>
> *Note*
> Loan product is cumulative. The reason this happens is because the interest
> calculation basis days in year is hardcoded here:
> [https://github.com/apache/fineract/blob/d06eb618d075b7fee99c2c156f7688246ad7e280/fineract-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/loanschedule/domain/AprCalculator.java#L27]
>
> {code:java}
> case DAYS:
> defaultAnnualNominalInterestRate =
> interestRatePerPeriod.multiply(BigDecimal.valueOf(365));
>
> case WHOLE_TERM:
> final BigDecimal ratePerPeriod =
> interestRatePerPeriod.divide(BigDecimal.valueOf(numberOfRepayments *
> repaymentEvery), 8,
> MoneyHelper.getRoundingMode()); switch
> (repaymentPeriodFrequencyType) {
> case DAYS:
> defaultAnnualNominalInterestRate =
> ratePerPeriod.multiply(BigDecimal.valueOf(365));{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)