# Al-Insaf - Cooperative Finance Platform with Ledger and Loans

Company: Webanion
Service: Startup Development
Period: 2025-11 - present
Tech: NestJS, PostgreSQL, TypeScript, React, Vite, OpenFGA, Docker, Node.js
Web: https://al-insafonline.com
Canonical: https://webanion.com/portfolio/al-insaf-cooperative-finance-platform-with-ledger-and-loans

A cooperative finance organisation was running member records, savings, loans and investor capital across paper and spreadsheets, with no way to audit a branch or close a day cleanly. We built one system that holds all of it: member registration, daily collections, loan application through to disbursement, a multi-branch ledger, investor capital and an audit log that records who did what. Officers record each collection the moment it is made, managers approve loans and close the day, and the permission model decides what each role can see and do rather than hiding buttons. Everything shown in this case study runs on seeded demonstration data; real member records never appear in portfolio material.

## The Full Story

How a cooperative that ran on paper and spreadsheets now runs every collection, loan, investor account and daily close from one audited ledger.

### A cooperative that ran on paper

<p>Al-Insaf is a small traders' savings cooperative. Members save and borrow in small amounts, and field officers visit them every day to collect instalments and savings, writing each payment into a book. Member records, savings, loans and investor capital were spread across paper and spreadsheets, loans moved from desk to desk for signatures, and there was no way to audit a branch or close a day cleanly.</p><p>An earlier system had shown the idea could work, but almost anyone could see and change almost anything. The cooperative needed one system that matched how it really works, and that its members and investors could trust with their money.</p>

### Every payment on the books the moment it is made

<p>A collection used to exist only in an officer's notebook until someone typed it up. Now the member is found by name, phone or card code, the savings deposit, withdrawal, fee or expense is recorded against them on the spot, and the entry can carry the GPS point where it was taken. Today's cash in, cash out and net sit beside the form, so the office sees the day as it happens rather than the next morning.</p><p>Nothing is rewritten after the fact. A wrong entry is reversed, and only a manager can correct a collection, which is why the office can trust every number that comes in and a member can trust that what they paid was recorded.</p>

### Books that close and balance every night

<p>Behind every screen sits a double-entry ledger, kept per branch. Each night a scheduled close runs across every branch, locks the day's entries, checks the trial balance and snapshots the cash in hand, and a day can still be closed or reopened by hand. Month end starts from days that already balance.</p>

### A loan the committee can follow from application to last instalment

<p>A loan used to travel from desk to desk on paper, and nobody could say for certain where it stood. Now an application is entered once and moves from pending to approved to disbursed in the open, and every step is recorded with who took it and why, a rejection and its reason included. A disbursed loan carries its instalment schedule, each instalment marked collected or overdue, and the application, the loan letter and the angikarnama, the member's signed undertaking, print from the same record.</p><p>Applying, approving and paying out are separate powers, switched on per role, admin, manager, field officer, monitor and member, or granted to a single person, without touching the code. The permission model decides what each role can see and do rather than hiding buttons, branch staff see only their own branch, and the audit log records who changed what.</p>

### The branch at a glance, for the people who answer for it

<p>The dashboard puts the branch's position on one screen: active members, loans outstanding, total savings, investor capital, what was collected this month and where the money went, with expense categories in the language the office keeps its books in. Monthly ledgers and reports sit one click away.</p><p>Committee meetings that used to begin with reconciling now begin with decisions, in a light theme for the office or a dark one for long evenings.</p>

### One conversation, in the language each person thinks in

<p>Office and field staff message each other inside the platform, so a question about a member or a day's collection stays with the branch that owns it rather than in someone's personal messaging app. The whole interface switches between Bangla and English with one button, every member is registered with their name in both scripts, and a message can be read translated or in the words it was written in.</p><p>Staff work in the language they think in, and nobody needs a second app to ask how the day went.</p>

### Tested as if money depends on it

<p>Because it does. Integration suites run on every change and replay the money paths, deposits, loan lifecycles, investor payouts and day closes, so a new feature cannot quietly break a balance. Sign in, OpenFGA permissions, feature switches and the audit trail come from <a href="/portfolio/gm-libs-reusable-nestjs-packages-for-auth-data-and-crud">gm-libs</a>, the studio's own NestJS packages, hardened on this platform first.</p><p>For members it means payments that are recorded and respected, for officers a day they can see, for the committee books they can stand behind, for investors an account they can check, and for the cooperative a way to grow branch by branch without losing track. Every screen in this story shows seeded demonstration data, in line with how the platform treats its members' records.</p>

### Investors who can see exactly where their money stands

<p>Investors put capital into the cooperative alongside the members' savings, and that money has to be accounted for as carefully as any deposit. Each investor has an account showing their current capital, what they have contributed, what they have withdrawn and what has been paid out to them, with a dated statement behind every figure.</p><p>Adding capital, withdrawing it and paying an investor post to the same double-entry ledger as everything else, and only the super admin can make them, while admins and monitors can look. The investor capital on the branch dashboard is the sum of those accounts, and the interest paid to investors sits among the branch's expenses, so when an investor asks where their money stands, the office answers from the books rather than from memory.</p>

### The whole month on one sheet

<p>The month the office once rebuilt by hand in spreadsheets is now one sheet: every member down the side, every day across the top, each deposit and withdrawal in its cell and a total for each member at the end. A missed day shows at a glance, and the sheet exports to Excel, headed in Bangla or English, for the committee's file.</p>
