[ 
https://issues.apache.org/jira/browse/FINERACT-2174?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Adam Saghy updated FINERACT-2174:
---------------------------------
    Description: 
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.
 * *Important to notice on the disbursement date the customer is not ought to 
pay any daily interest, the recognition happens on the end of day and payable 
only the next day!*

*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.

  was:
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.


> 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.11
>
>
> 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.
>  * *Important to notice on the disbursement date the customer is not ought to 
> pay any daily interest, the recognition happens on the end of day and payable 
> only the next day!*
> *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)

Reply via email to