[
https://issues.apache.org/jira/browse/FINERACT-2174?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Adam Saghy resolved FINERACT-2174.
----------------------------------
Resolution: Fixed
> Progressive Loan - Introduce `interestRecognitionFromDisbursementDate` to
> control when interest recognition should start
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: FINERACT-2174
> URL: https://issues.apache.org/jira/browse/FINERACT-2174
> Project: Apache Fineract
> Issue Type: Sub-task
> Reporter: Adam Saghy
> Priority: Minor
> Fix For: 1.12
>
>
> As part of this story we would like to focus on:
> * In case the interestRecognitionOnDisbursementDate field is configured on
> during the loan creation:
> *
> ** if {*}TRUE{*}, Fineract should do interest recognition on Day 0
> (disbursement date) EOD (end of day).
> *
> ** if it is *not provided* or {*}FALSE{*}, Fineract should do interest
> recognition on Day 1 (disbursement date+1) EOD (end of day). ({*}legacy,
> default behaviour{*})
>
> *Fineract behaviour*
> * In Fineract the repayment period boundaries and calculation was following
> the below rules:
> ** From date excluded (except the 1st period) as part of the period
> ** Due date included as part of the period
> ** Example:
> *** Period #1
> **** From date 1 January
> **** Due date 1 February (part of #1 period)
> *** Period #2
> **** From date 1 February (excluded, not part of #2 period)
> **** Due date 1 March
> * The same rules applied to the calculation of daily interest
> ** By default FIneract was calculating and recognizing the interest on the 1
> day of the repayment period (which is disbursement date + 1)
> * However based on configuration, we can instruct Fineract to start the
> interest recognition on the end of day disbursement date, which effectively
> recognize the 1st day of repayment period (disbursement date + 1) on the end
> of day of the disbursement date
> ** 1 day earlier, but only at end of day
> *What advantages coming from this option?*
> * So far for progressive loans, Fineract was recognizing the interest only
> at end of day. It means when the day started the customer already ought to
> pay the daily interest, but the recognition only happened with end of day
> job, in a deferred manner.
> * With the new flag, we can instruct Fineract to calculate the daily
> interest ahead of 1 day, so this way, we dont need to mess with the repayment
> period and interest boundaries and do any unnecessary changes to calculate
> and recognize the interest "early".
> ** Example:
> *** Loan was disbursed on 1 January
> *** Daily interest is 0.20
> *** At the time of end of day of 1 January, we calculate the interest for
> 2nd January (which is the 1st day of the repayment period and the 1st day
> where the customer ought to pay interest) but with the date of transaction
> date 1 January (as part of COB, it is still 1 January):
> **** Accrual on 1 January with amount of 0.20
> * This strategy would allow us to avoid to implement any extensive
> conditions and increase the complexity of the interest calculation and
> interest recognition is not deferred any more, instead recognized ahead of 1
> day, but as the very last action.
> *Validation*
> * Only supported for progressive loan schedule type!
> * Can be updated if the loan got created but not yet approved / disbursed!
> *Requires 3 steps:*
> * Introduce the new field
> * Enhance the "Apply periodic accrual business step"
> ** Based on the flag we might calculate the interest ahead of 1 day
> * Enhance the days in year of rate factor calculation in EMICalculator
> ** Example: Period start from 20 Dec 2024 and ends on 20 January 2025, in
> 2024 there are 366 days, while in 2025 there are only 365
> ** We need to amend the logic which calculates how many days to be
> considered as year #1 and year #2
> *** If we recognize the interest a day ahead, we need to make sure the rate
> factor which is the foundation of interest calculation is also recognize the
> from date as well as part of the number of days in a year calculation which
> is crucial in case the actual year was leap year or the upcoming year would
> be leap year.
> ** *Example:*
> *** If period from date is 18 December 2024 and due date is 18 January 2024
> **** If we recognize the interest a day ahead the number of days for 2024 is
> 14 (including 18 dec and 31 dec) and number of days in 2025 is 17.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)