If I create a counterparty in foreign account (base currency USD and currency for counterparty - EUR) - it’s wiped out to zero as soon as all invoices are paid in EUR, currency difference is automatically calculated by Manager to the currency gain/loss account.
But, when i create account manually (for example obligations to social insurance fund - it’s created in base currency - USD. During the year I make contributions to this account in salary slips and at the end of the year pay this obligation (all in CHF). In CHF account balance must be zero now, but instead of this it has the balance of currency difference and I need manually to transfer it to currency gain/loss account with a journal entry.
Is it possible to set different currency for account or include it to automatic currency gains/loss calculations?
I’m not sure if there’s a specific terminology here, but I’ll try to do my best.
All General Ledger lines are in in base currency. This includes all accounts in the chart of accounts.
Any foreign currency amounts are tracked using subsidiary accounts (i.e. Customers, Suppliers, Employees, Special Accounts, etc.)
Instead of posting directly to a regular account, you should instead create a
Control Account composed of
Special Accounts (say “Foreign Currency Liabilities” for example). Then you can create children
Special Accounts in whatever foreign currency.
Refer to this guide for more information:
Only cash and bank accounts, customers and suppliers, employees, and special accounts can be denominated in a foreign currency. Transactions automatically adapt to currencies of the entities involved. Only journal entries can designate a currency for the transaction independently.
All accounts besides cash and bank accounts are in your base currency, because your accounting records must be in your base currency. (All non-base-currency balances are converted to base currency according to your entered exchange rates for the balance sheet.)
If you look at the entry form for journal entries, you will see you have the ability to designate the currency involved. That capability exists for situations just like you describe. Thus, you are designating the currency of the journal entry, not of the accounts where you are posting the debits and credits.
I believe this is similar to issues we face when dealing with tax obligations in multiple currencies. See this topic in the
Perhaps the idea needs to be extended beyond just tax accounts. As with your example of obligations to a social insurance fund, we have a national pension scheme, workers’ accident compensation fund, etc, that are payable in the currency of employee salaries (in our case USD), but are converted to the base currency (in our case ZWL) on Manager’s balance sheet. So, if there are currency fluctuations between the time the obligation is created (ie when the payslips are generated) and the time it is paid, we are left with a non-zero balance in the liability account. Either we just ignore it and live with a perpetual balance there, or we clear it through journal entries by allocating the amount to a custom foreign exchange gains/losses account.
Thank you for your reply. Partially it will resolve my problem if I’ll manually post contributions and deductions to social funds in special accounts. If I would be able to set created special account as a liability account for payslip deduction and contribution items - it would be a complete solution of this task. Is there any way to implement it or it would be incorrect?