Hacker News new | ask | show | jobs
by slavoingilizov 1434 days ago
This comes up on the homepage consistently about every 6 months or so. I am not sure why.

Every time it does, it's obvious it has devoted fans and bitter enemies. The biggest problem with it as far as I can tell is the requirement for manual entry.

Given Europe and the UK have had Open Banking for years now, and a universe of apps automatically pulling, categorising and reporting transactions (including many incumbent banking apps) - I'm curios if this is a US-only phenomenon - why would people use decade-old software instead of the latest in banking technology? Any users from Europe or UK?

Previous threads:

- https://news.ycombinator.com/item?id=31219754

- https://news.ycombinator.com/item?id=20109545

- https://news.ycombinator.com/item?id=23237445

13 comments

> The biggest problem with it as far as I can tell is the requirement for manual entry.

GnuCash isn't restricted to manual entry. It supports OFX [1], which you can set up to automatically pull transaction data from your bank.

[1] https://en.wikipedia.org/wiki/Open_Financial_Exchange

When I tried GnuCash, I was bitten by the fact that, although it supports OFX, many OFX servers don't support it. I found in some cases the server expected the client to support QFX, Quick's extension of OFX. In other cases, these servers seemed explicitly only to support Quicken as a client, e.g. by expecting requests to their servers would be proxied through Quicken and arise form Intuit IP addresses.
I understand, but that's still somewhat manual (compared to an API and a client pulling data from it without user involvement)
For a small business, is that a bad thing? It helps to spend 2 minutes reviewing the numbers.
Not at all. For a small business, closing the monthly books is already a manual effort, so initiating an OFX transfer is trivial compared to everything else.

More importantly, can it invoice customers via email with a template?

Apparently it cannot. But you can export to PDF and then send using an old fashioned email client.
To use these APIs in Europe you need a license, and I'm not willing to pull my banking data via third parties. Never mention the apps which want me to give them my full credentials.

I would be willing to use a script which I can audit and run myself, but nobody offers that for my bank.

There's Ponto :)

https://myponto.com/en

Disclaimer: I work for them. What I'm saying here is 100% personal and does not reflect the views of my employer, yada yada...

To be honest, we're doing an excellent job of protecting our customers' data. It's one of our core concern, and I have absolutely zero issue putting my own data in there.

We do _NOT_ store your credentials or even receive them at any point. Quite frankly, we don't want them. Any authorisation you would give us automatically expires after some time anyway, enforced by the banks.

The primary offer of Ponto is one API to interact with all your own bank accounts. No license needed, we handle all of that. We also provide a unified interface to all the banks.

The API is well thought out. All of our managers are highly skilled devs, so they understand what it takes to build good software (= time).

Check it out, we have a great support directly via Slack. I'm not answering that myself, but the guys who do it are super dedicated and will go a long way to help you.

Honestly I can't say enough good things about this product and our team! A product you can rely on, long term.

Belgian law seems pretty data hoarding heavy. Even things like activity logs will be kept around for 10 years after contract termination, per your Privacy terms.

Fintech might be overall more security focused in their software development practices, but 10 years is still a very long time to entrust someone with your data.

So, related to the topic at hand, if I use Ponto, can I connect Gnucash to it then so it fetches all information automatically?
Probably, yes :) But you'd have to find/build the integration.
Haha, anything is possible if I build it myself!

So the answer is a clear no then, please be up front about it instead :)

I was merely responding to the parent comment saying that you need a license, which is not the case with this API.
AFAIK, none of this is true. Banks are required by law to provide open APIs with solid authentication mechanisms, apps usually access them via aggregators and never request your banking credentials.
The aggregators are third parties I mentioned. You can't easily obtain a license to use those APIs yourself, even if only to access your own data.

The apps which don't have a deal with these aggregators request you to provide credentials (now fortunately most of them are defunct due to MFA)

Understandably because you are dealing with a heavily regulated industry but I do agree it would be nice to be able to use the APIs for your own data somehow.

Aggregators to require you to provide credentials are just web-scraping the websites or have reverse engineered the banks (internal) APIs.

For some APIs you can get the access yourself. For example, here is the API for account and transaction information at ABN AMRO (3rd largest bank in the Netherlands): https://developer.abnamro.com/api-products/business-account-...

I'll concede that it's only for business accounts. But, that includes small single owner businesses and I've been considering to switch to ABN to automate the accounting of my small side business.

The PSD2 APIs (also for consumers) indeed need a PSD2 license and an EIDAS certificate.

Technically, for consumer data, I think you could use GDPR to request a computer-readable extract of your transaction data. However, I think most banks would then redirect you to some CSV/MT940 export option in the web interface that is hard to automate.

Yes, but no. The law is PSD2, but there are so many requirements that it's impossible for a private person to access it. First of all you need to generate a certificate which needs to be signed by a financial authority. Then you use client-based certificates to connect to these APIs. [1]

[1] https://support.n26.com/en-eu/security/open-banking-psd2/psd...

Yes, here is one example from German Commerzbank: https://developer.commerzbank.com/

I have been playing with the idea to use its API for my personal finance but the API with MFA is not so simple. At least not simple enough for me to spend much time for writing a customized interface. So I am still using their web interface which works well for my personal needs.

I was excited when my bank first announced Open Banking; I could use it to replace my embarrassing, then Selenium based mess with something more sane. Then Open Banking went into production and I learned I need a business entity and a whole host of other bs to make use of it without relying on some third party bottom feeder.

I don't know what I was thinking. This is Europe and there is very little chance a good idea won't be ruined with some sort of bureaucracy, licensing requirements, utterly vapid credentialism, or as a last resort, some other form of obtuse gatekeeping.

Also all these APIs are read write, aren't they? I really wish there was an easy read-only API that i could use for all kinds of hacky integrations
No, they generally have different scopes. You do not need to request a scope which can initiate transfers.
> Given Europe and the UK have had Open Banking for years now, and a universe of apps automatically pulling, categorising and reporting transactions (including many incumbent banking apps) - I'm curios if this is a US-only phenomenon - why would people use decade-old software instead of the latest in banking technology? Any users from Europe or UK?

Maybe the situation is better on the continent, but from living in Ireland and the UK I don't believe this is a solved problem here. Open Banking allows third parties to connect with your bank accounts with your consent but I'm not aware of any (reputable) service that simply gives you an API into your own bank accounts. Would be happy to be corrected on that.

That said, I wouldn't call the entry process entirely manual. GnuCash supports importing transactions in a broad range of formats, including OFX, QIF and CSV with user-defined rules. Yes, you still need to log into your bank/credit card/etc and download statements for import, but personally I don't mind doing that. My workflow is that I spend about half an hour every week logging my transactions in GnuCash. Sometimes I skip a week or two. Yesterday I had to enter a full month of transactions and it took me about an hour (complicated by the fact that I had lots of business expenses).

This open banking regulation actually makes it pretty hard for banks to provide you with easy to use APIs. You'll always need to do interactive authentication and these sessions have to be expired all the time.

I wrote a pretty simple budget webapp before the regulation took effect but was forced to stop after.

It's kinda good because it reduces the risk startups take security on the light shoulder like I did with my self hosted app, but it's obviously annoying as a user.

German reporting in. The situation is dire. I can download a CSV and there is one app that can pull transactions nightly - but I have to re-authorise it every couple of weeks which takes about 5 minutes.

We must never loose hope.

I live in france and my bank lets me download all (or a custom range of) my accounting history and my credit card history as either OFX, QIF or CSV. That's pretty neat and i can import it into Gnu Cash right away.
This is common in the US, too. I've been doing it for a long time. My current credit union offers some online customization of that, too.
Starling gives you API access to your own account. I use it to do a semi-automatic ingest into beancount.
theres some third parties that give you an API directly I believe. Firefly III lists salt edge and nordigen.

https://docs.firefly-iii.org/data-importer/

> The biggest problem with it as far as I can tell is the requirement for manual entry.

That's a problem? I'm still using YNAB Classic, and prefer manually entering my transaction data over my time using Mint years ago (which imported my accounts). IMO, it has made me more conscious of my spending.

There's also a heavily worked-on upgrade to the importer. Just saying the developers are users too, and want an easier time for data entry.

https://github.com/Gnucash/gnucash/pull/1371

I think this time it is because someone posted a tool for converting exports from a Singaporean bank into a format that can be read by gnu cash.

There’s a karma train on HN that you can collect when a related post can be made.

I have a fully working setup. In order to be useful for my personal budget management though I need some program to scan receipts and invoices via camera or pdf, to be honest.

Nonetheless. I am from germany and I successfully integrated sync with multiple bank accounts via aquafinance. I can pull down and automatically categorize transactions and even issue transfers.

There are more reasons i did not fully commit yet:

I have no automatic backup configured. I do not have an designated desktop-pc yet. Having all this important data on a mobile device is insecure imo. I have no _real_ usecase to apply double-checked accounting (hopefully this is the correct term).

Nonetheless, it's great. If one had a tax-guy I guess it is even more beneficial.

I want to note that there are no licenses fees or paid software in use.
What is aquafinance? Can you say which banks work for you?
Sorry for the late reply. I missspelled the library. Probably there is also a missunderstanding due to "lost in translation".

Here is the link: https://aquamaniac.de/rdm/

I integrated all my accounts of Kreissparkasse and DKB. Works flawlessly. I also tried all alternatives to connect to these institutions. I wouls recommed this setup.

Do you have suggestions for similar software that uses the EU/UK Open Banking APIs? Would really be interested.
> The biggest problem with it as far as I can tell is the requirement for manual entry.

Gnucash support automated importing from a whole bunch of sources like CSV and OFX/QFX.

Open banking is a great initiative but I currently haven't found any product or tool that actually lets me use it that can actually successfully connect to my accounts.

Also, what differentiates GnuCash from many other tools is that it is full double entry accounting, which gives far more security in terms of knowing that you are not misreporting or missing anything.

Why not import from CSVs? I use hledger and I import CSVs all the time to do my transactions. Without it, I think it would be impossible for me to stay on top of my finances. GNUCash does support CSV imports IIRC.
Frankly this seem like a big deal when I first started using GnuCash after using Quicken for many years. But after a while it doesn't bother me that much. The process also is not entirely manual. The banks export their transactions in certain formats and looks like GnuCash supports all of them.

So really the difference is between having Qucken log in to my bank directly vs me logging in and just downloading a file with transactions.

Love to find some nice and well working open-source solution for categorising transactions. Each bank appears to categorise differently
If GNU is involved it’s going to be a polarizing discussion.
Could you provide explanation on why GNU is polarizing?
GNU are pretty hard libertarians. I think libertarianism has become a lot less fashionable during the 2010s, and many people I think started to see it as actively deranged over the last 5 years or so, with more moderate liberal ideas of free speech and responsibility to others around you being more mainstream now.

GNU are also very hard on principals. Again, I think society started leaning quite a bit more pragmatic over the past 10 years.

In the tech industry you can see this trend for example GCC to LLVM, LibreOffice to just using Google Docs, GPL to MIT, etc.

Interesting. GNU to me has always seemed socialist if anything. It requires sharing derived code for free.

MIT by contrast lets you do whatever you want, and that seems more like the libertarian approach to me.

> It requires sharing derived code for free.

It requires you share the code with your users/the people you distributed derived works to for no additional cost. You can still charge money for the software, but you can't charge an additional fee for access to the code. You also give them the right to share it how they seem fit, so they could share it (the code, not necessarily trademarked things like names or artwork/assets) for free, share derived software including the code for a free or a fee, or not share any derived work at all.

You can read more here: https://www.gnu.org/licenses/gpl-faq.html

Both "socialist" and "libertarian" have definitions that not just changes within a country, but basically every country has its own understanding of the terms (just like what people in the US would consider "far-left" is basically "center" politics in many places in Europe).

Labeling something "socialist" or "libertarian" in a diverse place like HN probably harms more than it does good, as everyone will read it differently and have different takeways.

To use entirely different terminology, I think people are just way more laissez-faire about software issues these days. Realistically, most software runs as a service now, and people are generally I think more happy to be more pragmatic rather than idealistic. I think GNU was generally aligned to the mainstream 'tech hacker' outlook in 2002, but it isn't in 2022.
The resistance to surveillance, the kind of 'prepping' mentality of running everything yourself, never using third-party services, and sticking with older working ideas over trying new things, those are much more libertarian than socialist, going off literal definitions of individual liberty over collective society.
> sticking with older working ideas over trying new things

Socialism had plenty of that going around, sticking with older working ideas.[1][2] But I hear you.

[1] https://en.wikipedia.org/wiki/Trabant_601

[2] https://en.wikipedia.org/wiki/GAZ-3102

https://www.gnu.org/philosophy/third-party-ideas.en.html

"The Free Software Movement does not endorse Libertarianism".

If you write a list of philosophical ideas that are relevant to you that mentions libertarianism more than other philosophies, and you find that you have to explicitly say you don't endorse libertarianism, then that's a good indication that many people see you as a libertarian.