[
https://issues.apache.org/jira/browse/FINERACT-2498?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Adam Saghy resolved FINERACT-2498.
----------------------------------
Fix Version/s: 1.15.0
Resolution: Fixed
> Add GROUP as a Guarantor Type to Support Group Savings Accounts as Loan
> Collateral
> ----------------------------------------------------------------------------------
>
> Key: FINERACT-2498
> URL: https://issues.apache.org/jira/browse/FINERACT-2498
> Project: Apache Fineract
> Issue Type: Improvement
> Components: Savings
> Reporter: Ralph Hopman
> Assignee: Ralph Hopman
> Priority: Minor
> Fix For: 1.15.0
>
>
> Currently, the guarantor functionality only supports three types:
> * *CUSTOMER (1)* - Existing clients
> * *STAFF (2)* - Staff members
> * *EXTERNAL (3)* - External persons
> The system allows *group savings accounts* to be used as loan collateral
> through guarantors, but there is no proper GROUP guarantor type. This causes
> validation failures when attempting to use a group savings account as
> collateral because the validation logic tries to find a *client* with the
> group's ID, resulting in "entity not found" errors when client and group IDs
> don't overlap.
> The test {{testOnHoldTransactionsApiForGroupSavingsAccount}} in
> {{GroupSavingsIntegrationTest}} currently fails in CI when there are
> non-overlapping IDs between {{m_client}} and {{m_group}} tables.
> Tests and implementations incorrectly use {{guarantorTypeId = 1}}
> (CUSTOMER/CLIENT) with a group entity ID, which only works by coincidence
> when client and group IDs happen to overlap.
> h2. Proposed Solution
> Add *GROUP (4)* as a new guarantor type with proper validation support
> throughout the codebase to correctly handle group savings accounts as loan
> collateral.
> This solution is {*}backward compatible{*}: Existing API clients using types
> 1, 2, or 3 will continue to work unchanged. Type 4 is purely additive.
> h2. Testing
> # Integration test
> {{GroupSavingsIntegrationTest.testOnHoldTransactionsApiForGroupSavingsAccount}}
> should pass with non-overlapping client/group IDs
> # New test using {{GuarantorTestBuilder.existingGroupWithGuaranteeAmount()}}
> to test group guarantors
--
This message was sent by Atlassian Jira
(v8.20.10#820010)