Jeremiah Kasuzumira
Credit Visibility
SQL
R
Concept Study

Credit Visibility — Alternative Credit Score for the Unbanked Majority

Most Malawians are active on Airtel Money or TNM Mpamba but invisible to formal credit — no bank loan history means no credit file. This combines mobile money and bank transaction patterns into a plain-language credit score, built for people who've never had one before, not for people refining an existing FICO-style number.

⚠ Design & analytics prototype — Airtel Money / TNM Mpamba have no public developer API. Real deployment would require formal partnership and RBM regulatory approval. Data shown is illustrative.
User's Screen
Good afternoon
Chikondi's Score
Building
612
out of 1,000
▲ +18 points this month
▲ 6 months of steady weekly Airtel Money inflows
▲ No missed mobile loan repayments in 12 months
▲ Regular small savings deposits every payday
▼ Savings balance is low compared to income
▼ No bank account linked — caps your score below 750
Next step: Linking a bank account — even one with a low balance — can unlock up to 150 more points by showing a fuller financial picture.
Link bank account →
Score
History
Learn
Profile
How the Score Is Calculated
Five weighted factors, built from transaction data — not a single number pulled from a bureau that doesn't have a file on most users
Cash flow consistency
Regular inflows vs. erratic income
30%
Savings behavior
Frequency and consistency of deposits
25%
Repayment history
Mobile loans, airtime credit, bill payments
20%
Account longevity
How long accounts have been active
15%
Financial diversity
Number of linked, active account types
10%
Design principle: A score can be calculated from partial data. Someone with only Airtel Money linked still gets a score and a path to improve it — the system never blocks a user just because they lack a bank account, which is the whole point of the product.
Methodology — SQL & R
Feature engineering happens upstream of the score. SQL aggregates raw mobile money and bank transaction logs into behavioral features per user, per month. R fits the weighting model and outputs the 0–1,000 score and tier.
SQLmonthly feature aggregation
-- One row per user per month: the inputs
-- the scoring model actually consumes
SELECT
  user_id,
  DATE_TRUNC('month', txn_date) AS month,
  COUNT(DISTINCT DATE_TRUNC('week', txn_date))
    AS active_weeks,
  SUM(CASE WHEN txn_type = 'inflow'
      THEN amount ELSE 0 END) AS total_inflow,
  SUM(CASE WHEN txn_type = 'savings_deposit'
      THEN 1 ELSE 0 END) AS savings_events,
  SUM(CASE WHEN txn_type = 'loan_repayment'
           AND on_time = true THEN 1
      ELSE 0 END) AS on_time_repayments,
  MIN(account_opened_date) AS earliest_account,
  COUNT(DISTINCT source_platform) AS linked_sources
FROM transactions
GROUP BY user_id, DATE_TRUNC('month', txn_date);
Rweighted score + tier assignment
# Normalize each feature 0-1, apply
# fixed weights, scale to a 1000-pt score
weights <- c(
  cash_flow  = 0.30, savings   = 0.25,
  repayment  = 0.20, longevity = 0.15,
  diversity  = 0.10
)

score_row <- function(features, weights) {
  normalized <- pmin(features, 1)  # cap at 1
  raw <- sum(normalized * weights)
  round(raw * 1000)
}

assign_tier <- function(score) {
  cut(score,
    breaks = c(-Inf, 400, 650, 800, Inf),
    labels = c("Starting", "Building",
               "Good", "Strong")
  )
}
Design Notes — Low-Income & Low-Literacy Context

Tiers ("Building," "Good," "Strong") sit above the raw number because a bare score out of 1,000 means little to someone who's never had a credit file — the tier gives an instant read without requiring numeric literacy or prior context. Every factor is written in plain cause-and-effect language ("no bank account linked — caps your score") rather than financial jargon like utilization ratio or debt-to-income. The score computes from whatever accounts are linked; a user with only one mobile money account still gets a usable score and a next step, rather than being told to come back once they qualify — reversing the usual credit-access catch-22 is the actual product, not the score itself.

Scope note: This is a portfolio concept and analytics prototype. Airtel Money and TNM Mpamba do not expose public transaction APIs, so a real version would require a formal data-sharing partnership with each provider and registration with the Reserve Bank of Malawi as a credit reference or fintech service. The scoring weights above are illustrative, modeled on how alternative credit scoring products (Tala, Branch, First Access) structure similar features — not derived from real Malawian transaction data.