[GNC] Split Credit card transaction w/ two currencies
Jim DeLaHunt
list+gnucash at jdlh.com
Sun Nov 13 20:48:50 EST 2022
Hello, Fred:
On 2022-11-12 14:04, Fred Tydeman wrote:
> ...I had a meal in Colombia with a friend.
> I paid for everything with a credit card,
> and the friend gave me pesos for their part.
>
> If I enter the two parts as two separate transactions,
> all is OK. That is, when I enter the USD of the COP part,
> I get a popup asking for the exchange rate, which I enter
> and the correct amount is transferred to the COP account.
>
> In a credit card account, when I enter a split transaction
> that has part of the charge be in USD and the other part
> in COP (Colombia Pesos), I am getting bad results in the
> COP account. While I get a popup asking about the
> exchange rate, the results are wrong in the COP account.
>
> The parts are:
> 26.63 Liabilities:Credit Cards:visa == total charge
> 14.78 Expenses:meals == mine
> 11.85 Assets:Investments:$colombia => 50,000 COP == theirs
>
> There are 4219.41 COP per 1 USD on that date.
>
> Assets:Investments:$colombia is a Cash account with
> COP currency.
>
> My guess about the problem is: GnuCash in adding the
> splits for Trading:CURRENCY:USD and Trading:CURRENCY:COP
> has problems with a credit card transaction that has
> splits.
In my time with GnuCash, I have entered a lot of multi-currency credit
card purchase transactions like this. I have not known GnuCash bugs to
spoil the transaction. For instance, I have not known it to get the
trading accounts arithmetic wrong. I have frequently known GnuCash's
opaque handling of currencies and foreign exchange UI to make it hard to
get the data entry right.
An important fact to know is that each transaction has a "base
currency". GnuCash typically makes the base currency of the transaction
be the currency of the account where you first enter the transaction.
So, if you have your USD credit card register open, and you enter this
dinner transaction, then the "base currency" of the transaction will be
USD. Every split which is with an account having a different currency
than the base currency has its own exchange rate, and will cause that
foreign exchange dialogue to pop up independently.
Second, the amount to enter is confusing. In the split representing the
11.85 USD:50,000 COP exchange, it is important to enter the correct one
of those two numbers in the register's split line, so that it appears in
the correct place in the foreign exchange ("transfer") dialogue which
pops up. Which is correct? I don't remember, I usually get it wrong 20%
of the time, and the GnuCash UI doesn't remind me. The foreign exchange
dialogue does not let you recover if you enter the wrong one of the two
numbers; you have to cancel out, go back to the split, and enter the
other number.
So the way I navigate this difficult UI is: enter what I think is the
correct number in the transaction's split (maybe 11.85 USD), let the
foreign exchange dialogue appear, in the lower part of the dialogue
enter the other cash amount (maybe 50,000 COP), then look just above
that at the dialogue's calculated exchange rates. If the exchange rates
are approximately right, I got the choice of numbers right. If the
exchange rates are wildly wrong, then I got the choice of numbers backwards.
Remember, the foreign exchange dialogue is dealing only with the amounts
for that part of the transaction, e.g. 11.85 USD:50,000 COP. The total
transaction amount, 26.63 USD, has no place in that dialogue.
Disclaimer: I am writing all the above from memory, without having the
GnuCash UI or documentation in front of me. Hopefully it is correct
enough to be helpful, but I might be massively mistaken in how I am
recalling some part of it. But I have entered a lot of transactions like
this.
Best regards,
—Jim DeLaHunt
P.S. I hope the meal was delicious, and the visit with the friend was
satisfying! :-)
More information about the gnucash-user
mailing list