Module 9 · Advanced · 9 min read

Realised and unrealised exchange differences

You will be able to: Define realised and unrealised exchange differences; Post a foreign-currency settlement and find the gain or loss; State what Zeyto does and does not do at period end.

  • Read not done yet
  • Self-check: not taken not done yet
  • Lesson complete not done yet

When you invoice in a foreign currency, you book the receivable at the rate of the invoice date. When the customer pays, the rate is usually different. The gap is an exchange difference. It is realised when the invoice is actually settled. It is unrealised when you only measure open balances at a reporting date.

Realised: what Zeyto posts

When you enter a receipt or payment voucher in a foreign currency, the voucher has its own rate. Zeyto clears each invoice at the rate it was booked at, converts the money at the voucher rate, and posts the gap to the account Realized FX Gain/Loss (code 4910). If the rates agree, no such line exists.

A new Receipt Voucher with the Currency box and the Rate box beside the payment mode.

On a receipt, Currency and Rate sit beside the Mode.

On a receipt, Currency and Rate sit beside the Mode.
Receipt: a lossA USD 10,000 export invoice was booked at 3.6725, so Receivable = AED 36,725.00. The customer pays USD 10,000 when the rate on your voucher is 3.6700, which is AED 36,700.00. Entry: Dr Bank 36,700.00, Dr Realized FX Gain/Loss 25.00, Cr Receivable 36,725.00. You received AED 25 less than the receivable carried.
Payment: a gainA supplier bill of USD 4,000 was booked at 3.6725, so Payable = AED 14,690.00. You pay USD 4,000 at a voucher rate of 3.6650, which is AED 14,660.00. Entry: Dr Payable 14,690.00, Cr Bank 14,660.00, Cr Realized FX Gain/Loss 30.00. You paid AED 30 less than the payable carried.
SettlementBase paid or received compared with the book valueResult
Customer receiptMore base receivedGain
Customer receiptLess base receivedLoss
Supplier paymentMore base paidLoss
Supplier paymentLess base paidGain

Tiny differences are rounding

A settlement difference of 0.01 or less in base currency is posted to the Rounding Difference account (4920) instead of Realized FX Gain/Loss. You can change this limit in Settings ▸ Posting Controls, under Foreign-currency settlement, rounding (between 0 and 1). At 0, every difference goes to FX gain or loss.

Unrealised: what Zeyto does not do

At 31 December you may hold a USD receivable booked at 3.6725 while the closing rate is different. Accounting standards expect open foreign balances to be restated at the closing rate, with the difference in profit or loss. Zeyto does not post this revaluation for you: open foreign-currency items stay at their booking rate until they are settled. Any period-end adjustment is a manual entry decided by your accountant.

Watch outDo not expect the balance sheet to show open dollar balances at today's rate. Tell your accountant which foreign-currency items are open at period end.
TipWith a pegged pair such as USD and AED, invoice and receipt at the same 3.6725 produce no difference at all.

Try it in the demo

  1. Open Accounting ▸ Chart of Accounts and search for 4910 Realized FX Gain/Loss and 4920 Rounding Difference.
  2. Open Settings ▸ Posting Controls and read the card Foreign-currency settlement, rounding. Do not save.
  3. Open Reports ▸ General Ledger, pick account 4910, and see whether any foreign-currency settlement has hit it.
Open the live demo

Public demo company, sign in as admin / demoAdmin123. Data refreshes nightly.

Key takeaways
  • Realised differences arise at settlement and are posted automatically to 4910.
  • Receipts: more base than booked is a gain. Payments: more base paid than booked is a loss.
  • Differences up to the threshold (default 0.01) go to Rounding Difference.
  • Zeyto does not revalue open foreign balances at period end; that is a manual accountant decision.

Check yourself

5 questions on this lesson. Not timed, not the exam, and you can try again. Score 60% or more, and read the lesson, to complete it.

1. A realised exchange difference arises when a foreign-currency invoice is settled at a rate different from the rate it was booked at.

2. A USD 10,000 invoice was booked at 3.6725. The customer's USD 10,000 receipt is posted at 3.6700. What is the result?

3. At 31 December a company holds an open USD receivable booked at an older rate. What does Zeyto do about unrealised difference?

4. A supplier bill of USD 4,000 was booked at 3.6725. You pay it at a voucher rate of 3.6650. What is the result?

5. With the default rounding limit, where do settlement differences of AED 0.01 and AED 0.40 go respectively?

Practice questions for this module · Printable study sheet