release notes: https://cwiki.apache.org/confluence/display/FINERACT/1.12.1+-+Apache+Fineract
What's Changed
- FINERACT-2148: Accrual handling in case of Charged-off loan by @mariiaKraievska in #4350
- FINERACT-2179: Introduce Next/Last in future allocation rule for progressive loans by @somasorosdpc in #4354
- FINERACT-2200: Add "reversed" flag to LoanTransactionDataV1.avsc by @adamsaghy in #4415
- FINERACT-2148: Accrual handling in case of Charged-off loan and backdated transactions / reversals by @mariiaKraievska in #4392
- FINERACT-2169: Apply DTO instead String json in AdHocApiResource by @oleksma in #4391
- FINERACT-2181: Reduce duplication and use static access for constants by @a7med3del1973 in #4396
- FINERACT-2181: Simplify toString() method in Enum classes by @Harsh-Srivastav123 in #4397
- FINERACT-2181: Refactored LoanStatus.fromInt using switch expression enhancements by @Harsh-Srivastav123 in #4399
- FINERACT-2169: Taxes api refactor; by @VictorPavfurious in #4404
- FINERACT-2181: Improve DateFormat class code quality by @7ossam7atem1 in #4414
- FINERACT-2169: GL account api refactor; by @VictorPavfurious in #4416
- FINERACT-2169: Glclosure account api refactor; by @VictorPavfurious in #4418
- FINERACT-2181: Global configuration queries now return proper http codes by @Cocoa-Puffs in #4405
- FINERACT-2169: Financial activity account api refactor; by @VictorPavfurious in #4417
- FINERACT-2174: add tests for validation of interestRecognitionOnDisbursementDate setting application under certain conditions by @ruzeynalov in #4422
- FINERACT-2169: Provision category definition api refactor; by @VictorPavfurious in #4423
- FINERACT-2181: Liquibase migrations are stuck when multi-threaded migrations are enabled and one tenant migration fails by @galovics in #4426
- FINERACT-2181: Tag published docker images with hash as well when bui… by @galovics in #4429
- FINERACT-2189: Tenant ID is included in the log messages by @galovics in #4428
- FINERACT-2141: Delayed settlement implementation for fineract loan in… by @galovics in #4419
- FINERACT-2181: modified inject-comment sql validation pattern by @Cocoa-Puffs in #4421
- FINERACT-2181: Remove unnecessary long to int conversion by @adamsaghy in #4436
- FINERACT-2204: Fix accrual activity reversal logic: prevent duplicate reverse-replay, copy external ID correctly by @oleksii-novikov-onix in #4430
- FINERACT-2181: Refactor ResultsetColumnHeaderData using Lombok and modern java new features by @a7med3del1973 in #4307
- FINERACT-2169: Batches api refactor; by @VictorPavfurious in #4431
- FINERACT-2169: Apply DTO instead String json in RateApiResource by @oleksma in #4437
- FINERACT-2201: [Bug] - Negative numbers in case of progressive interest bearing loans - Reamortization by @somasorosdpc in #4427
- FINERACT-2211: Fix-Incorrect LoanSchedule after Full Refund with LAST_INSTALLMENT rule on 12m interest bearing Term loan by @adamsaghy in #4451
- FINERACT-2209: Add missing permissions by @marta-jankovics in #4450
- FINERACT-2212: Savings interest was sometimes posted to the wrong GL accounts by @galovics in #4455
- FINERACT-2208: Penalties are not recalculated after backdated transactions by @galovics in #4452
- FINERACT-2180: Trigger (internal) business event when new datatable entry was added by @alberto-art3ch in #4394
- FINERACT-2081: Fix repayment schedule for cumulative loans by @oleksii-novikov-onix in #4459
- FINERACT-2156: Confirm existance of elements before accessing them by @wkigenyi in #4202
- FINERACT-2197: Introduce a new type of ACTUAL during calculation of days in year by @somasorosdpc in #4411
- FINERACT-2181: removing the read_uncommited isolation by @budaidev in #4445
- FINERACT-2181: initial rounding-mode configuration by @Cocoa-Puffs in #4453
- FINERACT-1095: Remove last pieces of sqlSearch by @adamsaghy in #4461
- FINERACT-2169: Audits API recourse refactor and clean up; by @VictorPavfurious in #4388
- FINERACT-2169: Provision entries api refactor; by @VictorPavfurious in #4434
- FINERACT-2169: Account rules api refactor; by @VictorPavfurious in #4435
- FINERACT-2169: Business date api refactor; by @VictorPavfurious in #4438
- FINERACT-2080: Refactor Loan Transaction Checks and Related Methods by @Harsh-Srivastav123 in #4443
- FINERACT-2169: Apply DTO instead String json in NotesApiResource by @oleksma in #4448
- FINERACT-2169: Upgrade charge api to dto; by @VictorPavfurious in #4454
- FINERACT-2169: Apply dto in api and clean up unnecessary swagger; by @VictorPavfurious in #4458
- FINERACT-2169: Apply dto for payment type api and upgrade swagger doc; by @VictorPavfurious in #4462
- FINERACT-2181: Removed API Response annotations from ExternalAssetOwnerLoanProductAttributes API by @galovics in #4463
- Bump actions/setup-node from 4.2.0 to 4.3.0 by @dependabot[bot] in #4467
- FINERACT-2181: Rework "createMissingAccrualTransactionDuringChargeOffIfNeeded" to avoid flushing and triggering business event as part of Transaction processor by @mariiaKraievska in #4446
- FINERACT-2181: Update non-major by @IOhacker in #4466
- FINERACT-2181: Update non-major by @IOhacker in #4471
- FINERACT-2181: Upgrade Spring-boot version by @adamsaghy in #4477
- FINERACT-2181: No subResourceExternalId in fee waiver response after charge-off by @mariiaKraievska in #4408
- FINERACT-2169: Apply DTO instead String json in FundsApiResource by @oleksma in #4412
- FINERACT-2202: Bulk import fix by @carlossortega in #4442
- FINERACT-2181: Refactor UpdateTrialBalanceDetailsConfig injection instead of Autowired. by @a7med3del1973 in #4457
- FINERACT-2169: Apply dto for external event config api; by @VictorPavfurious in #4460
- FINERACT-2216: add github project metadata by @meonkeys in #4464
- FINERACT-2214: Remove pretty print parameter from api and serialization; by @VictorPavfurious in #4468
- FINERACT-2246: New command processing - Document Management (org.apache.fineract.infrastructure.documentmanagement) by @VictorPavfurious in #4472
- FINERACT-2169: Refactor image api resource; by @VictorPavfurious in #4473
- FINERACT-2181: CommandProcessingResult serialization optimisation by @adamsaghy in #4478
- FINERACT-2245: New command processing - Mix Taxonomy (org.apache.fineract.mix) by @oleksma in #4469
- FINERACT-2181: Split Datatable service by @oleksii-novikov-onix in #4480
- FINERACT-2181: Generating the right ChargeData class for ChargesApi by @galovics in #4476
- FINERACT-2203: LoanTransactionsApi add getLoanTransactions with transactionType filtering by @magyari-adam in #4432
- FINERACT-2181: improve-assertj-assertions by @7ossam7atem1 in #4456
- FINERACT-2169: Refactor currencies api resource; by @VictorPavfurious in #4481
- Bump actions/upload-artifact from 4.6.1 to 4.6.2 by @dependabot[bot] in #4488
- FINERACT-2080: use enums instead of integers in Loan, LoanProduct and LoanTransaction by @Cocoa-Puffs in #4475
- FINERACT-2169: Refactor loan account api controller; by @VictorPavfurious in #4484
- FINERACT-2169: Refactor job api controller; by @VictorPavfurious in #4485
- FINERACT-2181: Fix loan transactions filtering by type by @mariiaKraievska in #4493
- FINERACT-2221: Fix - Interest not counted towards totalUnpaidPayableNotDueInterest after partial repayment by @adamsaghy in #4494
- FINERACT-2219: capture v1.11.0 lessons learned in asciidoc and fineract release plugin by @meonkeys in #4470
- FINERACT-2197: Introduce a new type of ACTUAL during calculation of d… by @alberto-art3ch in #4492
- FINERACT-2181: Move transactions reprocessing logic out of the loan entity to ReprocessLoanTransactionsService by @mariiaKraievska in #4486
- FINERACT-2250: New command processing - Maker Checker (org.apache.fineract.commands) by @VictorPavfurious in #4490
- FINERACT-2169: Refactor loan COB catch up api controller; by @VictorPavfurious in #4497
- FINERACT-2181: allure report target directory changed by @peter-kovacs-dpc in #4489
- FINERACT-2181: Made Add Accrual Transactions job parallel on a loan-basis by @galovics in #4503
- FINERACT-2169: refactoring FloatingRatesApiResource - update swagger docs by @oleksma in #4465
- FINERACT-2248: New command processing - Search (org.apache.fineract.portfolio.search) by @oleksma in #4483
- FINEREACT-2181: Ignore null values in customData field by @adamsaghy in #4500
- Bump gradle/actions from 4.3.0 to 4.3.1 by @dependabot[bot] in #4505
- FINERACT-2181: Added threadlocal context reset during parallel accrual processing by @galovics in #4507
- FINERACT-2181: Downgrade postgres driver - performance issue with v42.7.5 by @adamsaghy in #4502
- FINERACT-2181: Fix for using the proper ChargeData object in LoanProduct APIs by @galovics in #4509
- FINERACT-2191: ThreadLocal context handling during job execution by @oleksii-novikov-onix in #4501
- FINERACT-2169: Refactor account transfer api controller; by @VictorPavfurious in #4504
- FINERACT-2181: Upgrade Spring dependencies by @adamsaghy in #4512
- FINERACT-2148: Cumulative Loan - accrual handling in case of charged-off loan by @mariiaKraievska in #4474
- FINERACT-2254: New command processing - Field Configuration (org.apache.fineract.portfolio.address) by @VictorPavfurious in #4508
- FINERACT-2207: fix jdbc connection string in liquibase script by @budaidev in #4498
- FINERACT-2181: Use correct loan status conversion for Loan status change history by @adamsaghy in #4517
- FINERACT-2251: New command processing - Delinquency Management (org.apache.fineract.portfolio.delinquency) by @oleksma in #4496
- FINERACT-2255: New command processing - External Assets Owner (org.apache.fineract.investor) by @VictorPavfurious in #4515
- FINERACT-2215: Exclude reversed transactions from hasMonetaryActivityAfter by @JebronLames32 in #4521
- FINERACT-2229: Fix incorrect repayment schedule in case of Merchant issued refund by @adamsaghy in #4520
- FINERACT-2227: Fix Triggered SMS Messages Error by @Pinchez25 in #4511
- FINERACT-2228: Fix incorrect current balance calculation and unintentional transaction reversals by @adamsaghy in #4519
- FINERACT-2252: New command processing - Collateral Management (org.apache.fineract.portfolio.collateral) by @oleksma in #4499
- FINERACT-2210: Incorrect accounting of reversed charge-off transaction. by @mariiaKraievska in #4506
- FINERACT-2302: New command processing - Collateral Management (org.apache.fineract.portfolio.collateralmanagement) by @oleksma in #4513
- FINERACT-2225: Save journal entries for accrual transaction created by charge adjustment by @oleksii-novikov-onix in #4516
- FINERACT-2301: New command processing - Client collateral management (org.apache.fineract.portfolio.collateralmanagement) by @oleksma in #4527
- FINERACT-2215: chargeoff fix by @budaidev in #4522
- FINERACT-2080: loan transient field separation by @budaidev in #4528
- FINERACT-2195: Fixes the Cast conversion from numeric that is causing in MariaDB issues while executing the SQL by @IOhacker in #4400
- FINERACT-2181: Update dependency jakarta.annotation:jakarta.annotation-api to v3 by @renovate-bot in #4525
- FINERACT-2300: New command processing - Loan collateral management (org.apache.fineract.portfolio.collateralmanagement) by @oleksma in #4532
- FINERACT-2190: Avoid recreation of loan repayment schedule periods by @alberto-art3ch in #4482
- FINERACT-2226: Progressive loan charge-off reverse replay events fix by @ruzeynalov in #4518
- FINERACT-2181: Add customData field to LoanChargeBusinessEvent by @adamsaghy in #4539
- FINERACT-2211: Fix endless loop issue by @adamsaghy in #4543
- FINERACT-2230: improve test and doc building info in README by @meonkeys in #4529
- FINERACT-2231: remove links unhelpful in future releases by @meonkeys in #4530
- FINERACT-2256: New command processing - Product Mix (org.apache.fineract.portfolio.loanproduct.productmix) by @oleksma in #4534
- FINERACT-2080: Extract dto mappers from loan entity by @oleksii-novikov-onix in #4538
- FINERACT-2299: New command processing - Standing instructions history (org.apache.fineract.portfolio.account) by @VictorPavfurious in #4533
- FINERACT-2298: New command processing - Standing instructions (org.apache.fineract.portfolio.account) by @VictorPavfurious in #4537
- FINERACT-1981: Charge at disbursement fixes by @magyari-adam in #4544
- FINERACT-2081: Add ChargeOffReasonOptions in the Loan Transaction Tem… by @alberto-art3ch in #4551
- FINERACT-2220: Make ProgressiveLoanInterestScheduleModel serializable and deserializable by @somasorosdpc in #4526
- FINERACT-2181: Introduce Loop guard to avoid endless loops by @adamsaghy in #4545
- FINERACT-2296: New command processing - Calendar (org.apache.fineract.portfolio.calendar) by @VictorPavfurious in #4549
- FINERACT-2181: modified id and id related fields in api objects to long datatype by @Cocoa-Puffs in #4557
- FINERACT-2258: Fix for making the Post Interest for Savings job properly work in a multitenant environment by @galovics in #4556
- FINERACT-2202: Bulk import fix by @RamsesCamacho1171 in #4487
- FINERACT-2181: Fix savings integration tests by @mariiaKraievska in #4563
- FINERACT-2260: Fix incorrect interest handling in case of early repayment by @adamsaghy in #4569
- FINERACT-2181: No Accrual Activity for not active loans by @adamsaghy in #4565
- Bump actions/setup-java from 4.7.0 to 4.7.1 by @dependabot[bot] in #4555
- FINERACT-2181: Update bitnami/kafka Docker tag to v4 by @renovate-bot in #4524
- FINERACT-2081: External service credential values masked by @alberto-art3ch in #4558
- FINERACT-2080: extracted json based workflows from Loan and other Loan related entities by @Cocoa-Puffs in #4560
- FINERACT-2181: Fix the API to return interestRecognitionOnDisbursementDate in GetLoanProductsResponse by @mariiaKraievska in #4564
- FINERACT-2237: Fix GSIM account creation to generate single parent for multiple clients by @JebronLames32 in #4546
- FINERACT-2081: payment_types cache fix by @budaidev in #4568
- FINERACT-2181: Add customData field to LoanProductBusinessEvent by @alberto-art3ch in #4571
- FINERACT-2234: Improve "Add periodic accrual entries" business step performance by @mariiaKraievska in #4562
- FINERACT-2181: test verifying no accrual activity created for approved loan by @ruzeynalov in #4578
- FINERACT-2181: Add customData field to InvestorBusinessEvent by @alberto-art3ch in #4567
- FINERACT-2181: Add customData field to LoanAdjustTransactionBusinessE… by @alberto-art3ch in #4572
- FINERACT-2181: Add customData field to LoanRepaymentBusinessEvent by @alberto-art3ch in #4581
- FINERACT-2181: Add customData field to LoanAccountDelinquencyRangeBus… by @alberto-art3ch in #4582
- FINERACT-2232: Progressive loan income capitalization config by @magyari-adam in #4561
- FINERACT-2262: Improve cache handling and add customization option by @adamsaghy in #4579
- FINERACT-2181: Use
daily
as recalculation rule in tests by @adamsaghy in #4589 - FINERACT-2235: add loan summary related data to loan list api by @soticsenge in #4597
- FINERACT-2257: New command processing - Loan Guarantor Management (org.apache.fineract.portfolio.loanaccount.guarantor) by @oleksma in #4550
- FINERACT-2094: Update to Java 21 by @meonkeys in #4590
- FINERACT-2181: Refactor constants to follow naming convention by @a7med3del1973 in #4596
- FINERACT-2236: add clientId filter to loan list api by @soticsenge in #4595
- FINERACT-2202: Bulk import fix by @danielales2541 in #4510
- FINERACT-2180: Allow use any Java distribution by @alberto-art3ch in #4601
- FINERACT-2181: Bump actions/setup-node from 4.3.0 to 4.4.0 by @dependabot[bot] in #4576
- FINERACT-2232: Create LoanCapitalizedIncomeBalance entity and table by @magyari-adam in #4586
- FINERACT-2173: added e2e tests covering basic migration scenario related to cob by @ruzeynalov in #4588
- FINERACT-2265: Progressive Loan - Interest Recalculation fails for - RecalculationRestFrequencyType SameAsRepaymentPeriod by @somasorosdpc in #4592
- FINERACT-2210: Fix journal entries creation issue when amount is null by @mariiaKraievska in #4598
- FINERACT-2232: Capitalized income config backend validation by @magyari-adam in #4599
- FINERACT-2260: e2e tests for incorrect interest handling in case of early repayment by @MarianaDmytrivBinariks in #4600
- FINERACT-2235: fix loan list assotiations flag for loans without summary by @soticsenge in #4611
- FINERACT-2169: New command processing infrastructure by @vidakovic in #4281
- FINERACT-2185: User management improvement by @Vectorquantiy in #4542
- FINERACT-2080: Extract loanLifecycleStateMachine from Loan entity by @oleksii-novikov-onix in #4552
- FINERACT-2294: New command processing - Client identifier (org.apache.fineract.portfolio.client) by @oleksma in #4566
- FINERACT-2292: New command processing - Client family member (org.apache.fineract.portfolio.client) by @VictorPavfurious in #4585
- FINERACT-2221: Add immediate charge accrual post maturity for progressive loans by @oleksii-novikov-onix in #4587
- FINERACT-2287: New command processing - Interest Rate (org.apache.fineract.portfolio.interestratechart) by @VictorPavfurious in #4602
- FINERACT-2291: New command processing - Group Level (org.apache.fineract.portfolio.group) by @VictorPavfurious in #4604
- FINERACT-2290: New command processing - Collection Sheet (org.apache.fineract.portfolio.collectionsheet) by @VictorPavfurious in #4605
- FINERACT-2140: added hsts protocol support through system property by @Cocoa-Puffs in #4609
- FINERACT-2293: New command processing - Client address (org.apache.fineract.portfolio.client) by @VictorPavfurious in #4573
- FINERACT-2210: Fix incorrect accounting of "buyback" for charged-off loan with fraud by @mariiaKraievska in #4603
- FINERACT-2232: Loan account capitalized income transaction template by @alberto-art3ch in #4613
- FINERACT-2080: Extract accountNumberRequiresAutoGeneration from loan entity by @oleksii-novikov-onix in #4615
- FINERACT-2288: New command processing - Staff (org.apache.fineract.organisation.staff) by @VictorPavfurious in #4618
- FINERACT-2289: New command processing - Working Days (org.apache.fineract.organisation.workingdays) by @oleksma in #4610
- FINERACT-2269: various small dev-focused improvements by @meonkeys in #4612
- FINERACT-2232: Capitalized income - accounting and income type configuration by @magyari-adam in #4614
- FINERACT-2173: updated existing and added new e2e tests covering basic migration scenario related to cob by @ruzeynalov in #4622
- FINERACT-2265: Progressive Loan - Interest Recalculation bug - E2E by @peter-kovacs-dpc in #4620
- FINERACT-2234: extra caches for frequent db queries by @budaidev in #4570
- FINERACT-2232: Capitalized income - amortization calc util by @magyari-adam in #4619
- FINERACT-2297: New command processing - Accounts (org.apache.fineract.portfolio.accounts) by @VictorPavfurious in #4541
- FINERACT-2226: Fix repayment reversal issue after charge off and MIR by @mariiaKraievska in #4616
- FINERACT-2264: Interest pause issue - Interest calculation start again in case of early repayment during interest period by @somasorosdpc in #4594
- FINERACT-2220: Use stored ProgressiveLoanInterestScheduleModel for calculation by @somasorosdpc in #4577
- FINERACT-2210: fix previously refunded interest calculation during interest refund by @Cocoa-Puffs in #4617
- FINERACT-2232: Capitalized income - Add Capitalized income to Loan by @mariiaKraievska in #4624
- FINERACT-2202: Bulk import fix by @danielales2541 in #4630
- FINERACT-2220: Use stored ProgressiveLoanInterestScheduleModel for periodic accrual creation by @somasorosdpc in #4621
- FINERACT-2234: add interest recalc filter by @budaidev in #4629
- FINERACT-2268: Fix GL account deletion logic by @adamsaghy in #4631
- FINERACT-2181: Add missing indexes by @adamsaghy in #4641
- FINERACT-2181: Loan expect tranche fix by @magyari-adam in #4633
- FINERACT-2181: Add missing
disallowInterestCalculationOnPastDue
field to PutLoanProductsProductIdRequest swagger definition by @adamsaghy in #4644 - FINERACT-2262: Fix cache resolution by @adamsaghy in #4648
- FINERACT-2210: Reverse the charge-off transaction if the amount balance becomes zero by @mariiaKraievska in #4642
- FINERACT-2202: Bulk import fix by @RamsesCamacho1171 in #4650
- FINERACT-2181: Fix Consult Loan repayment schedule with disbursement … by @alberto-art3ch in #4643
- FINERACT-2202: Bulk import fix by @danielales2541 in #4657
- FINERACT: 2181 Update build.gradle by @IOhacker in #4658
- FINERACT-2080: Extract complex loan actions out from Loan entity by @budaidev in #4645
- FINERACT-2181: Update dependencies by @adamsaghy in #4656
- FINERACT-2181: Add swagger definition for addAndDeleteDisbursementDetail request, and tests by @magyari-adam in #4662
- FINERACT-2232: Capitalized income - amortization in case of Preclose event by @mariiaKraievska in #4653
- FINERACT-2232: Capitalized income - Daily amortization by @magyari-adam in #4649
- FINERACT-2181: fix undo transaction on charges waiver not reversing changes on loan charge by @Cocoa-Puffs in #4637
- FINERACT-2220: Use stored ProgressiveLoanInterestScheduleModel for processLatestTransaction by @somasorosdpc in #4634
- FINERACT-2280: Interest pause breaks repayment schedule while loan is added with interest rate zero by @somasorosdpc in #4664
- FINERACT-2181: fix Charges using percentage calculation with min and max gap values by @alberto-art3ch in #4646
- FINERACT-2181: Improve code quality by @a7med3del1973 in #4660
- FINERACT-2179: Advance Payment Allocation- Next-Last Option behaviour change by @mariiaKraievska in #4666
- FINERACT-2282: Support Client filtering by legal form by @adamsaghy in #4670
- FINERACT-2283: Self-service APIs are disabled by default by @adamsaghy in #4671
- Bump gradle/actions from 4.3.1 to 4.4.0 by @dependabot[bot] in #4675
- FINERACT-2232: Capitalized income - amortization in case of Charge-off event by @mariiaKraievska in #4665
- FINERACT-2181: Fix fully paid check on EmiModel by @adamsaghy in #4678
- FINERACT-2181: Fix audit filtering by @adamsaghy in #4673
- FINERACT-2262: Fix cache resolution by @adamsaghy in #4679
- FINERACT-2272: Move fetching chargeback transactions out of foreach of delinquency calculation by @mariiaKraievska in #4681
- FINERACT-2202: Bulk import fix by @danielales2541 in #4683
- FINERACT-2181: Check whether loan got closed after the test by @adamsaghy in #4684
- FINERACT-2181: fix accrual calculation date condition by @Cocoa-Puffs in #4680
- FINERACT-2286: Configurable interest outstanding strategy by @adamsaghy in #4682
- FINERACT-2080: Extract calculations from loan entity by @oleksii-novikov-onix in #4625
- FINERACT-2181: Format enums by @adamsaghy in #4685
- FINERACT-2281: Interest Activities Not Posting For Loan With Repayment Reversal by @somasorosdpc in #4667
- FINERACT-2181: unSkip fixed scenarios by @peter-kovacs-dpc in #4687
- FINERACT-2232: Capitalized Income Adjustment template by @alberto-art3ch in #4661
- FINERACT-2281: added e2e automation tests for cases with no interest … by @MarianaDmytrivBinariks in #4689
- FINERACT-2281: added e2e automation tests for cases with accrual calc… by @MarianaDmytrivBinariks in #4690
- FINERACT-2181: Use
disruptor
only if it is configured by @adamsaghy in #4692 - FINERACT-2181: Add missing index for
transaction_id
field ofacc_gl_journal_entry
table by @adamsaghy in #4693 - FINERACT-2181: Some tweaks in the gradle build to ensure correct task processing by @adamsaghy in #4695
- FINERACT-2273: Make sure the setters of Loan repayment installment entity balances maintain the scaling of 6 and set null in case the value is zero by @mariiaKraievska in #4686
- FINERACT-2276: Deprecate findExistingTransactionIds and fetch only the ids from database instead by @mariiaKraievska in #4688
- FINERACT-2277: Deprecate findExistingReversedTransactionIds and fetch only the ids from database instead by @mariiaKraievska in #4691
- FINERACT-2278: Rework raiseBusinessEventForAccrualTransactions to not use loan.getLoanTransactions() by @mariiaKraievska in #4698
- FINERACT-2181: Fix loan api double values by @Cocoa-Puffs in #4699
- FINERACT-2232: add income capitalization principal handling and repayment schedule calculations on loans by @Cocoa-Puffs in #4651
- FINERACT-2267: Use the proper not-null annotation in Fineract code base by @a7med3del1973 in #4672
- FINERACT-2304 - fix entity manager usage only through persistence context annotation by @Cocoa-Puffs in #4707
- FINERACT-1981: Loan schedule handling of tranche disbursement charges by @ruzeynalov in #4654
- FINERACT-2181: Fix Consult Loan repayment schedule with disbursement … by @alberto-art3ch in #4703
- FINERACT-2232: Capitalized income adjustment by @magyari-adam in #4676
- FINERACT-2275: Review whether reprocessing accruals are in fact needed or not after recalculated interest on loan by @somasorosdpc in #4705
- FINERACT-2306: release doc fixes by @meonkeys in #4715
- FINERACT-2279: Contract Termination - Schedule Handing & Reverse-replay by @mariiaKraievska in #4677
- FINERACT-2202: Bulk import fix by @Edder-Sanjuan in #4709
- FINERACT-2274: Refactor the loan accruals processing service to avoid using 'get loan transactions' method from the loan by @oleksii-novikov-onix in #4700
- FINERACT-2304: Add versioning to LoanTransaction entity by @Cocoa-Puffs in #4708
- FINERACT-2181: Loan disbursement amount exceed loan principal amount when we ha… by @alberto-art3ch in #4716
- FINERACT-2181: Do not create zero amount Accrual at disbursement by @adamsaghy in #4719
- FINERACT-2181: Add null safety to Money class by @adamsaghy in #4718
- FINERACT-2232: Validations and cob step fix by @magyari-adam in #4713
- FINERACT-2152: Fix interest pause on the 1st day of the 1st period by @oleksii-novikov-onix in #4725
- FINERACT-2181: added e2e automation tests for disbursement with Capitalized Income amount calculation fix by @MarianaDmytrivBinariks in #4726
- FINERACT-2232: Capitalized income reversal of transactions by @magyari-adam in #4712
- FINERACT-2181: Refactor code quality by @a7med3del1973 in #4720
- FINERACT-2181: Update Transaction summary with asset owner report by @adamsaghy in #4738
- FINERACT-2181: Add datatable field to Loan request swagger by @adamsaghy in #4739
- FINERACT-2181: Remove command param lower casing by @adamsaghy in #4740
- FINERACT-2181: fix name collision in swagger resources by @Cocoa-Puffs in #4732
- FINERACT-2307: added e2e tests for disbursement with Capitalized Income amount calculation while approved over applied setting enabled by @MarianaDmytrivBinariks in #4729
- FINERACT-2181: Fix repayment schedule during accelerate maturity date charge off/contract termination when full backdated repayment occurs after it by @mariiaKraievska in #4731
- FINERACT-2181: Add Merchant Issued Refund reverse replayed with penalty charge test by @oleksii-novikov-onix in #4733
- FINERACT-2202: Bulk import fix by @RamsesCamacho1171 in #4735
- FINERACT-2181: Installment amount in multiples of should be inherited… by @alberto-art3ch in #4717
- FINERACT-2211: Second disbursement error fix by @budaidev in #4728
- FINERACT-2304: Batch retry issue - Duplicate records by @somasorosdpc in #4737
- FINERACT-2181: Fix integration test by @adamsaghy in #4744
- FINERACT-2304: Fix Error boundries by @somasorosdpc in #4746
- FINERACT-2232: Capitalized income and Caplitalized income adjustment … by @alberto-art3ch in #4747
- FINERACT-2232: fix capitalized income balance handling during reverse-replay situations by @Cocoa-Puffs in #4706
- FINERACT-2234: Improve AccrualActivityPostingBusinessStep business step performance by @oleksii-novikov-onix in #4742
- FINERACT-2181: Add missing indexes (with check and concurrently) by @adamsaghy in #4755
- FINERACT-2181: Enhance job execution polling in E2E tests by @adamsaghy in #4757
- FINERACT-2181: Using JUnit 5 for E2E by @adamsaghy in #4761
- FINERACT-2304: Handle Stuck Command Processing Retries by @somasorosdpc in #4762
- FINERACT-2232: Capitalized income - Amortization rework by @magyari-adam in #4750
- FINERACT-2232: Add missing fields on the Capitalized Income and Adjus… by @alberto-art3ch in #4754
- FINERACT-2232: Capitalized income - Business events by @magyari-adam in #4730
- FINERACT-2232: Capitalized income and Caplitalized income adjustment … by @alberto-art3ch in #4748
- FINERACT-2304: Avoid retrying after the command succeed by @budaidev in #4756
- FINERACT-2310: collate and improve security documentation by @meonkeys in #4760
- FINERACT-2281: Fix unrecognized interest handling when first period is unpaid by @Cocoa-Puffs in #4743
- FINERACT-2181: Accruals on accounts where charge adjustments and refunds are done on the same day causing duplicate journal entries by @mariiaKraievska in #4736
- FINERACT-2309: Emit external events on document upload and delete by @JebronLames32 in #4752
- FINERACT-2181: Added e2e test covering case with lifting charge-off flag and charge-off date in case the charge-off transaction got reversed by @ruzeynalov in #4768
- FINERACT-2181: Update outstandingBalance when the LoanInterestRecalculationCOBBusinessStep of COB job is executed by @mariiaKraievska in #4769
- FINERACT-2308: Allow approval and disbursal above loan applied amount… by @alberto-art3ch in #4764
- FINERACT-2181: Some tweaks in the gradle build to ensure correct task processing by @adamsaghy in #4780
- FINERACT-2279: Contract Termination - Undo by @mariiaKraievska in #4745
- Bump gradle/actions from 4.4.0 to 4.4.1 by @dependabot[bot] in #4765
- FINERACT-2181: Prevent Infinite Loop on MIR by @somasorosdpc in #4767
- FINERACT-2181: add e2e test to cover additional future unrecognized interest use-case by @Cocoa-Puffs in #4781
- FINERACT-2181: Make 'staticWeaveJPA' gradle task cacheable by @adamsaghy in #4784
- FINERACT-2181: fix prepayment functionality when prepayment happens i… by @soticsenge in #4782
- FINERACT-2181: Fix randomly failing COB catch up test by @adamsaghy in #4789
- FINERACT-2181: Add missing converters to persistence.xml by @adamsaghy in #4788
- FINERACT-2181: Ensure loan transactions are saved and linked to loan object consistently across business steps by @Cocoa-Puffs in #4787
- FINERACT-2181: Fix for duplicated weaved and non-weaved classfiles present in Docker layers by @galovics in #4792
- FINERACT-2181: Fix validation for add capitalized income to loan transaction by @mariiaKraievska in #4772
- FINERACT-2181: Gradle task rework - Optimized weaving across all modules by @adamsaghy in #4795
- FINERACT-2181: add e2e test to cover capitalized income amortization adjustment case by @Cocoa-Puffs in #4794
- FINERACT-2181: JIB docker build requires resources files to be merged with classes by @adamsaghy in #4797
- FINERACT-2311: Loan product - Buy down fees configuration by @magyari-adam in #4776
- FINERACT-2213: Client transfer from one branch to another leaves loans attached to the client in transfer.in.progress status instead of active by @a7med3del1973 in #4779
- FINERACT-2238: New command processing - Business Date Management (org.apache.fineract.infrastructure.businessdate) by @VictorPavfurious in #4804
- FINERACT-2311: Loan product - Buy down fees accounting configuration by @magyari-adam in #4799
- FINERACT-2304: publishHookErrorEvent and publishHookEvent fix by @budaidev in #4801
- FINERACT-2242: New command processing - External Event Configuration (org.apache.fineract.infrastructure.event.external) by @VictorPavfurious in #4808
- FINERACT-2241: New command processing - Cache Management (org.apache.fineract.infrastructure.cache) by @VictorPavfurious in #4816
- FINERACT-2247: New command processing - Currency Management (org.apache.fineract.organisation.monetary) by @VictorPavfurious in #4817
- FINERACT-2181: Remove processResource hack by @adamsaghy in #4824
- FINERACT-2234: Improve LoanInterestRecalculationCOBBusinessStep business step performance by @oleksii-novikov-onix in #4770
- FINEARCT-2311: Add buydown fees to loan by @budaidev in #4775
- FINERACT-2181: Reset Last Closed Business date after Loan undo disbur… by @alberto-art3ch in #4815
- FINERACT-2181: New Loan Accrual Activity transactions publish LoanAdjustTransaction event during loan reopen by @mariiaKraievska in #4819
- FINERACT-2181: Swagger enhancement for PostSavingsProductsRequest by @alberto-art3ch in #4826
- FINERACT-2181: Drop resource manipulation for jib by @adamsaghy in #4829
- FINERACT-2181: Use matrix jobs via Github Actions to improve performance by @adamsaghy in #4830
- FINERACT-2318: add LoanApplicationModifiedBusinessEvent & LoanWithdrawnByApplicantBusinessEvent by @JebronLames32 in #4809
- FINERACT-2181: Not allow Reschedule loan with interest rate change fr… by @alberto-art3ch in #4810
- FINERACT-2311: Add buy down fee balance entity and db table, create balance on transaction by @Cocoa-Puffs in #4831
- FINERACT-2198: Extend Manual Journal entry to support Asset Externalization by @alberto-art3ch in #4785
- FINERACT-2311: Buydown fees adjustment by @budaidev in #4840
- FINERACT-2311: added e2e auto test scenarios for add buy down fees to loan by @MarianaDmytrivBinariks in #4835
- FINERACT-2181: Fix in advance paydate calculation by @Cocoa-Puffs in #4798
- FINEREACT-2181: Removed unnecessary explicit toString() calls by @a7med3del1973 in #4836
- FINERACT-2304 Fix auditing of failed batch request while enclosing transaction got enabled by @oleksii-novikov-onix in #4791
- Revert "FINERACT-2304 Fix auditing of failed batch request while enclosing transaction got enabled" by @adamsaghy in #4845
- FINERACT-2311: Buy Down fee adjustment - Template API by @alberto-art3ch in #4834
- FINERACT-2311: Buy down fee - daily amortization by @magyari-adam in #4844
- FINERACT-2311: Add Buy Down Fees transaction support by @alberto-art3ch in #4790
- FINERACT-2311: added e2e auto test scenarios for add buy down fee adjustment trn by @MarianaDmytrivBinariks in #4846
- FINERACT-1981: Progressive Loan schedule handling - Installment charges by @mariiaKraievska in #4800
- FINERACT-1968: Progressive Loan schedule handling - (FLAT interest, Same as repayment period, Equal installments) by @somasorosdpc in #4833
- FINERACT-2319: Repayment allocation prefers future dated penalty first by @oleksii-novikov-onix in #4832
- FINERACT-2181: Batch API - Add interest pause API by @adamsaghy in #4851
- FINERACT-2319: added e2e test for verifying backdated repayment allocation respects payment order for future dated penalties by @ruzeynalov in #4852
- FINERACT-2321: Adding arrears days to loan/at-date api by @soticsenge in #4853
- FINERACT-2181: Pin dependencies by @renovate-bot in #4841
- FINERACT-2181: Batch API - Fix read-only connection handling by @adamsaghy in #4856
- FINERACT-2181: Change execution order in 1029_add_installment_amount_in_multiples_of_to_loan.xml by @adamsaghy in #4860
- FINERACT-2311: Buy down fee - final amortization by @magyari-adam in #4850
- FINERACT-2181: Remove suboptimal indexes by @adamsaghy in #4862
- FINERACT-2181: Capitalized Income and Buy Down Fees accounting values are still… by @alberto-art3ch in #4848
- FINERACT-2325: Disable automatic Interest Refund calculation by @mariiaKraievska in #4855
- FINERACT-2181: Update dependency org.hibernate.validator:hibernate-validator to v9 by @renovate-bot in #4822
- FINERACT-2182: Group creation fails due to NullPointerException when random-account-number=enabled by @a7med3del1973 in #4838
- FINERACT-2232: Capitalized Income - Fetch amortization details by @alberto-art3ch in #4863
- FINERACT-2181: Fix github actions not failing test runs on failed tests by @magyari-adam in #4827
- FINERACT-2181: Fix overdue balance updates in advanced payment schedule processing by @Cocoa-Puffs in #4859
- FINERACT-2181: Batch Api - Add Interest pause API support by @adamsaghy in #4872
- Revert "FINERACT-2181: Fix overdue balance updates in advanced payment schedule processing" by @adamsaghy in #4873
- FINERACT-2270: Release Apache Fineract 1.12.0 by @adamsaghy in #4870
New Contributors
- @Harsh-Srivastav123 made their first contribution in #4397
- @carlossortega made their first contribution in #4442
- @JebronLames32 made their first contribution in #4521
- @Pinchez25 made their first contribution in #4511
- @RamsesCamacho1171 made their first contribution in #4487
- @danielales2541 made their first contribution in #4510
- @Vectorquantiy made their first contribution in #4542
- @Edder-Sanjuan made their first contribution in #4709
Full Changelog: 1.11.0...1.12.1