跳到主要内容
Al-Insaf loans and collections, seeded demo data

Al-Insaf:含总账与贷款的合作社金融平台

Webanion brand logoWebanion初创项目开发11月 02, 20251 年

一家合作社金融机构此前把社员档案、储蓄、贷款和投资人资本分散在纸质记录与电子表格之间,既无法审计任何一个网点,也无法干净地完成日终结账。我们构建了一套系统把这些全部收拢:社员登记、每日收款、从申请到放款的完整贷款流程、多网点总账、投资人资本,以及一份记录谁做了什么的审计日志。工作人员在每笔收款发生时当场记录,管理者审批贷款并完成日终结账,而权限模型决定每个角色能看到什么、能做什么,而不是简单地把按钮藏起来。本案例研究中展示的一切都运行在预置的演示数据上;真实的社员档案从不出现在作品集材料中。

NestJSPostgreSQLTypeScriptReactViteOpenFGADockerNode.js
Md Moniruzzaman Image

Md Moniruzzaman

完整故事

一家曾经依靠纸张和电子表格运作的合作社,如今如何通过一本经过审计的总账,处理每一笔收款、每一笔贷款、每个投资人账户和每天的日终结账。

一家靠纸张运转的合作社

Al-Insaf 是一家由小商户组成的储蓄合作社。社员小额存钱、小额借款,外勤人员每天上门收取分期还款和储蓄,并把每一笔款项记在本子上。社员档案、储蓄、贷款和投资人资本分散在纸质记录和电子表格之间,贷款要在一张张办公桌之间传递等人签字,既无法审计一个网点,也无法干净利落地完成日终结账。

此前的一套系统证明了这个思路行得通,但几乎任何人都能查看和修改几乎任何内容。合作社需要一套符合自身真实运作方式的系统,一套社员和投资人都能放心托付资金的系统。

每一笔款项,发生的那一刻就入账

过去,一笔收款在有人把它录入之前,只存在于外勤人员的笔记本里。现在,可以按姓名、电话或卡号找到社员,储蓄存款、取款、费用或支出当场记到其名下,每条记录还可以带上收款地点的 GPS 位置。当天的现金收入、现金支出和净额就显示在表单旁边,办公室因此能实时看到当天的情况,而不是等到第二天早上。

任何记录都不会事后改写。错误的记录会被冲销,只有经理才能更正收款,因此办公室可以信任收到的每一个数字,社员也可以相信自己付的钱都已入账。

Brand colour backdrop
The member register: search by name, phone or member number, or scan a card code
Record a Collection: savings deposit, withdrawal, fee or expense against a member, with today's cash in, cash out and net

每晚结账、每晚平衡的账簿

每个界面背后都有一本按网点分设的复式记账总账。每天夜里,定时结账程序会在所有网点运行,锁定当天的记录,检查试算平衡,并为库存现金生成快照;需要时,也可以手动结束或重新打开某一天。月末结账从本就平衡的每一天开始。

Brand colour backdrop
Daily close: a closed day, trial balance checked, cash in hand snapshotted, with the nightly scheduled close noted below

从申请到最后一期还款,委员会全程可追踪的贷款

过去,一笔贷款靠纸质文件在办公桌之间流转,没人能确切说出它进行到了哪一步。现在,申请只需录入一次,就会公开地从待审批推进到已批准,再到已放款,每一步由谁操作、为何操作都有记录,包括驳回及其原因。已放款的贷款附带分期还款计划,每一期都标明已收或逾期;申请表、贷款函和 angikarnama(即社员签署的承诺书)都从同一条记录打印。

申请、审批和放款是彼此分开的权限,可以按角色(管理员、经理、外勤人员、监察员和社员)开启,也可以单独授予某一个人,无需改动代码。权限模型决定每个角色能看到什么、能做什么,而不是把按钮藏起来;网点员工只能看到自己的网点,审计日志记录谁改了什么。

Brand colour backdrop
Loans: applications from pending to disbursed, and a disbursed loan with its instalment schedule and printable forms, seeded demo data
Feature management: loan application, approval and disbursement switched on per role, seeded demo data

为担责的人,一眼看清整个网点

仪表盘把网点的整体状况集中在一个屏幕上:活跃社员、未偿贷款、储蓄总额、投资人资本、本月收款情况以及资金去向,支出类别则使用办公室记账所用的语言。月度总账和报表只需点击一下即可打开。

过去以对账开场的委员会会议,如今直接从决策开始;办公室里可以用浅色主题,漫长的夜晚则可以换成深色主题。

Brand colour backdrop
The branch statistics dashboard: members, loans outstanding, savings, investor capital and this month's collection
The same dashboard in the dark theme, with the expense breakdown in Bangla

同一场对话,用每个人思考时的语言

办公室和外勤员工在平台内部互发消息,因此关于某位社员或某天收款的问题会留在负责它的网点,而不是散落在某人的私人聊天软件里。整个界面一键即可在孟加拉语和英语之间切换,每位社员登记时都会同时录入两种文字的姓名,消息既可以看译文,也可以看原文。

员工用自己思考时的语言工作,也没人需要再开一个应用去问今天过得怎么样。

Brand colour backdrop
Members registered with their names in Bangla and English, dark theme
In-app messages between the office and a field officer, in Bangla, with the translation toggle

按资金攸关的标准来测试

因为资金确实攸关。每次改动都会运行集成测试套件,重放各条资金路径,包括存款、贷款全生命周期、投资人付款和日终结账,确保新功能不会悄无声息地破坏任何余额。登录、OpenFGA 权限、功能开关和审计追踪都来自 gm-libs,这是工作室自己的 NestJS 软件包,最先在这个平台上经受打磨。

对社员来说,这意味着付出的每一笔钱都被记录、被尊重;对外勤人员来说,是一目了然的一天;对委员会来说,是敢于为之背书的账簿;对投资人来说,是可以自行核对的账户;对合作社来说,则是一条可以一个网点一个网点扩展而不失控的道路。本文中的每个界面展示的都是预置的演示数据,这与平台对待社员档案的方式一致。

投资人能确切看到自己的资金状况

投资人与社员的储蓄一起向合作社投入资本,这笔钱必须像任何一笔存款一样被仔细核算。每位投资人都有一个账户,显示其当前资本、已投入金额、已提取金额和已向其支付的款项,每个数字背后都有一份注明日期的对账单。

追加资本、提取资本和向投资人付款,都与其他所有业务一样过入同一本复式记账总账,且只有超级管理员可以操作,管理员和监察员只能查看。网点仪表盘上的投资人资本就是这些账户的合计,支付给投资人的利息列入网点的支出,所以当投资人问起自己的资金状况时,办公室依据账簿而不是凭记忆作答。

Brand colour backdrop
The branch dashboard: investor capital of 585,000 beside members, loans and savings, with investor interest among the expenses, seeded demo data
The investor register and one investor's account: capital, contributed, withdrawn and interest paid, with its dated statement, seeded demo data

整个月,一张表

办公室过去要在电子表格里手工重做的月度账目,如今就是一张表:每位社员按行排列,每一天按列排开,每笔存款和取款各占一格,每位社员的合计列在最后。哪一天空缺,一眼便知;这张表还能导出为 Excel,表头可选孟加拉语或英语,供委员会存档。

Brand colour backdrop
The one-glance sheet: every member against every day of the month so far, with a total per member and an Excel export

你可能也喜欢

Coverfanz Logo
Coverfanz Admin App
网站开发
2 个月
Upwork brand logo

CoverFanz:表演者市场平台的管理后台

这套管理后台让 CoverFanz 的创始人从上线第一天起,无需求助开发人员就能运营一个表演者市场平台。每一位粉丝、表演者和演出场所都在同一个列表中,附带订阅状态;新场所在地址核实之前一直待在审批队列里;举报会附上原因;表演类型是一份由创始人掌控的列表。它与应用在同一个月内、基于同一套 GraphQL API 构建。

Md Moniruzzaman Image

Md Moniruzzaman

4月 29, 2022

Amr Mashrah
Webanion brand logo
Webanion cover
网站开发
1 年 6 个月
Webanion brand logo

Webanion:带 MCP 服务器的无头 CMS 作品集平台

静态作品集网站既承载不了五种语言的内容,也跟不上背后写作的节奏,于是我们用一个平台取代了它。一套无头 CMS 保存每一份案例研究、文章和记录;一个 Next.js 前端以英语、孟加拉语、西班牙语、印地语和中文呈现它们;一台 MCP 服务器则把同样的内容开放给 AI 助手,让被问及这些工作的智能体去读取源头,而不是根据抓取结果猜测。搜索、媒体管理、审批流程和一个公开的发现层都运行在它之上。证据是递归的:你正在阅读的这个页面,正由本条目所描述的系统提供。

Md Moniruzzaman Image

Md Moniruzzaman

Sukalyan Research Group logo
Sukalyan Research Group website on desktop
网站开发
3 个月
Webanion brand logo

Sukalyan Research Group:一所大学药学实验室的网站

Jahangirnagar University 的 Department of Pharmacy 中 Sukalyan Research Group 的网站,由 Sukalyan Kumar Kundu 教授领导:七个研究方向及其技术和论文,一份按年份归类、可筛选的一百二十四条 Google Scholar 记录的论文列表,首席研究员的简介,按姓名和肖像列出的成员,一面校友去向墙,一个 Lab Life 图库,以及带邮件清单的四条路径加入页面。Next.js 静态导出,React 和 TypeScript,Tailwind CSS,所有内容都在一个查询函数之后,因此迁移到无头 CMS 时其他一切都不必改变。作为单个容器部署在自托管的 Kubernetes 集群上。

Md Moniruzzaman Image

Md Moniruzzaman

9月 30, 2026

Sukalyan Kumar Kundu, PhD
Read the Md Moniruzzaman blog

博客是来自生产一线的笔记:架构决策、经受住真实用户考验的 AI 系统、能自己挣回成本的基础设施。写于工作之中,而不是隔岸观火。