[GNC] Split transactions involving multiple currencies

john jralls at ceridwen.us
Sun Jan 30 11:15:13 EST 2022



> On Jan 30, 2022, at 2:54 AM, Koen Martens <in+gnucash at metro.cx> wrote:
> 
> Hi,
> 
> In 2022, I'll be emigrating from The Netherlands to Sweden. Before, I used to do my private accounts purely in euro's, but now in 2022 I need to do multi-currency book-keeping. The main currency will be Swedish Kroner (SEK), but I will also have accounts and payments in Euro's (EUR).
> 
> I've covered the basic cases. I've got my accounts set up for both currencies, and when in the Basic Ledger view I can process simple payments (where there is a one-to-one correspondence between a decrease on an account and increase of an expense for example). I can book expenses (which are kept in SEK) from the EUR account, and the exchange rate is applied.
> 
> However, I can't figure out how to split a transaction. For the purpose of an example, let's say I have a loan for which I pay a monthly amount, which consists of paying off part of the loan and interest. For reasons of simplicity, let's say I paid EUR 1100,-, of which EUR 1000 is deducted from the loan and EUR 100 is the rent.
> 
> So I have:
> 
> Assets:Current Assets:Dutch bank account - the EUR bank account
> Liabilities:Loan - EUR account with the current amount owed
> Expenses:Interest - SEK account
> 
> Let's assume the exchange rate is 1 EUR = 10.2 SEK.
> 
> What I'm doing (in auto-split ledger view of the EUR account) is this:
> 
> 1. Create split 'Assets:Current Assets:Dutch bank account' with Decrease value of 1100
> 2. Create split 'Liabilities:Loan' with Increase value of 1000
> 3. Create split 'Expenses:Interest' with Increase value of 1020 (100 EUR * 10.2 = 1020 SEK)
> 4. The exchange rate dialog opens up (showing transfer from SEK, transfer to EUR), and I enter '10.2' (1 EUR = 10.2 SEK) and OK
> 5. At this point, the last split shows 'kr 1.020,00', which is correct
> 6. Now I save the transaction
> 
> Looking back at the transaction after saving, I get odd splits inserted:
> 
> Liabilities:Loan                                 +    1.000,00
> Expenses:Interest                                +kr  1.020,00
> Trading:CURRENCY:EUR				 +   10.404,00
> Assets:Current Assets:Dutch bank account         -    1.100,00
> Imbalance-EUR                                    -   10.304,00
> Trading:CURRENCY:SEK                             -kr  1.020,00
> 
> Something went wrong on the EUR side of things, where instead of sending 100 to the Trading:CURRENCY:EUR account, it sends 10.404,00, and thus it creates a split against Imbalance-EUR to make up for that.
> 
> I've tried different variants. For example, entering the amount for Expense:Interest in EUR instead of SEK, but that leads to different weird splits.
> 
> I've tried manually creating the trading account splits, to no avail, same result as when entering the interest amount in kr.
> 
> Any help would be much appreciated!

Looks like you entered the exchange rate backwards, i.e. 10.2 EUR = 1 SEK instead of the other way around.

N.B. It matters a lot in which account you create the transaction: The currency of that account is the "transaction currency". Each split has an amount in the split account's currency and a value in the transaction currency, and that sets the direction of the exchange rate. 

Regards,
John Ralls



More information about the gnucash-user mailing list