AILF Ledger · Agentic UX, designed and shipped
A conversational ledger that never saves without asking
QuickBooks was built for accountants, not for the two founders actually doing the books. I designed and built LF Ledger: auto-categorized expenses, synced income, and an assistant you can tell what happened in plain language.
- Role
- Design and build, solo
- Status
- Deployed
- Stack
- Google Sheets, Drive, Netlify
- Built with
- Claude Code
- Challenge
- Accounting software built for accountants, not for the people doing the work.
- What I did
- Designed and built a ledger with an AI assistant, auto-categorization, and bank and Stripe sync.
- Outcome
- QuickBooks replaced, and nothing depends on manually exporting reports.
Record a payment in plain language. Nothing is saved until you confirm. Sample data.
| Customer | Paid | Balance | Last change |
|---|---|---|---|
| Riverside HighTeam license | $400.00 | $800.00 | You |
| Lakeview Wrestling ClubTeam license | $1,200.00 | $0.00 | Stripe sync |
| North Ridge AcademyPayment plan, 3 of 4 | $900.00 | $300.00 | Bank sync |
The problem
LuchaFit is run by two founders who are not accountants. QuickBooks asked them to think like one: chart of accounts, reconciliation screens, and categories in tax language. Meanwhile, the real work kept getting harder. Team deals came with payment plans, checks arrived alongside Stripe payouts, and keeping track of who still owed money lived in a spreadsheet.
- The usersTwo founders logging expenses from a phone, usually right after buying something.
- The real jobKnow where the money is, who owes what, and hand clean books to an accountant at tax time.
- The constraintLean. No subscriptions to replace a subscription, and no new logins.
How it came together
- 01RequirementsListed what both founders actually do each week, and what the accountant needs at year end.
- 02PrototypePrototyped in a Claude chat artifact to test the flows before writing production code.
- 03Version 1Shipped expense logging with receipt photos and categorization suggestions.
- 04Version 2Rebuilt around automation: bank and Stripe sync, receivables, and the assistant.
Two times I changed my mind
The most useful decisions came from noticing how the founders actually worked, then reversing earlier plans.
Monthly bank statement imports
Automatic bank sync through SimpleFIN, chosen over Plaid for cost
WhyMonthly imports meant the books were always weeks behind. The goal became that nothing depends on manually exporting reports.
Move receivables out of the leads spreadsheet and into the app
Keep the spreadsheet and sync it with the app both ways
WhyThe founders like typing notes and status by hand in that sheet. Replacing a workflow people like costs more than it saves.
Designing the assistant
Payments and payment plans are the messiest part of the books, so that’s where the assistant lives. You tell it what happened the way you’d text it, and it proposes a change.
Let the assistant write directly to the ledger
Show the exact change as a before-and-after diff, and save only after confirmation
WhyMoney is high stakes and AI misreads happen. A visible diff makes errors easy to catch, and confirming takes one tap.
- Every change shows who made it. The history is timestamped and marks each change as made by a person or by automation, so you can always tell what the AI or a sync did.
- Plain language in, structured data out. The assistant handles the mapping, so the founders never have to learn the data model.
Categories people understand
Expenses are auto-categorized to IRS-compliant categories but shown in everyday words. When you recategorize one vendor, the app offers to update all of that vendor’s entries at once, so a single fix cleans up the whole history. The original plan also included importing past tax returns so the app could learn recurring patterns from prior filings.
Lean by design
- Google Sheets as the database and Google Drive for receipt photos, so the data stays readable without the app and the accountant can always get to it.
- No new logins, and a shared password for the two founders instead of a full account system.
- Read-only Stripe sync, with reconciliation of payouts against bank deposits and of checks against statement lines.
- A home-screen app for the phone, and a QuickBooks-style export for whoever does the taxes.
What’s next
Next on the list: receipts pulled straight from Gmail, connections to the store and print-on-demand platforms, due-date reminders for payment plans, and tax set-aside and 1099 tracking.