Is KMyMoney worth the effort of manual input?

I’ve been looking into managing my personal finances for a while now. In the past, I’ve used a proprietary app called Andromoney on Android. It works well but requires manual input on your phone for every single transaction. There is also a web interface for paid users. It worked well enough for what I need, which is to get an overall view of my income and expenses, but at some point, manually inputting all my transactions have become too tedious and I find myself falling behind on keeping everything in sync and accurate. I now have stopped using it for months.

I’ve looked into using KMyMoney. It doesn’t have an android app, so that means that I won’t be able to input transactions on the spot when it happens. But it does have CSV importers and importers for other formats (OFX, QIF) that unfortunately my banks don’t support from what I can tell.

But it looks like such a sophisticated app. I’m hoping that with its CSV importer it would at least significantly reduce the effort needed to keep track. But at the same time, not being able to input transactions from my phone (especially for stuff that are not recorded anywhere like cash transactions) can seem like a major drawback. Also, can it auto-categorize transactions based on the text in the transaction info provided by the bank?

One of my banks also does not provide a CSV format unfortunately… just PDF. So I’d also have to find a way to import data from that. That’s another problem.

Has anyone been in my situation, and is KMyMoney the right tool for me? Are there ways around the drawbacks I’ve mentioned above?

Another thing is that it feels like KMyMoney is designed primarily for European users, with its direct online banking interfaces (I am so jealous, we don’t have that here). So I was wondering if there were any non-european users here who can chime in on how well it works out for them

I live in New Orleans and I am very happy with KMM. Otoh, I don’t enter all transactions by hand. My banks and credit card companies provide OFX and/or QFX export. I find CSV file import/export to be an annoyance – whether I am using it with KMM or any other software. On the plus side, you are getting a very robust personal finance program for free and it is supported by a great community and very helpful developers. I vote “Yes”

I’m also in the US and have been using KMM for over 20 years. For much of that, many/most of my banks/investment brokers provided OFX Direct Connect, but there are none left. One still provides OFX file download. For most of the others, csv import works adequately, including my Bank of Ameirica credit card. My largest annoyance (if not outright pain) is Merrill Lynch, which now provides only csv, and the file they provide (which uses the “.dnl” suffix.) needs a pre-processing script to split into separate accounts which still need further processing after import. I have a vague intent of writing a new importer specifically for that file type which will handle multiple accounts and both investment and banking transactions.

My general process is to import transactions monthly or quarterly (depending on account and level of activity, mark transactions cleared based on paper or email receipts, and then reconcile. For most transactions, I keep the date as the actual transation date, not the post date, but that’s a personal choice. I leave checks as the date they cleared the bank, with the date written noted in the memo.

Despite all this, I continue to be very happy with KMM. I use it for both personal finances, and for a small non-profit for which I am treasurer.. In both cases, it lets me follow balances and cash flow (albeit a bit delayed from an optimal case) and provides sufficient reports for overall status and for tax planning.

1 Like

Yes and no.
The software has several ways to auto-categorize transactions:

  1. based on the payee. You define manually once the standard category for one payee and all future transactions of this payee will be booked on this specific category
  2. based on past transactions. I don’t know how it works, but i already experimented that some imported transactions have been categorized without my action :slight_smile: . Not randomly but based on similar past transactions

A third way, which is not an auto-categorize, but contributes to your general goal “how can i have less manual repetitive work?” is the great option of “scheduled transactions”.

You spend time once to define each scheduled transactions, for example monthly bills, your salary, yearly car insurance, quarterly house charges, whatever.
Then the transaction will be created by the software and appear in the account ledger.

For my personal finances, i have 28 scheduled transaction, most are monthly but not all. It is a great option.

When i update my data (in your case it would be by importing CSV file from your home bank), then the software recognizes that some transactions of CSV are also existing as scheduled transaction and proposes to match them. I can then choose to accept the match or to let both transactions separated.
A nice option of KMyMoney is also that you can define the number of days for the match. Example: a scheduled transaction is planned for March 1st but appears in the bank CSV file on another date (earlier or later), e.g. on March 12th. KMyMoney can still match them because i defined in the Settings 15 days of match range.

I don’t know if you have many transactions which may be scheduled or not…

2 Likes

Here’s how that is implemented after it gets a list of all transactions in that account for that payee

  • Default is to use the most recent transaction as the reference
  • If there are more than one matching transaction, try to be a little smart about which one to use. KMyMoney scans them all from newest to oldest and checks if it finds an exact match or it will use the one with the closest value.

@surcouf the stuff you wrote sounds good to me. Now what I should do is just actually give it a try and experiment.
The CSV file that the bank provides does not provide a separate column for payee though. It’s just some description. The only way to get the payee is if I apply some regex maybe.

I guess I should just dive in and give it a try, and not discuss too much

Thank you for all the information!

There are two things you can try. One is to write a script to pre-process the csv file and use a regexp to create a new Payee column. The other is to let the full description get used as the payee for the first import and for subsequent imports of new payees. Then you can manually correct the payee to be what you want. If the actual payee name is a strict substring of the description column, then payee matching should find it for future imports. If not, you can create an appropriate matching entry under the Payee entry.

As with many tools, there are many ways to use KMyMoney - the trick is to find one that meets your needs and your process.

There is also Skrooge which is a bit simpler. But TBH I find both tedious and complicated and as a result have never managed to keep up with using them.