Adam Saghy created FINERACT-2659:
------------------------------------

             Summary: Adjust Schedule with a CBR results in improper/dropped 
allocations on account and non interest recalculated enabled products
                 Key: FINERACT-2659
                 URL: https://issues.apache.org/jira/browse/FINERACT-2659
             Project: Apache Fineract
          Issue Type: Bug
            Reporter: Adam Saghy
            Assignee: Adam Saghy


It seems that there is a bug within the Fineract code for products that are not 
set with the variable to allow interest recalculation (so mostly non interest 
bearing products). It seems that when an adjust schedule is made at any point 
during the accounts lifecycle and the account has a CBR and then somehow a 
reverse replay happens due to a repayment reversal or a reprocess (anything 
that forces the schedule to be updated/calculated) and then this puts the CBR 
into an overpaid/overcredited amount - the entire schedule needs to be 
recreated but during this recreation the amount of credit is dropped from the 
calculation and is then missed on the recreation of the schedule so the account 
is in this state where the balance/internally fineract knows there is a 
discrepancy with the CBR and now has a balance of the CBR value, but the 
outstanding balance on the repayment schedule does not reflect this. 

 

*Steps to reproduce*
 # Create Disburse Account  (2025-08-29) *65.98*

 # Adjust the Schedule of the account to 2 months forward (2025-08-29)

 # MIR Occurs (2025-08-29) - Reversed and replayed on 2026-05-20
*20.99*

 # Repayment Occurs (2025-08-29) Reversed on 2025-09-10 *46.89*

 # Second MIR occurs
44.990000 - MIR - (2025-09-03)

 # 46.890000 - CBR - (2025-09-05)

 # First repayment from 4. is reversed on 2025-09-10

 # MIR and CBR are reverse replayed because of this.

 # The outstanding balance on the account in the repayment summary will now be 
0.00 but there is still a balance on the account because of the CBR overcredit.

It doesnt matter what order the adjust schedule occurs -and I dont even think 
an MIR is technically needed but I forgot to test without one. But as long as 
the account has an adjust schedule and a CBR that somehow ends up getting 
replayed and then causes the account to be in an overcredited scenario the 
account will be broken in this state.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to