Aman-Mittal opened a new issue, #767:
URL: https://github.com/apache/fineract-backoffice-ui/issues/767

   ### Summary
   Fineract supports loans owned by a **group** (`loanType: "group"`) and 
joint-liability loans (`"jlg"`). The UI can only create individual loans: 
`loan-form.component.ts:592` hard-codes `loanType: 'individual'`, and the group 
record's **Accounts** tab has no New Account action. Group loans created by 
other means are shown with an empty client field and no reference to the owning 
group.
   
   This is distinct from GLIM/GSIM (#672, #376), which are separate products 
the backend refuses on PostgreSQL. A plain group loan **is** accepted by this 
backend.
   
   ### Environment
   - App: https://aman-mittal.github.io/fineract-backoffice-ui (deployed `main`)
   - Backend: `sandbox.mifos.community`, tenant `default`
   - Role: superuser
   - 2026-10-16
   
   ### Preconditions
   Group `E2E-AUDIT-20261016 Group` (id 1, created through **Groups → Create**) 
with member `E2EAudit DepositClient`, added through **Members → Add Members** 
(`POST /groups/1?command=associateClients` → 200). Loan product 
`E2E-AUDIT-20261016 Monthly Loan`.
   
   ### Steps to reproduce
   1. Open the group → **Accounts**. Only "This group has no loan accounts" is 
shown, with no create action.
   2. **Loans → Create Loan Account**. There's no applicant-type choice; only a 
client can be the applicant.
   3. Create a group loan another way (here: `POST /loans` with `groupId: 1, 
loanType: "group"` → **200**, loan id 2).
   4. Look at it in **Loans** and at `/loans/view/2`.
   
   ### Expected behavior
   - A group loan (and JLG, given members) can be applied for from the group 
record, or from Create Loan with an applicant-type choice.
   - Group loans show the **group name** wherever a client name would appear, 
and link back to the group.
   
   ### Actual behavior
   - No UI path creates a group or JLG loan.
   - The group loan is listed with an **empty Client Name** cell, and the loan 
view header reads `#000000002 | Client:` with nothing after it:
   
   ![Loans list with an empty Client Name for group loan 000000002, and the 
loan header reading Client: with no 
value](https://raw.githubusercontent.com/Aman-Mittal/fineract-backoffice-ui/assets/issue-screenshots/audit-2026-10-16/group-loan-no-client.svg)
   
   - The group's Accounts tab does list the loan correctly.
   
   ### Evidence
   `git grep` on `origin/main`: `loanType: 'individual'` at 
`src/app/features/loans/loan-form.component.ts:592`, and no `groupId` or 
`'group'`/`'jlg'` loan types in the loan or savings account forms. Live: `POST 
/loans { groupId: 1, loanType: "group", … }` → 200.
   
   ### Impact
   Group lending is a core microfinance product. Institutions that lend to 
solidarity groups can't originate those loans here, and any group loan created 
elsewhere looks like an orphaned record with no visible owner.
   
   ### Suggested investigation
   Add an applicant type to the loan form (client / group / JLG member), driven 
by `GET /loans/template?templateType=group|jlgbulk&groupId=…`. Add a New 
Account action on the group Accounts tab. In the loan list and view, fall back 
to `group.name` (with a link) when `clientName` is absent. The savings side 
(`groupId` on `POST /savingsaccounts`) is likely the same gap.
   
   ### Verification status
   Gap confirmed live and in source. Display defect reproduced on a group loan 
created through the API.
   
   ### Related endpoints
   `POST /loans` (`loanType: group|jlg`), `GET 
/loans/template?templateType=group`, `GET /groups/{id}/accounts`, `POST 
/savingsaccounts` (`groupId`)
   
   ### Acceptance criteria
   - A group loan can be created and approved from the UI.
   - List and view show the group name for group loans.
   - A JLG loan for a group member can be created (or explicitly deferred with 
a reason).
   
   ### Related issues
   #672 (GLIM/GSIM), #376 (backend refusal of GLIM/GSIM).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to