Convert M-PESA Statement PDFs to CSV/Excel with Advanced Analytics
A desktop application built with Tauri, React, and TypeScript that converts M-PESA statement PDFs to CSV/Excel files with comprehensive financial analytics.
- PDF to CSV/Excel Conversion - Extract M-PESA statement data with high accuracy using Tabula
- Password-Protected PDFs - Seamlessly handle encrypted PDF files
- Multiple Export Formats - Export as CSV or Excel (XLSX) with advanced formatting
- Paybill Statement Support - Full support for both regular and paybill M-PESA statements
When exporting to Excel, optionally include:
- Charges & Fees Sheet - Separate breakdown of all transaction charges and fees
- Financial Summary - Comprehensive analysis with cash flow, spending patterns, and insights
- Monthly & Weekly Breakdown - Pivot-like tables with time-based aggregations
- Daily Balance Tracker - Day-by-day balance monitoring with spending pattern analysis
- Transaction Amount Distribution - Categorized transaction analysis by amount ranges
- Date Range Filters - Export specific time periods
- Transaction Type Filters - Filter by transaction categories (payments, withdrawals, deposits, etc.)
- Amount Range Filters - Focus on transactions within specific amount ranges
- Custom Date Formatting - Choose your preferred date format for exports
- 100% Local Processing - Your statements never leave your computer
- Fast & Efficient - Powered by Tabula for accurate PDF table extraction
- Modern UI - Beautiful, intuitive interface with theme support
- Auto-Updates - Stay up-to-date with the latest features automatically
Download the latest release for your operating system from the Releases page:
| Platform | Download |
|---|---|
| Windows | .exe installer |
| macOS | .dmg file (Intel & Apple Silicon) |
| Linux | .AppImage (portable) or .deb package |
The application includes automatic update functionality. When a new version is available, you'll be prompted to update directly from within the app.
- Launch the application
- Select your M-PESA statement PDF by clicking "Select PDF File" or drag and drop
- Enter password (if your PDF is password-protected)
- Choose export options:
- Select format (CSV or Excel)
- Choose additional sheets for Excel export
- Apply filters (date range, transaction types, amounts)
- Select date format
- Process the statement - the app will extract and analyze your data
- Download your converted file with a single click
- Open the file directly from the success notification
- Node.js (v18 or newer)
- Rust (v1.70 or newer)
- pnpm (v10 or newer)
- Java JRE (for Tabula - automatically set up)
- Framework: Tauri v2 - Cross-platform desktop application framework
- Frontend: React + TypeScript
- Styling: Tailwind CSS + Radix UI
- PDF Processing: Tabula - Java-based PDF table extraction
- Excel Generation: ExcelJS
- CSV Generation: PapaParse
-
Clone the repository
git clone https://github.com/DavidAmunga/mpesa2csv.git cd mpesa2csv/app -
Install dependencies
pnpm install
-
Set up build JRE (automatic during build)
pnpm run setup-jre
-
Run in development mode
pnpm run tauri:dev
-
Build for production
pnpm run tauri:build
pnpm run dev # Run Vite dev server
pnpm run build # Build frontend
pnpm run tauri:dev # Run Tauri in development mode
pnpm run tauri:build # Build production app
pnpm run tauri:build:full # Build with full JRE (not minimal)
pnpm run setup-jre # Set up build JRE for TabulaWe welcome contributions! Whether it's bug reports, feature requests, or code contributions, we appreciate your help in making mpesa2csv better.
- Fork the repository
- Create a feature branch:
git checkout -b feat/your-feature-name - Make your changes and test locally
- Submit a pull request using our PR template
Please read our Contributing Guidelines for more details.
See CHANGELOG.md for a detailed list of changes in each version.
Your privacy is our priority. This application processes all data locally on your device. No data is sent to any external servers. Your M-PESA statements remain completely private and secure on your computer.
This project is licensed under the MIT License - see the LICENSE file for details.
- M-PESA by Safaricom
- Tabula - PDF table extraction
- Tauri - Desktop application framework
- All our contributors
If you find this project useful, please consider giving it a star
