Ethiopia's savings and credit cooperatives (SACCOs) hold years of repayment history for more than 8 million members, yet none of it reaches a credit bureau. At Amani Solutions, the fintech I founded, I built the pipeline that turns those cooperative records into explainable credit scores. Our first pilot ran with Ngat SACCO in Addis Ababa under a signed MOU.

The scoring pipeline, from cooperative ledgers to a loan committee report
The challenge
Member records sat across paper registers, Excel loan ledgers and Peachtree, and are now moving onto CRMS, Ethiopia's government cooperative records platform.
Every loan is backed by guarantors, so the book had zero formal defaults to learn from.
Loan committees need scores they can explain to members, not a black box.
What I built
Mapped CRMS end to end, 81 screens and 549 data fields, with the Addis Ababa Cooperative Commission's authorisation, then built Amani's API integration with the platform.
Wrote the CRMS user manual for SACCO staff.
Ingestion and cleaning for savings, shares, loans and ledger postings, with member ID matching across sources.
A weight-of-evidence scorecard in Python, with points, score bands and reason codes for every member.
Used late-payment penalties as the early-warning target, since the book had no defaults, and paired the scorecard with a zero-default bound on probability of default from my published technical note.

Sample member report with score, band and reason codes, shown for a synthetic member
Results
490 member records ingested and 374 members scored on the first pilot.
Gini 0.75 and KS 0.65 on the pilot book, holding up under 5-fold cross-validation.
Methods released as open, tested Python code on a synthetic book that mirrors the pilot.
Tools
Python, pandas, scikit-learn, weight-of-evidence binning, logistic regression, and Playwright for platform mapping.
Links
0 likes · 0 views · Nov 12, 2026
Built Amani's SACCO credit scoring pipeline and CRMS integration. First pilot scored 374 members at a Gini of 0.75.