KmyMoney newbie / Issue with currency conversion

Hello there,

I am completely new to KmyMoney and was looking for a robust system to manage my personal accounting, and so far I am quite impressed by what the tool can do but I am struggling on how to use KmyMoney with with multiple currencies.

I have account A in EUR, and account B in USD. From both accounts I can pay the same categories of expenses (let’s call it “Groceries”), and of course I want to see the groceries consolidated amount in a single currency (let’s say USD, which would be my base currency).

I understand in the UI how we can choose the rate transaction per transaction (and how it gets recorded with “User” as source), but that is not realistic with so many transactions to be tagged.

[Question 1] When I go in “Update stock and Currency prices”, I am not able to update these transactions rates using “user source”, so how is the correct way to set these FX rates, from an external source (direct online quote / mass cvs import)?

[Question 2] Is there a way to have the rates “pre-defined” (ie: using the only quote or mass cvs import) to be applied before hand to all the transaction being tagged in a category using a different currency? If yes, how?

It seems to me I’m missing a key concept on FX rates but cannot find any explanation in the standard documentation or any online forum.

Thx for your help, that is the last remaining piece of feature I’m missing to actually move my massive excel spreadsheets into this tool,

Cheers

My response is largely theoretical, since I don’t use multiple currencies myself. However, I have some ideas which may help your understanding of how KMyMoney does handle this. There are (as you noted) two ways to add a currency conversion rate.

One (“User” as source) is when you specify the amount in both currencies when entering a transaction which involves two accounts with different currencies. I don’t see any way to avoid this in general, as you know the amount you spent (in one currency) and the amount the bank charged you (in the other currency) so those two amounts define the conversion rate for that transaction.

The other is importing, or online updating of rates. This process downloads and stores conversion rates between two currencies for one or more dates. These are stored along with the “User” created rates, but are not used to update the rate used in any existing transaction. These rates are used to do conversions for reporting. For example, if you make a purchase from and account which has the same currency as the used category, but this is not your base currency.

From my understanding, what you want (using pre-imported conversion rated on a given date for a new transaction involving those two currencies) is not possible, because the transaction actually involves set values in both currencies, which defines the conversion rate for that transaction.

Note I may well be wrong, so it would help if you give a specific example of a new transaction which could use an existing conversion rate for the date.

Thanks for replying quickly to my topic, your response is helpful but I think I might not have explained my issue properly, so let me provide you a bit more context so you understand what I’m actually doing.

First, I’m living between different countries with different currencies, so as per see I don’t have a real “base currency” ; basically I have my assets spread equally between USD (for SP500 investments) / EUR (my birth country with housing investments) / SGD (the country I live mostly, for day to day expenses). Since I live most of the time in Singapore, I have picked SGD as my base currency as most of my expenses are in SGD, but in terms of amount it’s really 1/3 for each.

Now, I want to use KmyMoney for 2 main purposes:

  1. Tracking my investments with multiple complex accounts. For that I need double ledger entries, as my excel spreadsheets has really reached crazy limits. An example is investing in a USD asset from a SGD account typically.
  2. Tracking my day to day expenses, as because I have multiple cards in multiple currencies, it can be very quickly tricky to have a clear visibility. Think about a trip to Europe, where I would pay my restaurant bill in Europe from an account in Europe, and then when I am back in Singapore I use my Singapore card to pay a restaurant in Singapore in SGD

Now, you clearly explained “you know the amount you spent (in one currency) and the amount the bank charged you (in the other currency)” which really works for me in cases like my example 1), where I do transfers between accounts in various currencies, or simply investing in an asset in a different currency. For these cases, I am all good typing the amount in both currencies, as I need to reflect what I see on both sides of the transactions, with each respective currency.

What I am not able to model in KmyMoney is my scenario 2), which should be easier, so I’m thinking that I’m missing something.
Here is what I am doing:

  • I want to do a “closing” at the end of the month, to reconcile all transactions from that month
  • Do note I have not uploaded yet any rate for that month
  • So I import all transactions from by bank account A (in SGD), and I will flag some of them with category “Restaurant” . Because I have defined the category “restaurant” with a base currency SGD, the system records it simply as-ios
  • Now I also have transactions in EUR from my bank account B (in EUR), for which the amount was truly paid in EUR and has absolutely no equivalent in SGD. However, I want to tag them as “restaurant” as well, because I want to be able to consolidate all my “restaurant costs” together.
  • However, since “Restaurant” is defined in SGD, KmyMoney will store the FX rate for each of these transactions (or the target amount), which I cannot do manually one transaction per transaction, and I don’t have a way to find this amount is easilyt

I understand I can setup 2 accounts like “Restaurant EUR” and “Restaurant SGD”, but I think it looks a very weird way to track categories, because I would basically duplicate 3x nearly all my categories, so I would find it quite inconvenient, but I see KmyMoney could work in such a way using the live FX rate to do the conversion in a hierarchy parent account, but this would not account for historical rate, so it’s neither practical neither a valid accounting solution.

Typically what I would love to do:

  • Import all my SGD and EUR transaction from each of these accounts
  • Tag all “Restaurant” transactions from both accounts, which would reflect in SGD as it’s the currency I have setup on the category
  • I am ok with the current behavior that KmyMoney uses the last FX rate available (let’s say from the previous month) to define the transactions in EUR that needs to be converted in SGD
  • Now I am missing a way at the end of the month to import “the true rate” for my EUR (either the daily rates for all days, or the average rate for that month which can only be known at the end of the month) and have it reflected in all previously defined transactions automatically.

If the way I intend to work is indeed the right way, then I feel I’m missing how to:

  1. Upload mass rates from the internet (currently when I use the online currency tool, it only fetch the rate for today)
  2. Re-apply imported rates on certain imported transactions, for a given scope (let’s say update all rates of my restaurant category(ies) from the previous month, as these are the ones where I don’t have an equivalent true amount in another currency, so I only want to reflect updated rates)

I hope it clarifies my scenario, and there might be other ways to achieve the desired results in KmyMoney, so if you have any suggestion :slight_smile:

Thanks for your help,