মূল কনটেন্টে যান
Al-Insaf loans and collections, seeded demo data

Al-Insaf - খতিয়ান ও ঋণ ব্যবস্থাপনাসহ সমবায় অর্থায়ন প্ল্যাটফর্ম

একটি সমবায় অর্থায়ন সংস্থা সদস্য রেকর্ড, সঞ্চয়, ঋণ ও বিনিয়োগকারীর মূলধন চালাত কাগজ আর স্প্রেডশিটে, ফলে কোনো শাখার নিরীক্ষা করা বা দিনের হিসাব পরিষ্কারভাবে বন্ধ করার উপায় ছিল না। আমরা একটিই সিস্টেম বানিয়েছি যা সবকিছু ধরে রাখে: সদস্য নিবন্ধন, দৈনিক আদায়, ঋণের আবেদন থেকে বিতরণ পর্যন্ত, বহু শাখার খতিয়ান, বিনিয়োগকারীর মূলধন এবং কে কী করেছে তার নিরীক্ষা লগ। কর্মকর্তারা প্রতিটি আদায় হওয়ার সঙ্গে সঙ্গেই তা লিখে রাখেন, ব্যবস্থাপকেরা ঋণ অনুমোদন করেন ও দিনের হিসাব বন্ধ করেন, আর অনুমতির কাঠামো ঠিক করে কোন ভূমিকা কী দেখতে ও করতে পারবে, বোতাম লুকিয়ে রাখার বদলে। এই কেস স্টাডিতে যা দেখানো হয়েছে তার সবই প্রদর্শনীর জন্য তৈরি নমুনা ডেটার উপর চলে; প্রকৃত সদস্যের তথ্য পোর্টফোলিও উপকরণে কখনও আসে না।

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

আবেদন থেকে শেষ কিস্তি পর্যন্ত, কমিটির চোখের সামনে একটি ঋণ

আগে একটি ঋণ কাগজে কাগজে এক টেবিল থেকে আরেক টেবিলে ঘুরত, আর সেটা ঠিক কোন অবস্থায় আছে তা কেউ নিশ্চিত করে বলতে পারত না। এখন আবেদন একবারই এন্ট্রি করা হয়, আর সবার সামনে সেটা অপেক্ষমাণ থেকে অনুমোদিত, তারপর বিতরণ পর্যন্ত এগোয়; প্রতিটি ধাপ কে নিয়েছেন আর কেন, সবই লেখা থাকে, আবেদন বাতিল হলে তার কারণসহ। বিতরণ হওয়া ঋণের সঙ্গে থাকে তার কিস্তির সূচি, প্রতিটি কিস্তি আদায় হয়েছে নাকি বকেয়া তা চিহ্নিত থাকে, আর আবেদনপত্র, ঋণের চিঠি ও অঙ্গীকারনামা, অর্থাৎ সদস্যের সই করা প্রতিশ্রুতিপত্র, একই রেকর্ড থেকে প্রিন্ট হয়।

আবেদন করা, অনুমোদন দেওয়া আর টাকা বিতরণ করা আলাদা আলাদা ক্ষমতা, যা কোড না ছুঁয়েই প্রতিটি ভূমিকার (অ্যাডমিন, ম্যানেজার, মাঠকর্মী, মনিটর ও সদস্য) জন্য চালু করা যায়, কিংবা নির্দিষ্ট একজন ব্যক্তিকে দেওয়া যায়। বোতাম লুকিয়ে রাখা নয়, অনুমতির কাঠামোই ঠিক করে কোন ভূমিকা কী দেখতে ও করতে পারবে, শাখার কর্মীরা শুধু নিজেদের শাখাই দেখেন, আর নিরীক্ষা লগে লেখা থাকে কে কী বদলেছেন।

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 - একটি পারফর্মার মার্কেটপ্লেসের অ্যাডমিন ড্যাশবোর্ড

যে অ্যাডমিন ড্যাশবোর্ড দিয়ে CoverFanz-এর প্রতিষ্ঠাতা লঞ্চের দিন থেকেই কোনো ডেভেলপারকে জিজ্ঞেস না করে একটি পারফর্মার মার্কেটপ্লেস চালিয়েছেন। প্রতিটি ফ্যান, পারফর্মার ও ভেন্যু থাকে একটি তালিকায়, সঙ্গে তাদের সাবস্ক্রিপশনের অবস্থা, নতুন ভেন্যু ঠিকানা যাচাই না হওয়া পর্যন্ত একটি অনুমোদনের সারিতে অপেক্ষা করে, রিপোর্ট আসে কারণসহ, আর পারফরম্যান্সের ধরনগুলো প্রতিষ্ঠাতার নিয়ন্ত্রণে থাকা একটি তালিকা। এটি অ্যাপগুলোর সঙ্গে একই মাসে, একই GraphQL API-র ওপর তৈরি।

Md Moniruzzaman Image

Md Moniruzzaman

এপ্রিল 29, 2022

Amr Mashrah
Webanion brand logo

Webanion - MCP সার্ভারসহ হেডলেস CMS পোর্টফোলিও প্ল্যাটফর্ম

একটি স্ট্যাটিক পোর্টফোলিও সাইট পাঁচটি ভাষায় কাজ ধরে রাখতে পারত না, লেখার গতির সঙ্গেও তাল মেলাতে পারত না, তাই সেটির জায়গায় আমরা একটি প্ল্যাটফর্ম বানিয়েছি। একটি হেডলেস CMS প্রতিটি কেস স্টাডি, নিবন্ধ ও রেকর্ড ধরে রাখে; একটি Next.js ফ্রন্টএন্ড সেগুলো ইংরেজি, বাংলা, স্প্যানিশ, হিন্দি ও চীনা ভাষায় দেখায়; আর একটি MCP সার্ভার সেই একই কনটেন্ট AI সহকারীদের কাছে খুলে দেয়, ফলে এই কাজ নিয়ে প্রশ্ন করা কোনো এজেন্ট স্ক্র্যাপ করা তথ্য থেকে অনুমান না করে সরাসরি উৎস পড়ে। সার্চ, মিডিয়া ব্যবস্থাপনা, অনুমোদনের প্রবাহ এবং একটি পাবলিক ডিসকভারি স্তর সবই এর উপর চলে। প্রমাণটি পুনরাবৃত্ত: আপনি এখন যে পাতাটি পড়ছেন, সেটি এই এন্ট্রিতে বর্ণিত সিস্টেমই পরিবেশন করছে।

Md Moniruzzaman Image

Md Moniruzzaman

Sukalyan Research Group 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

সেপ্ট 30, 2026

Sukalyan Kumar Kundu, PhD
Read the Md Moniruzzaman blog

ব্লগটি প্রোডাকশনের ময়দান থেকে লেখা নোট: আর্কিটেকচারের সিদ্ধান্ত, বাস্তব ব্যবহারকারীর মুখোমুখি টিকে যাওয়া AI সিস্টেম, আর নিজের খরচ নিজে তোলা অবকাঠামো। কাজ থেকে লেখা, কাজ নিয়ে গল্প নয়।