TradeLedger
Inspiration
TradeLedger began with a simple problem: running a small trade business meant spending countless hours sorting receipts, matching purchases, categorizing expenses, and preparing records for bookkeeping. Existing solutions either relied heavily on cloud services, required extensive manual data entry, or acted as black-box AI systems that couldn't explain why they made a decision.
As the owner of a sprinkler repair company, I wanted software built for the realities of contractors—not office accountants. Receipts come from dozens of vendors, fuel stations, hardware stores, online purchases, and supplier invoices. Every mistake costs time, and every correction has to be traceable.
TradeLedger was created to eliminate that repetitive work while keeping the business owner in complete control of their financial data.
What I Built
TradeLedger is a local-first bookkeeping intelligence platform that automatically processes financial documents into audit-ready bookkeeping records.
The system can:
- Automatically detect and classify financial documents
- Extract vendors, dates, totals, taxes, payment methods, and line items
- Learn approved vendors and payment profiles
- Match receipts with bank transactions
- Route uncertain documents into a human review workflow
- Maintain a complete audit trail for every decision
Unlike many AI bookkeeping products, every document remains on the user's computer. No receipts or financial information are uploaded to external servers.
How I Built It
TradeLedger is written entirely in Swift using SwiftUI for the macOS interface.
Some of the core technologies include:
- SwiftUI
- SQLite with GRDB
- Apple's Vision OCR framework
- Local deterministic extraction engines
- Vendor and payment profile databases
- Multi-stage document processing pipeline
The application follows a layered architecture where each stage has a single responsibility:
Import
↓
OCR
↓
Classification
↓
Data Extraction
↓
Validation
↓
Review (if needed)
↓
History
Rather than depending on a large language model for every decision, TradeLedger primarily uses deterministic rules. If evidence is incomplete or conflicting, the document is safely routed for review instead of making a risky assumption.
Challenges
The biggest challenge has been balancing automation with accuracy.
Receipts vary enormously between vendors, stores, printers, and even register software updates. A Home Depot receipt looks nothing like a Costco fuel receipt, which looks nothing like an Amazon invoice.
Instead of chasing a generic OCR solution, I built vendor-specific extraction logic that understands the unique layouts and behaviors of each retailer while preserving a common processing pipeline.
Another major challenge was performance.
The goal was to process hundreds of receipts quickly without sacrificing accuracy. Through continuous optimization, deterministic processing reduced average processing time to roughly 1–2 seconds per document while maintaining transparent, repeatable results.
What I Learned
Building TradeLedger taught me that bookkeeping automation is less about "using AI" and more about designing trustworthy systems.
Some of the biggest lessons were:
- Deterministic systems build user trust because every decision is explainable.
- Human review should be treated as a feature, not a failure.
- Small business workflows differ dramatically from enterprise accounting software.
- Performance and reliability matter just as much as extraction accuracy.
- The best automation removes repetitive work while still allowing the business owner to stay in control.
Looking Ahead
TradeLedger continues to evolve toward becoming a complete financial operations platform for contractors and service businesses.
Future development includes:
- Inventory integration
- Mileage tracking
- Monthly financial review tools
- Intelligent bookkeeping assistance
- Expanded bank reconciliation
- Additional vendor-specific extraction engines
The long-term goal is simple:
Turn financial paperwork into an automated, transparent, and audit-ready workflow—without giving up ownership of your data.
Built With
- chatgpt
- codex
- xcode
Log in or sign up for Devpost to join the conversation.