AG

Case study · Lending and wallets

Novopay and IDFC: an open-source lending and wallet core at bank scale

By · Published · Updated

IDFC Bank's new Bharat Banking division needed rural group lending, and Novopay needed a ledger for its agent wallet network. I was architect and lead engineer on the Apache Fineract-based lending and wallet core that served both.

Client
Novopay, for IDFC Bank's Bharat Banking division
When
2014 – 2018
My role
Architect and lead engineer, Fineract lending engine and wallet ledger
Stack
Apache Fineract (Mifos X), Java, MySQL, tablet and biometric field onboarding, LDAP
Outcome
Lending engine complete by 2014–15 and IDFC's instance configured end to end; the same ledger ran 50,000+ agents and over US$1 billion a year of Novopay transactions (Novopay's figures)

The problem

IDFC received its banking licence in 2014 with a mandate to serve rural India. Its Bharat Banking division needed joint-liability group (JLG) and micro-enterprise lending through business correspondents in the field, without buying a legacy core banking system.

The outcome

What shipped, when

WhenMilestone
Aug 2014Lending engine presented to IDFC: group and individual products, onboarding, full loan lifecycle
Oct 2015Product suite: assets architecture, ML credit-scoring design, loan-officer route planning
Nov 2017Solution architecture document v1.0
Apr 2018Solution architecture v2.0: active/active DMZ and TOTP second factor
2018Production support for foreclosure, accrual and batch jobs

How it worked

Instead of a new core, both businesses ran on Apache Fineract, extended where banking rules demanded it:

IDFC Bharat Banking JLG and micro-enterprise loans via business correspondents Novopay agent network retailer, merchant and consumer wallet apps Apache Fineract core one Fineract codebase, extended once for both appropriation order · provisioning classes priority-sector and FATCA tags · accrual rules
One core, two businesses. Provisioning, appropriation and regulatory tagging are implemented inside the Fineract core, so every report and batch job sees the same rules.

The 2018 architecture: security and scale

The solution architecture document for IDFC's lending platform went to v2.0 in April 2018. It described a loan web application used by branch, zonal and head-office staff, reachable over the internet and inside the bank's network, sized for 750 simultaneous users with a target response of about three seconds. Version 2.0 added an active/active DMZ and a TOTP second factor (RFC 6238, eight digits, a 15-second step, with a two-step window each way for clock skew). Every integration, from the credit bureau and UIDAI eKYC to the bank's core banking, reconciliation and limit-management systems, was SOAP. Machine-learning credit scoring, designed in 2015, was explicitly out of scope for the loan pilot.

Tradeoffs worth keeping

What this account leaves out, and why

IDFC's go-live date and its loan, borrower and branch volumes are not in any record I hold, so I don't quote them. The scale figures above are Novopay's own, from its Mifos case-study responses, and the engine's feature list comes from the August 2014 status presentation and the solution guide. What I would do differently is on the knowledge-transfer side: buyers doubted free software and learned it slowly through partners at marked-up rates. Writing the regulatory arithmetic down in the solution guide helped; publishing it earlier, as configuration rather than tribal knowledge, would have helped more.

← All case studies