๐Ÿš€ Public Beta Live • v0.1.0-beta • MIT Licensed

Stop Manually Logging Every Bank Transaction

An open-source Android app that detects transaction SMS in real-time and sends them to your self-hosted Firefly III โ€” with one tap. No cloud. No tracking. 100% yours.

0

App Screens

0

Bank Formats

0

Private & Local

Firefly SMS Scanner Unified Dashboard and Transaction Stream

Everything You Need for Effortless Finance Tracking

From real-time SMS detection to a full transaction editor โ€” built for the Firefly III community.

๐Ÿ“ฉ

Real-Time SMS Detection

Runs silently in the background. The moment a transaction SMS arrives, you get an actionable notification โ€” tap to send to Firefly or review first.

๐Ÿ“…

Date-Range SMS Scanning

Scan your entire inbox for any date range with quick-select chips: Today, 3 Days, 7 Days, 30 Days, 90 Days, or use the full Material3 date picker.

๐Ÿฆ

Abacus-Style Transaction Editor

Before submitting, enrich each transaction with category, budget, source/destination accounts, tags, and editable description โ€” all fetched from your Firefly instance.

๐Ÿ”„

Bi-Directional Sync & Update

One-tap sync of metadata. Plus, bi-directional transaction reconciliation allows you to edit already sent transactions directly from the app.

๐Ÿ””

Smart Notifications

Heads-up notifications with "โšก Send to Firefly" and "Review & Edit" actions. Submit transactions without even opening the app.

๐Ÿง 

Smart Rules & Vendor Directory

Create powerful IF/THEN automation rules with custom description templates, variable chips ({vendor}, {amount}, {budget}, etc.), live preview, budget assignment, and 1-tap rule generation from detected vendors.

๐Ÿ›

Built-in Debug Log

Timestamped in-app log of every API call, SMS read, and parse decision. Export as plain text for easy issue reporting.

Up and Running in 4 Simple Steps

Connect to your Firefly III instance and start logging transactions automatically.

1

Install the App

Download the APK from GitHub Releases or build from source in Android Studio.

2

Connect to Firefly III

Enter your Firefly III base URL and Personal Access Token. Tap "Test Connection" to verify.

3

Grant Permissions

Allow READ_SMS, RECEIVE_SMS, and POST_NOTIFICATIONS so the app can detect and alert you.

4

Start Tracking!

Use the unified 3-tab interface: Home for transactions & date-range inbox scans, Rules for smart automations & merchant detection, and Settings for configuration. The background receiver catches new SMS automatically.

See It In Action

Built with Jetpack Compose and Material3 for a modern, native Android experience.

Unified Dashboard with real-time spend metrics and transaction stream
โญ Unified Dashboard
Transaction Editor sheet with categories, budgets, tags, and Firefly update
Transaction Editor
Modal Rule Editor sheet with dynamic templates, live preview, and variable chips
Dynamic Rule Editor
Automation Rules list and Detected Vendors directory
Rules & Vendors
Settings screen with live detection status and bi-directional sync
Settings & Sync
Real-time SMS detection notification with instant action buttons
Notification Alert

Built With Modern Android Tech

Clean architecture, minimal dependencies, and built for contributors.

๐ŸŸฃ

Kotlin

Primary language with coroutines for async

๐ŸŽจ

Jetpack Compose

Declarative UI with Material3

๐ŸŒ

Retrofit 2

Type-safe Firefly III API calls

๐Ÿ”’

OkHttp 4

HTTP client with auth interceptor

๐Ÿงญ

Navigation Compose

Screen routing & deep links

๐Ÿ“ฆ

ViewModel

Lifecycle-aware state management

๐Ÿ“ก

BroadcastReceiver

Live SMS interception

๐Ÿ”ง

SharedPreferences

Lightweight settings persistence

Clone and build from source:

git clone https://github.com/swaraj429/firefly-3-sms-auto-scanner.git

Where We're Headed

Help us build the future of open-source personal finance automation.

โœ… Done

v0.0.1-alpha โ€” Initial Release

Real-time SMS detection, basic parsing, notification actions, Firefly III API integration, and setup UI.

โœ… Done

v0.0.2 โ€” UI Revamp & Smart Rules

Tabbed navigation interface, rule-based auto-categorization, improved transaction editor, and enhanced user experience.

โœ… Done

v0.0.3-alpha โ€” Persistence & Debugging

Persistent SMS history via Room DB, 30-day retention, hash-based deduplication, in-app Database Viewer, and fixed Account Auto-matching.

โœ… Done

v0.0.4-alpha โ€” Dismissals & Advanced Rules

Dismissal and restore workflows, smart rule builder UI.

โœ… Done

v0.0.5-alpha โ€” Bi-Directional Sync

Bi-directional sync logic, updating sent transactions, UI uncluttering.

๐Ÿš€ Released

v0.1.0-beta โ€” Public Beta Release

Modern Bottom Sheet Rule Editor, Detected Vendors directory, Budget assignment in rules, Live SMS Room account matching fixes, template live preview, and active community support readiness.

๐Ÿ”ฅ In Progress

v1.0 โ€” General Availability

Production release on Google Play & F-Droid, extended international bank format coverage, and widget enhancements.

๐Ÿ”ฎ Planned

Auto-Send Mode

Skip review โ€” automatically submit all detected transactions to Firefly III instantly.

๐Ÿ”ฎ Planned

Multi-Account & International Support

Multiple Firefly III accounts, EU/US bank SMS formats, CSV import, and a spending widget.

Your Data Stays On Your Device

We believe personal finance data should remain personal. Period.

๐Ÿ 

100% Local Processing

SMS content is parsed entirely on your device. Nothing leaves your phone except to YOUR Firefly III instance.

๐Ÿšซ

Zero Tracking

No analytics, no crash reporting, no third-party SDKs. No data collection of any kind.

๐Ÿ”“

Fully Open Source

Every line of code is on GitHub. Audit it yourself. MIT licensed โ€” fork it, modify it, own it.

๐Ÿฆ

Self-Hosted Only

Connects exclusively to your self-hosted Firefly III. No intermediary servers. Your infrastructure, your rules.

Frequently Asked Questions

Firefly III is a free, open-source, self-hosted personal finance manager. It lets you track transactions, budgets, and accounts on your own server. This app acts as a bridge between your bank SMS and Firefly III.

Currently, the parser supports most Indian banking formats (SBI, HDFC, ICICI, Axis, Kotak, and more). The regex-based parser catches common patterns like "debited Rs.X" and "credited INR X". Adding new bank formats is the easiest way to contribute!

No โ€” iOS does not allow apps to read SMS messages for privacy reasons. This app is Android-only (8.0+).

Yes. All SMS processing happens locally on your device. The app only communicates with YOUR self-hosted Firefly III instance. No third-party servers are involved. The source code is fully open for audit.

Yes! We have launched the Public Beta (v0.1.0-beta). The core flowsโ€”live SMS capture, smart rule automation with budget assignment, vendor discovery, Room database persistence, and bi-directional Firefly III syncโ€”are stable for daily use. We actively support the app and welcome all bug reports and feature requests on GitHub!

The most impactful contribution is sharing bank SMS patterns or reporting bugs. You can also improve documentation, UI, or suggest features. Check our GitHub Issues and CONTRIBUTING.md guide for detailed instructions.

Help Build the Future of Open-Source Finance

Whether you're adding a new bank SMS format, fixing a bug, or improving documentation โ€” every contribution matters. Let's make personal finance automation accessible to everyone.

MIT

License

Kotlin

Language

Android 8+

Minimum SDK