Skip to content

PennyWise automatically reads transaction SMS messages and transforms them into organized financial data with on-device AI assistance. No manual entry, no cloud processing, complete privacy.

License

Notifications You must be signed in to change notification settings

sarim2000/pennywiseai-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

PennyWise AI Banner GitHub stars License Android Kotlin Privacy Downloads F-Droid GitHub release GitHub last commit Discord

PennyWise AI — Free & Open‑Source, private SMS‑powered expense tracker

Turn bank SMS into a clean, searchable money timeline with on-device AI assistance. 100% private, no cloud processing.

Star us on GitHub — join 100+ supporters!

Share Share Share Share

Overview

For Android users worldwide who want automatic expense tracking from bank SMS — clean categories, subscription detection, and clear insights. Supporting 40+ banks across 5 countries with multi-currency capabilities.

Get it on Google Play Get it on F-Droid

How it works

  1. Grant SMS permission (read‑only). No inbox changes, no messages sent.
  2. PennyWise parses transaction SMS, extracts amount, merchant, category, and date.
  3. View analytics, subscriptions, and the full transaction timeline — with on-device AI assistant for insights.

Why PennyWise

  • 🤖 Smart SMS Parsing - Automatically extracts transaction details from 40+ banks across 5 countries
  • 🌍 Multi-Currency Support - Native support for ₹, $, د.إ, ₨, ብር with proper localization
  • 📊 Clear Insights - Analytics and charts to instantly see where money goes
  • 🔄 Subscription Tracking - Detects and monitors recurring payments
  • 💬 On-device AI Assistant - Ask questions like "What did I spend on food last month?" locally
  • 🏷️ Auto‑Categorization - Clean merchant names and sensible categories
  • 📤 Data Export - Export as CSV or PDF for taxes or records

Supported Banks & Countries

Supporting 41+ banks across 5 countries with multi-currency capabilities:

🇮🇳 India (34 banks) - INR ₹

  • HDFC Bank, State Bank of India (SBI), ICICI Bank
  • Axis Bank, Punjab National Bank (PNB), IDBI Bank
  • Indian Bank, Federal Bank, Karnataka Bank
  • Canara Bank, Bank of Baroda, Jio Payments Bank
  • Jupiter (CSB Bank), Amazon Pay (Juspay), Kotak Bank
  • IDFC First Bank, Union Bank, HSBC Bank
  • Central Bank of India, South Indian Bank, JK Bank
  • Indian Overseas Bank, Airtel Payments Bank, AMEX
  • OneCard, UCO Bank, AU Bank, and more...

🇺🇸 USA (4 banks) - USD $

  • Citi Bank, Discover Card, Old Hickory Credit Union, Charles Schwab

🇦🇪 UAE (2 banks) - AED د.إ

  • First Abu Dhabi Bank (FAB)
  • Abu Dhabi Commercial Bank (ADCB)

🇳🇵 Nepal (2 banks) - NPR ₨

  • Laxmi Sunrise Bank, Everest Bank

🇪🇹 Ethiopia (1 bank) - ETB ብር

  • Commercial Bank of Ethiopia (CBE)

More banks being added regularly! Request your bank →

Privacy First

All processing happens on your device using MediaPipe's LLM. Your financial data never leaves your phone. No servers, no uploads, no tracking.

Screenshots

Home Analytics AI Chat Subscriptions Transactions

Quick Start

# Clone repository
git clone https://github.com/sarim2000/pennywiseai-tracker.git
cd pennywiseai-tracker

# Build APK
./gradlew assembleDebug

# Install
adb install app/build/outputs/apk/debug/app-debug.apk

Requirements

  • Android 12+ (API 31)
  • Android Studio Ladybug or newer
  • JDK 11

Tech Stack


Architecture: MVVM • Jetpack Compose • Room • Coroutines • Hilt • MediaPipe AI • Material Design 3

Community & Support

  • Discord: Join the community, share feedback, and get help — Join Discord
  • Issues: Report bugs or request features — Open an issue

Contributing

See CONTRIBUTING.md for guidelines.

Please read our Code of Conduct before participating.

./gradlew test          # Run tests
./gradlew lint   # Check style

Security

Please review our Security Policy for how to report vulnerabilities.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Lucifer1590
Lucifer1590

👥 🐛 📓
akshaynexus
akshaynexus

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Star History

Star History Chart

License

MIT License - see LICENSE


DownloadReport BugRequest Feature

About

PennyWise automatically reads transaction SMS messages and transforms them into organized financial data with on-device AI assistance. No manual entry, no cloud processing, complete privacy.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors 5

Languages