LoanKard · Fintech

Building a lending platform an NBFC can be audited on

Loan origination, underwriting and collections for Indian NBFCs — and why the audit trail shaped the architecture more than the AI did.

01 — The problem

Smaller NBFCs and lenders run origination on spreadsheets and WhatsApp, then discover at audit time that they cannot reconstruct who approved what, on what basis, on which date.

The interesting engineering problem in lending is not scoring a borrower. It is proving, months later, exactly what the system knew and did at the moment of the decision.

That constraint rules out a lot of otherwise reasonable design choices — starting with updating rows in place.

02 — Decisions

What we chose, and what it cost

Every one of these had a cheaper option we deliberately didn't take.

Append-only decision records instead of mutable application rows

An application's state is derived by replaying its events rather than by reading a status column. Any decision can be reconstructed exactly as it stood, including the inputs the model saw.

The trade-off. Every read is more expensive and the queries are harder to write. We accepted slower reporting in exchange for never having to say 'we cannot tell you why that was approved'.

The model scores; a rule engine decides

Risk scores are inputs to policy, not the policy itself. Keeping deterministic rules in front of the score means an underwriter can explain an outcome without explaining a model, and policy can change without retraining.

The trade-off. Less headline-friendly than 'AI decides'. It also means two systems to maintain rather than one.

Collections as scheduled workflows rather than a reminders cron

Repayment chasing is stateful — a borrower who part-pays, disputes, or promises to pay on Friday needs a different next step. Modelling it as a workflow with explicit states kept that logic out of the notification code.

The trade-off. Significant upfront work for something a simple cron would have faked adequately in a demo.

03 — What shipped

  • Digital origination with KYC capture
  • Risk scoring over traditional and alternative data
  • Rule-based underwriting policy layer
  • Collections workflows with repayment tracking
  • Portfolio dashboards for risk and performance

Stack

Next.jsTypeScriptPostgreSQLSupabasePythonRazorpay

04 — What we’d do differently

We built the analytics dashboards before the exception tooling. In practice the people using a lending system spend their day on the applications that do not fit the happy path, and we were slower than we should have been to give them good tools for it.

Tell us what you're building.

One conversation to scope the work, meet the team, and get a proposal — usually within two business days.