[GNC] Enhancement request: multi-currency accounts

Jim DeLaHunt list+gnucash at jdlh.com
Tue Oct 18 20:11:27 EDT 2022


Hello, Anton:

On 2022-10-18 02:34, Anton Tsyganenko wrote:
> Let's take a look on accounts that are created in gnucash by default. 
> Generally most of the accounts may be multi-currency, i. e. not bond 
> to a specific currency: you may have cash in multiple currencies, your 
> opening balances may be in multiple currencies, you may have incomes 
> and expenses in multiple currencies. Bank accounts generally have only 
> one currency, but there are some banks that offer multi-currency cards 
> and deposits. These surely can be considered as just a few different 
> accounts, but it may be more convenient to group them together.Now I 
> solve that by creating sub-accounts for each currency I need for each 
> account where I need it. It looks like:
> Expenses:Dining:USD
> Expenses:Dining:EUR
> Expenses:Dining:CAD
> Expenses:Transport:USD
> Expenses:Transport:EUR
> Expenses:Transport:CAD

Wow, that looks a lot like my chart of accounts! For my expense 
accounts, I have sub-accounts for each currency that I might use. I am 
up to about five or six currencies in the Expenses:Travel:... accounts.

However, for my Asset and Liability accounts, I chose to break into 
currency at a higher level:

Assets:
Assets:Personal:
Assets:Personal:CAD:Current
Assets:Personal:CAD:Current:Chequing Account in Canada:
Assets:Personal:CAD:Investment
Assets:Personal:CAD:Investment:Brokerage Account in Canada:
Assets:Personal:USD:
Assets:Personal:USD:Current
Assets:Personal:CAD:Current:Chequing Account in USA:
Assets:Self-employed business:
Assets:Self-employed business:CAD:
Assets:Self-employed business:CAD:Current
Assets:Self-employed business:CAD:Current:Business Chequing Account in 
Canada:
Assets:Self-employed business:USD:
Assets:Self-employed business:USD:Current
Assets:Self-employed business:USD:Current:Business Chequing Account in USA:

So, can your proposal work with this kind of structure as well? Or mest 
the division into currencies happen at the lowest level of account?

> ...So my proposal is:
>
> All accounts that user creates are "multi-currency", like placeholder 
> accounts without any specific currency. Sub-accounts for each currency 
> are created automatically, when the first operation in this currency 
> in this account is made.... 

How do you "make an operation in this currency"?  Suppose I am entering 
a new transaction: what is the currency of that transaction?  I think 
there is an answer possible, but it needs to be defined.

How do you enter a multi-currency transaction? e.g. I pay for a dinner 
with a EUR price using my CAD credit card. The expense is in EUR, the 
credit card is in CAD, and the card company automatically converts the 
EUR charge to CAD and bills me in CAD. How would I enter that transaction?

> If a multi-currency account is deleted and operations are moved to 
> another account, operations in all the subaccounts are moved to the 
> corresponding subaccounts of the second account. Balances can be shown 
> as a sum of (non-null) amounts in different currencies (but sometimes 
> can be converted to one currency). In a multi-currency account's view 
> (basic ledger) there should be just an additional column -- currency 
> of an operation (editable as a drop-down menu). So user opens account 
> "cash" and sees something like:
>
> Date | Description | Transfer | Debit | Credit | Currency | Balance
>
> 2022-10-18 | Dinner in a restaurant | Expenses:Dining | | 25 | EUR | 
> 100 USD + 55 EUR
>
> That operation is a transfer of 25 EUR from Assets:Cash:EUR to 
> Expenses:Dining:EUR.
>
> I would be happy to discuss the concept.

I agree with David Carlson that this is not the right place to add 
enhancement requests to the queue. They belong at 
<https://bugs.gnucash.org/>. But there is no harm having a preliminary 
discussion about the idea here.

Best regards,
       —Jim DeLaHunt



More information about the gnucash-user mailing list