Shoebox: a bookkeeper for freelancers that never sees your bank statement
Description and use
Shoebox is a browser‑based bookkeeping tool that auto‑categorizes freelancer bank statements into Schedule C tax categories, learns from user corrections, and outputs tax summaries, all without uploading data to a server.
Problem
Freelancers spend a weekend manually categorizing bank statements, risking errors and relying on paid services that expose sensitive data.
Outcome
Shoebox reduces manual clicks from 17 to zero after learning, processes 321 transactions in ~3.5 s, and eliminates the need for server‑side data handling.
Workflow
- Upload CSV from any bank or card
- Shoebox guesses column mapping and shows preview
- User fixes mapping if needed
- Shoebox sorts transactions into Schedule C categories using embedding model
- Lines with confidence ≥0.5 are filed automatically
- Uncertain lines appear in a grouped "Needs review" list
- User answers merchant questions, creating rules
- Shoebox updates future classifications
- Shoebox aggregates totals, estimates taxes, and exports CSV/Markdown or prints
Evidence
Shoebox guesses which column is which (one amount column or separate debit/credit, day-first dates, cards that list purchases as positive numbers) and shows a preview so you can fix it.
It sorts every transaction into US Schedule C categories: meals, travel, software, contract labor, personal, transfers and so on.
The AI runs inside your browser tab. There's no server, no account, no bank login and no analytics.
After the first visit it works with Wi‑Fi off.
The model runs in a Web Worker through Transformers.js and ONNX Runtime Web, on the CPU.
The first version scored below chance. That was my bug: I'd prefilled the answer with "Answer:" (trailing space)... Fixed, multiple choice was still worse than the small model alone.
321 transactions from 65 merchants, sorted in about 3.5 seconds on a laptop CPU; 72 lines from 17 merchants flagged for review; 17 clicks to clear them; 0 lines wrong at the end.
- Record date: 2026-10-15T09:40:58.543Z