The alternative that I use is to use GnuCash and periodically download CSVs from my bank of my transactions. That way I don't have to manually enter transactions and don't have to give my bank login to some random third party.
All that's needed is about 15-30 minutes every couple of months to bring in the latest transactions and double check the categorizations. GnuCash uses double entry bookkeeping, so you always know if your data is accurate or not by being able to reconcile the accounts.
If I had a great idea, I'd build it. I do think if you could reduce the friction of adding a transaction to very, very low (maybe adding a transaction through a combination of voice and location-awareness?), I'd consider giving it a shot.
It's a tall wall to climb, and there isn't an obvious ladder lying around.
I'd use an website/app that supports my preferred data ingestion process -- periodically manually downloading my bank & credit transactions (supporting at least one of: csv, qif, and qfx), and allows me to define at least (account, category, description) tuples mapping transaction to buckets (ideally hierarchical).
(Ideally also a focus on viewing trends at various grains and easy drill down, as opposed to "don't buy any more smoothies for the next 11 days, but go ahead and rent more movies soon -- use it or lose it!".)
I see gnucash mentioned as an option for ingesting downloaded transactions. Any others?
I believe the various plain text accounting tools (ledger, hledger, beancount) have tools that allow for this. I haven't used them as I use gnucash but they may be worth a look.
All that's needed is about 15-30 minutes every couple of months to bring in the latest transactions and double check the categorizations. GnuCash uses double entry bookkeeping, so you always know if your data is accurate or not by being able to reconcile the accounts.