Adam Saghy created FINERACT-2807:
------------------------------------
Summary: After re-age of interest bearing product realized and
unrealized income discrepancies were noticed
Key: FINERACT-2807
URL: https://issues.apache.org/jira/browse/FINERACT-2807
Project: Apache Fineract
Issue Type: Bug
Affects Versions: 1.15.0
Reporter: Adam Saghy
Assignee: Adam Saghy
Fix For: 1.16.0
When a loan is re-aged, past-due principal/fee/interest is rolled forward into
the new future installment schedule. As part of this, an accrual adjustment
transaction is posted to reverse previously recognized interest income.
After re-age, daily accrual jobs resume to recognize interest going forward,
but the account snapshot field {{totalUnpaidPayableNotDueInterest}} is being
populated with the *total accrued interest balance* rather than the
{*}incremental daily recognized amount{*}. Due to this reconciliation logic
sums transaction activity and expects it to equal the balance delta, this
mismatch causes every re-aged loan to fail reconciliation from the day of
re-age onward.
*Re-age*
* Loan is disbursed and paid down normally for several cycles
* Loan re-ages on 7/14/26: past-due principal ($245.06) + accrued unpaid
interest ($18.37) roll into the new schedule (new installment 17.56 → 16.34
principal / 1.22 interest).
* Accrual adjustment transaction is posted to reverse previously recognized
income: {{-18.13}} on 7/14.
* From 7/15/26 onward, daily {{INTEREST_ACCRUAL}} transactions post for
{{{}0.04{}}}/day, but {{totalUnpaidPayableNotDueInterest}} on the account
snapshot stays flat at {{18.37}} and does not increment. Result: BTE check
fails by {{-0.04}} every day going forward, compounding indefinitely.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)