24 May 202612 min read
Why I stopped using accounting software and built my own tool instead
How a bookkeeping itch I couldn't ignore turned into a product, and why the missing link isn't the tool that does the books, but the one that feeds it.

Founder, Billpal
About three years ago I started my own business. I had a laundry list of things I wanted to do: projects I'd been putting off for years, clients I wanted to work with, and finally building things, not slides. Bookkeeping was not on the list. Like most people who go independent, I figured out pretty quickly that the admin side of running a business is its own job, and that nobody is going to do it for you.
Back then Google Sheets felt like the obvious place to start. Free, flexible, already knew it inside out. And I genuinely meant to keep it tidy. That lasted about two months. In my defense, I am structured enough when the work is interesting. I am sloppy when it isn't. Bookkeeping never came close to meeting that bar.
So within a few months my receipts were everywhere. In my inbox. In my downloads. In the third drawer of my desk. In the glove compartment of a car I no longer owned by the time I went looking for them. I had a folder on my desktop called Receipts 2023. It was, mostly, empty. Go figure.
The end of every month was the same. A few hours of digging, a few hours of typing, a small voice in the back of my head asking is this really how you wanted to spend a Sunday evening. Tax season was that, multiplied. A long weekend of forensic accounting, a CPA who quietly judged me, and, if shit hit the fan, a small, expensive surprise from the tax office.
I tell people now that I didn't start a business to do bookkeeping. That gets a laugh, but it is also literally true. None of us did. And yet we all end up here.
Good products, wrong assumption
So I did the responsible thing and went looking for a proper setup.
Outsourcing was tempting but off the table at the time. Quotes started around €150–200 a month, which is a lot for someone in month four of a new business whose entire ask is please type my expenses into a spreadsheet so I can pass it on to my tax guy. In the early days, when every euro is allocated three times over, the math just didn't work. And back then, the job was too small to justify putting a person on it anyway.
So I went looking for software instead. I tried QuickBooks. FreshBooks. Sevdesk. Bonsai. Wave. Xero. Pick one, I almost certainly had a subscription at some point.
Don't get me wrong, they're good products. That isn't the issue. The issue is that they were all built for accountants. Chart of accounts. Double-entry. Assets vs. liabilities vs. equity. P&L statements. None of it is wrong. It's all standard accounting, professionally done. It's just that I am not an accountant, and I never wanted to become one. The whole point of running a small business is that you get to choose what you spend your day on. Most accounting tools quietly assume the opposite. Which is the long way of saying: accounting software is built for accountants. The rest of us are being asked to think like one. That's the bug.
Accounting software is built for accountants. The rest of us are being asked to think like one. That's the bug.
And the irony was that, despite all this functionality, these tools caused more work, not less. Now I had expenses to categorize, a customer to create, a supplier to add, records to link, and I still had to dig up the invoices before any of that mattered. The tool that was supposed to take work away was giving me more of it, just in a nicer UI. Not that the software needed replacing, or the accountant – both are fine at what they do. What was missing sat in between them: the layer that feeds both.
A few months in, I quietly canceled every sub and went back to spreadsheets. For what I actually needed, this was faster. People like to bash on Excel, but it is a genuinely flexible piece of software, and when your job is just write down what comes in and what goes out, very little beats a blank grid.
What no one seems to get right
But the bigger problem hadn't moved. I still didn't want to do any of it. And I wasn't going to outsource it either – partly out of stubbornness, partly because the money didn't make sense yet. But mostly because outsourcing doesn't save you the worst part. You still have to find every receipt yourself before anyone else can touch it.
Outsourcing doesn't save you the worst part. You still have to find every receipt yourself.
Every accounting tool has some version of the same tagline: spend less time on your finances and more time running your business. It's the right promise. Almost none of them keep it though. Once you actually use one, you realize "less time" mostly means "the same time, in a slightly nicer form". The typing didn't go anywhere. It just moved from point A to point B.
The reason, I think, is that they assume you want to handle everything yourself. The whole interface is wired so that, at the end of the month, you can produce a clean P&L and balance sheet. Everything you touch is in service of that one output – the chart of accounts, the asset and liability buckets, the customer and supplier tables, the expense categorization, you name it.
Two problems with that. The first is that I do not want to do any of it, period. The second is that I would not know how. I am perfectly happy paying someone to tell me what's deductible and what isn't, and to file my taxes so I don't end up in jail.
I am perfectly happy paying someone to tell me what's deductible and what isn't, and to file my taxes so I don't end up in jail.
But that's the thing: the clean P&L isn't even mine to produce. My accountant does that, and does it better than I ever would. What's missing is the layer underneath – the part that records what happened and hands it over clean. Get that right and everyone wins: I stop typing, and they get to skip the part of the job nobody went to school for. They shouldn't have to copy line items off a PDF either – it's simply not efficient.
What I actually need from a tool isn't help producing the books. It's help recording what happened, as automatically as possible, in a shape my tax advisor can pick up and finish – without either of us having to type anything by hand. That should be the entire job. At least that's how I see it.
The same is true for invoice generation btw. The form asks you to neatly fill in every line: customer, items, VAT, payment terms, due date. The reward is a beautifully formatted PDF, maybe 2% prettier than what a half-decent template gives you for free. But I write three or four invoices a month from a Word template. Swap the client name, swap the line items, save as PDF. A minute, maybe two. Doing the same in QBO takes three times as long, especially with a new customer. I don't need the generator.
What I'd actually want from a tool is the inverse: take the invoice I already wrote, read it, pull out the data, file it neatly on the bookkeeping side without me retyping a thing.
But that isn't even the worst part. The real volume is on the other side of the fence: bills coming in. And the workflow inside most tools is grim:
- You still search your own inbox. "Just forward your bills to this address" sounds clever until you realize you have to remember to forward each one. You don't. So at the end of the month, you still go digging.
- The PDF lands in the tool. You still type. Vendor, date, amount, VAT, currency. By hand. We've had reliable OCR for fifteen years and good language models for two, and somehow this is still my job. Why?
- You set up the records yourself. Every new vendor is a fresh form. A tool meant to remove paperwork starts by giving you more. But now it's digital. Cool.
- And then you reconcile. Manually. One-by-one. The transaction says one thing, the invoice another – amount off by a few cents, different currencies, vendor showing up as a cryptic code, date a few days late. The tool happily holds both sides. It just won't pair them reliably. So you click, a lot.
Most of this exists, I'm convinced, because of when these tools were originally built. Before REST APIs were standard. Before OCR was reliable. Before language models could parse a PDF. So they orchestrated the only thing they could orchestrate at the time: a place for you to type everything in by hand. The interfaces have got prettier since. The integrations have multiplied. But the basic shape of the work hasn't changed. Find the document, type the document, file the document.
The problem is that finding documents is still my task – my accountant cannot do this for me. And even if they give me some client portal where I can upload my bills, that only solves their side – it consolidates their intake. It does nothing for the part that actually hurts: the digging is still mine. And every small business owner knows that feeling, it's excruciating. So the real question is how we make this less painful for all of us – offload as much as possible to a machine, so I can spend less time searching, typing and filing, and more time on the question that actually matters: how do I pay less tax and keep more cash to grow the business?
None of which has to be true anymore. What I'd want from a tool today is the minimum interface to keep track of things, plus an intelligent operator behind it doing the typing on my behalf. Like a junior bookkeeper who quietly takes whatever you throw at them, types it neatly into a spreadsheet, and ships it off to your accountant at the end of the month. Most tools sell you the software and quietly leave you to be that operator. That's the bug I went looking to fix.
Taking matters into my own hands
One Sunday evening, the kind you'd rather spend on Netflix, I sat down with a pen and wrote down what I was actually doing. Every step. With a timer.
Three things accounted for almost all of it:
- Finding the invoices. Most lived in my inbox as attachments. A few were behind login screens, sent as "view your invoice" links. Digging them out took hours.
- Extracting the data. Open each PDF, find the amount, check the VAT, note whether it was reverse charge. Per document, a few minutes. Across 30+ documents: hours, not minutes.
- Matching them to bank transactions. The bank export is the base layer – without it, you don't even know what you're looking for. With it, you still have to reconcile every line against the documents one by one. Another hour, easy.
So I started chipping away. First, Gmail labels that auto-grouped anything that looked like an invoice. Then a step that pulled new attachments into Google Drive. Then an LLM that screenshotted each PDF and pulled out the line items – this was 2023, before models could read PDFs directly. Seventy percent accurate on a good day. Good enough to be useful.
Then a categorizer. I didn't call it a chart of accounts, because I didn't want one. Just income and expense buckets – in plain words that anyone could read.
Then the matcher: every new bank transaction got automatically paired with the invoice it belonged to. All that was left for me to do was scan the unmatched ones – usually five or six a month, mostly rent or charges that genuinely had no receipt.
That's when it dropped from a Sunday evening to about ten minutes a month.
Billpal was born. It just wasn't called that at the time.
What this looks like now
Two years in, this has turned into a real product. Here's what it does, end to end.
It starts with email. Whenever a new attachment lands in your inbox that fits the pattern – filename, file type, a couple of other signals that suggest it's an invoice or a receipt – Billpal pulls it in. Just the attachment, not the email itself. The body, the subject, the people you're talking to – none of it ever leaves your inbox. Everything that doesn't fit the pattern is ignored. The dashboard fills up on its own. No more digging at the end of the month – by the time you log in, the invoices are already there. Hopefully matched 🤞
The same pipeline runs the other way as well. Invoices you've sent to clients, sitting in your Sent folder, get pulled in just like the incoming ones. Billpal recognizes you as the supplier on those, classifies them as outgoing, and matches them against the customer payments on your bank account. Two arrows, one engine. The point is that you never type anything in the tool. Once a document lands, it gets filed.
You never type anything in the tool. Once a document lands, it gets filed.
Every document gets parsed for the obvious fields – amount, date, VAT, currency, line items. And some less obvious ones too, like reverse charge or tax rate splits – the kind your CPA will quietly thank you for. At the same time, the supplier or customer behind it gets identified. If it already exists, the document is linked to that record. If not, a new one is created automatically. You don't fill in a vendor form. You don't pick from a dropdown. The supplier and customer lists build themselves out of the documents that come in. Of course you can edit them – you just shouldn't have to.
For every invoice coming in, Billpal then tries to find the transaction it belongs to. The amount might be off by a few cents – FX, rounding, fees. The date might be a few days late. The vendor on the bank line might be a code, not a name. An LLM walks through the unmatched transactions, picks the right one, and links the two. You see the result as a clean ledger, not a row to reconcile yourself.
Transactions get their own bit of housekeeping too. You can auto-hide the ones you never want to see – your private half of a joint account, that kind of thing. Or rename the cryptic merchant strings your bank sends over (the ones that look like license plates) into something legible, so the next batch comes in clean. Or mark a transaction as no invoice needed – bank fees, transfers between your own accounts, the occasional refund – and it's off your Unmatched list for good.
Categorization works the same way. You can set up rules like merchant contains "Adobe" → set category to Software. This covers most of the recurring stuff. Where it gets interesting is when the bank gives you a line like Amazon.de*ZE8V68RU4 -€84.31, which tells you nothing about whether you bought printer paper, a laptop stand, or a Christmas present for your nephew that should not actually be in there. But the invoice has the line items. That's where the real context lives. So once a document and a transaction are paired up, the transaction "inherits" some of the invoice's context and gets tagged accordingly. Paper for the printer becomes Office Supplies. A condenser microphone becomes Equipment & Hardware. Adobe Creative Cloud becomes Software & Subscriptions.
And for the small minority of things that still arrive on paper – restaurant tabs, taxi slips, the occasional thermal-print disaster the cashier hands you – there's a WhatsApp number you can send photos to. The pipeline takes it from there. The reason it's WhatsApp specifically, and not its own app, is that I'm already in WhatsApp twenty times a day. I didn't want another app for this, and I doubt you do either. You can also ask Billpal questions in the same thread. What invoices am I still missing for May? gets you a straight answer. How much did I spend on software last quarter? same. It's not the end-all be-all (yet), but for the things you'd otherwise have to log into a dashboard to find out, just send a voice instead.
These days, my own bookkeeping looks like this. Near the end of the month, I open Billpal, glance at the Unmatched list, find the few items where the supplier sent me a link instead of an attachment, upload those PDFs by hand, hit Export, and email the CSV to my CPA. Maybe ten minutes. He likes it too, because he no longer has to type any of it either.
Which is the whole point, really. A good CPA is worth every penny, and that hasn't changed for me. But you want them for the parts that actually need a brain: the should I incorporate, the year-end optimization, the what's actually deductible questions where the answer matters and the stakes are real. Not for the data entry a machine should be handling by now.
To be clear: Billpal will not generate a P&L. It will not file your taxes. It is not trying to be your accountant, and it isn't trying to replace one either. If you genuinely need full accounting software – double-entry, payroll, inventory, audit trails – then Wave or QuickBooks are great. Use them. They were built for it. Billpal isn't meant to compete with them. It solves the messy intake upstream: it gives you a highly automated retrieval tool so you stop chasing receipts every month, and it hands your accountant a clean stream of structured data at the same time. Everybody wins.
And if your business looks roughly like mine, where the actual work is something else and bookkeeping is the side of the desk you'd rather never look at again, this is what I built for me. Less time on finances, more time on the business. And after two years of building toward that line, I can now finally say it without rolling my eyes.
Thanks for reading. If any of this resonated, the easiest way to get in touch is just hey@billpal.io. It goes directly to me.
– Roman