Johnn.Nalwa
Monetrax
all projects
mobile

Monetrax

Android personal finance app that parses M-Pesa and bank SMS messages into structured financial records — giving users income tracking, expense analysis, and balance monitoring without manual data entry.

KotlinAndroidJetpack ComposeRoomSQLiteKotlin CoroutinesSMS API

/// overview

Developed a personal finance application for Android that automatically reads and parses M-Pesa and bank transaction SMS messages using regex-based pattern matching and NLP preprocessing. Converts raw messages into structured financial records: categorized transactions, merchant identification, balance tracking, and spending trend analysis.

The problem

Most Kenyans manage money across M-Pesa and bank accounts, receiving dozens of SMS confirmations daily. There's no automated way to turn those messages into a financial picture without manual input into a spreadsheet.

The approach

Built a native Android app in Kotlin with background SMS ingestion using the Android SMS content provider. Implemented a parser pipeline that handles M-Pesa, Equity, KCB, and Co-op Bank message formats. Used Room for local storage, Kotlin Coroutines for async processing, and Jetpack Compose for the dashboard UI. Added category inference and merchant name normalization.

Outcome

Zero-input financial tracking: users install once and immediately see categorized income, expenses, balances, and trends derived automatically from existing SMS history.