Tuesday, February 24, 2026

Why I Built My Own Accounting Software

The next generation of business software won't come from the enterprise giants. It'll be small, purpose-built, and running on a machine in your office. It'll be operated by an AI agent instead of a human clicking through a web interface. And it'll keep your data exactly where it belongs — on hardware you own, under terms you set.

This sounds like a fantasy if you're thinking about software the way it's worked for the last twenty years. Massive platforms, millions of users, economies of scale driving everything toward consolidation. But the economics of building software have shifted so dramatically that the opposite is now viable: small apps, built for one company, operated by agents, sovereign by default.

I'm testing this thesis with my own accounting software. A full double-entry system — journal entries, chart of accounts, bank reconciliation, Schedule C reports. Rails, SQLite, running on a Mac in my office. Its primary operator is an AI agent. I built it in days, not months, and it does exactly what I need — nothing more, nothing less.

The Bookkeeper Is the Job That Changes

AI isn't going to destroy accounting software. It isn't going to destroy any category of software. What it's going to do is merge the building, implementation, and operation of software more deeply into our workflows.

This doesn't eliminate the need for an accountant. Tax strategy, financial planning, audit preparation — that's expert judgment, and I still want a human for it. What it eliminates is the bookkeeper. The person who categorizes transactions, reconciles statements, enters receipts, and keeps the ledger current. That's data entry with accounting rules, and an agent does it better — faster, more consistently, without getting bored or making Friday afternoon mistakes.

Every small business owner I know spends hours every month on bookkeeping they shouldn't be doing. Not because they're bad at it, but because the alternative — hiring a bookkeeper or paying their accountant $200/hour to do data entry — doesn't make sense at their scale. So they do it themselves, badly, late, and resent every minute.

An agent changes that math entirely. But only if the software is designed for the agent to operate. And that's where every existing tool falls short.

Why QuickBooks Doesn't Work for AI

I'm not anti-QuickBooks. I use it for another business where it makes sense — established workflows, an accountant who expects it, integrations with banking and payroll. But QuickBooks wasn't built for an AI operator. Every design decision assumes a human in the loop.

Categorization is manual. You either set up rules (which break when transactions vary) or you categorize each one by hand. There's no concept of "the agent categorized this with 94% confidence based on the vendor name and amount matching historical patterns."

Reconciliation is a chore. You open the reconciliation screen, match transactions one by one, confirm the balance. It's designed for a human clicking checkboxes on a Saturday afternoon. An agent should reconcile programmatically — match by amount, date, and description, flag mismatches, close the statement automatically when everything lines up.

The API is an afterthought. Intuit's API was bolted onto a product designed for browser-based interaction. Rate limits assume human-speed access. The data model exposes internal complexity that has nothing to do with accounting and everything to do with decades of product evolution. Building an agent that operates reliably through that API is an exercise in working around someone else's assumptions.

And then there's the part that bothers me most.

You're Paying to Be the Product

When you use QuickBooks, your financial records live on Intuit's servers. Every transaction, every vendor name, every revenue figure, every expense category — all of it governed by their terms of service.

Intuit isn't just storing your data. They're mining it. They know what you spend, who you pay, how much you make, how your revenue trends quarter over quarter. They aggregate that across millions of businesses and sell the insights. You're paying $30/month for the privilege of being the product.

I don't trust them to keep it private. I don't trust them to limit how they use it. When you have financial data on millions of businesses, the temptation to monetize it is irresistible. Credit scoring, marketing data, competitive intelligence, trend reports sold to investors. You can buy the product from them, but you also become the product for them.

That's not a trade-off I want to make with my financial records. This is what data sovereignty actually looks like in practice — not a privacy policy, not an opt-out toggle. A database file on hardware I own, running software I control, operated by an agent that answers to me.

What Agent-Native Accounting Looks Like

So I built for an audience of one. One user, one company, one AI operator. That single constraint changes every design decision.

Tight validation over approval queues. Traditional accounting software assumes a human reviews everything. Mine enforces correctness at the model level — balanced journal entries, sign conventions, date validations, duplicate detection. The agent can't create a bad entry even if it tries. No staging area, no "pending review" queue. The system itself is the reviewer.

Confidence scoring on every transaction. When the agent categorizes an expense, it records how confident it is. High confidence entries flow through automatically. Low confidence ones get flagged. I review exceptions, not everything.

Reversal entries over deletion. Standard accounting practice, but critical for AI operations. If the agent makes a mistake, it creates a correcting entry rather than deleting the original. Full audit trail, always. You can trace every decision.

Local OCR for receipts. Apple's Vision framework processes receipt images directly on the machine. No tokens spent, no data leaving the device, instant results. The agent reads a receipt, creates the transaction, attaches the source document — all without a single API call to a cloud service.

An API designed for agents. Bearer token auth, idempotency keys (so the agent can retry safely), pagination, comprehensive filtering. The API is a thin JSON layer over the models — all business logic lives in the models themselves. Whether data comes through the web UI, the API, or a console, the same rules apply.

No features I'll never use. No invoicing module. No payroll. No inventory tracking. No multi-currency support. Every screen shows exactly what matters for a software holding company, nothing else. This is bespoke software applied to one of the most standardized categories in business.

No subscription. It runs on hardware I already own. The database is a single file I can back up by copying it. The total development time was measured in days, not months — that's the cost per outcome math working in real life.

The Bigger Shift

This isn't really about accounting. It's about a pattern that applies across every category of business software.

The tools designed for human operators make bad platforms for AI operators. Project management tools assume humans will update task status. Expense trackers assume humans will snap photos of receipts. Scheduling tools assume humans will drag and drop. Every one of these was designed around human attention as the bottleneck — and every one becomes awkward when an agent is the primary operator.

The current wave of "AI-powered" tools is mostly existing software with an LLM bolted to the side. A copilot in your spreadsheet. A chatbot in your project tracker. The underlying software was designed for human operators, and the AI is an add-on that helps the human go faster.

The next wave looks different. Software where the building, the implementation, and the daily operation merge into your workflow. You describe what you need. An agent builds it. Another agent operates it. You review the output when something needs your attention.

  • Validation replaces review — the system enforces constraints that make bad outputs impossible
  • Confidence scoring replaces binary categorization — "office expense (97% confidence)" instead of a dropdown menu
  • Audit trails replace trust — every action logged with reasoning
  • APIs are the interface, not the afterthought — agents don't need pretty dashboards
  • Local-first by default — no reason your business data needs to live on someone else's servers

This won't happen overnight, and it won't happen everywhere. Complex enterprise software with decades of integrations won't get rebuilt from scratch. But for small businesses, solo operators, and anyone running a lean operation — the tools that fit how they actually work are going to be tools built specifically for them, operated by agents, running on their own hardware.

I didn't build my own accounting software because I'm smarter than Intuit's engineering team. I built it because I got tired of doing a machine's job every Sunday night, tired of paying a company to mine my financial data, and ready to hand the bookkeeping to an agent that works for me — running on my machine, under my control, with my data staying exactly where it belongs.