Introduction
TaxHacker is a self-hosted, AI-powered accounting tool that automates the tedious work of processing receipts, invoices, and financial transactions. Upload a document and the LLM extracts vendor, amount, date, currency, and category, then organizes everything into a searchable, filterable ledger. It is built for freelancers, contractors, and small business owners who want to keep their financial data private and off third-party cloud services.
What TaxHacker Does
- Processes receipts and invoices via OCR and LLM analysis to extract structured financial data
- Categorizes expenses automatically using customizable prompts and category schemas
- Tracks income and expenses across multiple currencies with automatic exchange rate conversion
- Provides a filterable ledger view with date ranges, categories, and full-text search
- Exports data to CSV for import into spreadsheets or traditional accounting software
Architecture Overview
TaxHacker is a TypeScript application with a Next.js front-end and a Node.js back-end. Document processing works in two stages: first, OCR extracts text from uploaded images or PDFs; then the configured LLM (OpenAI, Google Gemini, or a local Ollama instance) analyzes the text using customizable prompts to produce structured JSON with amount, vendor, date, and category. Results are stored in a PostgreSQL database. The entire stack runs in Docker containers.
Self-Hosting & Configuration
- Deploy with Docker Compose; configure the LLM provider and API key in the
.envfile - Supports OpenAI, Google Gemini, and local Ollama models for fully offline operation
- Customize category schemas and extraction prompts to match your accounting needs
- Set base currency and enable automatic exchange rate fetching for multi-currency transactions
- Back up the PostgreSQL database and uploaded document files for data safety
Key Features
- AI-powered receipt scanning that extracts vendor, amount, date, and category from photos and PDFs
- Customizable LLM prompts so you can tune extraction logic for your specific document types
- Multi-currency support with automatic conversion to your base currency
- Full data privacy when paired with a local Ollama model for zero-cloud processing
- Clean ledger interface with filtering, search, and CSV export for tax preparation
Comparison with Similar Tools
- Firefly III — comprehensive personal finance manager with budgeting and bank imports; TaxHacker focuses specifically on AI-driven document processing and expense extraction
- Actual Budget — local-first budgeting app; TaxHacker targets receipt and invoice processing rather than budget planning
- Invoice Ninja — invoicing and payment platform for sending invoices to clients; TaxHacker is for processing incoming receipts and tracking your own expenses
- Paperless-ngx — document management with OCR; TaxHacker adds AI-powered financial data extraction on top of document ingestion
- Spreadsheets — flexible but manual; TaxHacker automates the data entry step with AI extraction and categorization
FAQ
Q: Can I use TaxHacker completely offline? A: Yes. Configure Ollama as the LLM provider and run a local model. All OCR and AI processing happens on your machine with no data leaving your network.
Q: What document formats are supported? A: TaxHacker accepts JPEG, PNG, and PDF uploads. The OCR engine processes images and scanned documents, while the LLM handles text extraction from both.
Q: How accurate is the AI extraction? A: Accuracy depends on document quality and the LLM model used. GPT-4 class models achieve high accuracy on standard receipts. You can review and correct any extraction before saving.
Q: Does it replace proper accounting software? A: TaxHacker is a data capture and categorization tool. It exports CSV for import into accounting software like GnuCash, QuickBooks, or spreadsheets for final tax filing.