A foreign exchange (FX) gain or loss is the difference between what a foreign-currency invoice or bill was worth in your own currency when you booked it and what it was worth when it was settled or revalued. If you invoice a client EUR 10,000 when the euro buys AED 4.00 and the money arrives when it buys AED 4.10, you collect AED 1,000 more than you booked, and that AED 1,000 is a realised exchange gain. A difference measured on a balance still open at month-end or year-end is an unrealised gain or loss. For businesses in the UAE, Saudi Arabia, Bahrain and Oman, the dirham, riyal and dinar pegs to the US dollar mean USD invoices create almost no FX movement, while EUR, GBP, INR and other currencies do. This guide covers the accounting rules (IAS 21 and IFRS for SMEs), worked journal entries, month-end revaluation, the VAT conversion rules in the UAE and Saudi Arabia, and how bank spreads fit in. It is general information, not tax advice; confirm your own position with a licensed accountant or tax adviser.
What is the difference between realised and unrealised FX gains?
The accounting rules for both come from IAS 21, The Effects of Changes in Foreign Exchange Rates (and Section 30 of IFRS for SMEs, which follows the same logic). Three rules do most of the work:
- A foreign-currency transaction is first recorded at the spot rate on the transaction date. An average rate for a week or month is allowed if it is a reasonable approximation of the actual rates.
- At each reporting date, foreign-currency monetary items (cash, receivables, payables, loans) are retranslated at the closing rate. Non-monetary items (inventory, fixed assets, prepaid expenses) stay at the historical rate.
- Exchange differences on settling a monetary item, or on retranslating it at a different rate, go to profit or loss in the period they arise.
| Realised FX gain or loss | Unrealised FX gain or loss | |
|---|---|---|
| When it arises | The invoice is paid, the bill is settled or the loan is repaid | A foreign-currency balance is still open at a reporting date |
| What is compared | Booked amount vs amount actually settled, both in your currency | Booked (or last revalued) amount vs the same balance at the closing rate |
| Cash involved | Yes, the difference is in the bank | No, it can reverse before settlement |
| Where it goes | Profit or loss | Profit or loss |
| Typical trigger | Customer payment, supplier payment | Month-end or year-end close |
Why do USD invoices create little FX in the Gulf?
Most Gulf currencies are pegged to the US dollar, so the rate between them and the dollar barely moves.
| Currency | Peg | Rate per USD |
|---|---|---|
| UAE dirham (AED) | US dollar | 3.6725 |
| Saudi riyal (SAR) | US dollar | 3.75 |
| Qatari riyal (QAR) | US dollar | 3.64 |
| Bahraini dinar (BHD) | US dollar | 0.376 |
| Omani rial (OMR) | US dollar | about 0.3845 |
| Kuwaiti dinar (KWD) | Basket of currencies | Moves with the basket |
| Lebanese pound (LBP) | No formal peg | 89,500 (BdL official rate since early 2024) |
An AED-based business that bills USD 10,000 books AED 36,725 and, if its bank converts at the peg, receives AED 36,725. The book difference is zero. What it does feel is the bank's spread: banks buy dollars from you slightly below the peg and sell slightly above it, and that is a bank charge, not an FX gain or loss (more on this below).
The currencies that move against the dirham and riyal are the ones that move against the dollar: EUR, GBP, INR, PKR, EGP, TRY, JPY, CNY and others. A UAE agency with a London client, a Saudi trader importing from Germany, or a Dubai company paying a development team in India will see real FX differences every month. Kuwait is the Gulf exception, because its dinar tracks a basket rather than the dollar alone.
Rule of thumb: If your base currency is AED, SAR, BHD, OMR or QAR, USD balances create near-zero FX gains or losses. EUR, GBP and INR balances need FX accounting. LBP has been held at 89,500 per dollar since 2024, but Lebanese books still need a rate per transaction, as covered in our USD and LBP accounting guide.
How do you record a realised FX gain on a customer invoice?
Take a Dubai design studio with AED as its base currency. It invoices a Dubai-based client in euros for a standard-rated service.
- 1 March 2026: invoice EUR 10,000 + 5% VAT EUR 500 = EUR 10,500. Rate on the date of supply: AED 4.0000 per EUR (illustrative).
- 15 April 2026: the client pays EUR 10,500. Rate on the payment date: AED 4.1000 per EUR.
Journal 1: issue the invoice (1 March)
| Account | Debit (AED) | Credit (AED) |
|---|---|---|
| Accounts receivable (EUR 10,500 × 4.00) | 42,000 | |
| Sales (EUR 10,000 × 4.00) | 40,000 | |
| VAT payable (EUR 500 × 4.00) | 2,000 | |
| Total | 42,000 | 42,000 |
Journal 2: receive the payment (15 April)
| Account | Debit (AED) | Credit (AED) |
|---|---|---|
| Bank (EUR 10,500 × 4.10) | 43,050 | |
| Accounts receivable (at the invoice rate) | 42,000 | |
| Exchange gain (realised) | 1,050 | |
| Total | 43,050 | 43,050 |
The receivable is cleared at the rate it was booked at, the bank is debited at what actually arrived, and the AED 1,050 difference is the realised gain. Two things do not change: sales stay at AED 40,000 and VAT payable stays at AED 2,000. The FX gain is a separate line in profit or loss, usually under other income or finance items, not revenue. If the euro had fallen to 3.90 instead, the bank would receive AED 40,950 and the AED 1,050 would be an exchange loss on the debit side.
How do you record a realised FX loss on a supplier bill?
The same studio buys software from a UK vendor.
- 10 March 2026: bill GBP 2,000. Rate: AED 4.70 per GBP. Booked at AED 9,400.
- 9 April 2026: paid GBP 2,000. Rate: AED 4.80 per GBP. Cost in AED: 9,600.
| Account | Debit (AED) | Credit (AED) |
|---|---|---|
| Accounts payable (at the bill rate) | 9,400 | |
| Exchange loss (realised) | 200 | |
| Bank (GBP 2,000 × 4.80) | 9,600 | |
| Total | 9,600 | 9,600 |
For a payable, a rising foreign currency is a loss and a falling one is a gain, the reverse of a receivable.
What is month-end FX revaluation, and do small businesses need it?
Revaluation is the step that produces unrealised gains and losses. At the reporting date you take every open foreign-currency monetary balance (receivables, payables, foreign-currency bank balances, loans), translate it at the closing rate, and post the difference.
Continue the invoice example. At 31 March 2026 the EUR 10,500 is still unpaid and the closing rate is AED 4.05.
- Revalued balance: EUR 10,500 × 4.05 = AED 42,525
- Booked balance: AED 42,000
- Unrealised gain: AED 525
| Account (31 March) | Debit (AED) | Credit (AED) |
|---|---|---|
| Accounts receivable | 525 | |
| Exchange gain (unrealised) | 525 | |
| Total | 525 | 525 |
When the client pays on 15 April at 4.10, there are two common ways to finish:
| Method | 1 April | 15 April payment | March gain | April gain | Total |
|---|---|---|---|---|---|
| Reverse and re-book | Reverse the AED 525 | Clear AR at AED 42,000, gain AED 1,050 | 525 | 525 (1,050 − 525 reversal) | 1,050 |
| Carry forward | No entry | Clear AR at AED 42,525, gain AED 525 | 525 | 525 | 1,050 |
Either way the total gain over the life of the invoice is AED 1,050, the same as Journal 2. Revaluation only moves part of it into the month in which the rate moved.
Do you have to do it? IFRS and IFRS for SMEs require it at each reporting date, which for most small businesses means at least the financial year-end. Monthly revaluation is good practice if you hold material EUR, GBP or INR balances; if nearly everything is AED, SAR or USD, a year-end check is usually enough. It fits into the month-end close checklist after receivables and payables are reconciled.
Closing rate: Use one documented source for every currency at every close, such as the central bank's published rate for the last business day. Switching sources between months creates differences that have nothing to do with the market.
Which exchange rate do you use for VAT in the UAE and Saudi Arabia?
VAT has its own rate rule, and it does not follow the payment date. VAT is fixed in local currency at the time of supply. Later FX movements create accounting gains and losses but do not change the VAT you owe or recover.
| UAE | Saudi Arabia | |
|---|---|---|
| Invoice currency allowed | Any currency | Any currency |
| VAT must also be shown in | AED | SAR |
| Rate to use | UAE Central Bank rate | Saudi Central Bank (SAMA) daily rate |
| Rate date | Date of supply | Date the tax becomes due (date of supply) |
| Later payment at a different rate | VAT unchanged; difference is FX | VAT unchanged; difference is FX |
UAE. Article 69 of the VAT Decree-Law requires amounts in a foreign currency to be converted into AED at the rate approved by the Central Bank on the date of supply, and a tax invoice in a foreign currency must show the VAT amount in AED. The Central Bank has published daily rates for this purpose since May 2018. The date of supply is not always the invoice date. In the example above, the invoice should carry "VAT: EUR 500 (AED 2,000.00)" using the Central Bank rate for 1 March, whatever the euro does afterwards. The full field list is in our UAE tax invoice requirements guide.
Saudi Arabia. The same principle applies: a foreign-currency invoice must show the VAT in SAR, converted at the SAMA daily rate on the date the tax becomes due. The most common error advisers report is converting at the payment date instead. For SAR-based businesses, USD invoices convert at a fixed 3.75, so the issue is mainly EUR, GBP and other floating currencies.
Watch for: Your VAT return reports VAT at the date-of-supply rate, while your ledger may record the payment at a different rate. The difference belongs in exchange gain or loss, never in VAT payable. If your VAT account does not reconcile to the return, a misplaced FX difference is one of the first things to check.
How do bank FX spreads differ from exchange gains and losses?
Your book rate (the central bank or market rate you record at) and the rate your bank actually gives you are different numbers. The bank buys a currency from you below the mid-market rate, sells it to you above it, and may add a fixed transfer fee. Card processors do the same; Stripe, for example, publishes a currency conversion fee on top of its card fees, as covered in our Stripe payments, fees and payouts guide.
In the example, say the bank credits AED 42,950 for the EUR 10,500 instead of the AED 43,050 the book rate on 15 April implies. You have two clean options:
| Approach | Bank (Dr) | Bank charges (Dr) | AR (Cr) | FX gain (Cr) |
|---|---|---|---|---|
| Split the spread out (preferred) | 42,950 | 100 | 42,000 | 1,050 |
| Fold everything into FX | 42,950 | 0 | 42,000 | 950 |
Both entries balance. Splitting the spread out keeps the FX line about market movements and shows what the bank costs you. The same thinking applies to USD in pegged economies: a USD 10,000 receipt converted at AED 3.6700 instead of 3.6725 costs AED 25, which is a bank charge, not an exchange loss.
How are FX gains and losses treated for corporate tax?
In the UAE, corporate tax starts from accounting profit under IFRS (or IFRS for SMEs up to AED 50 million revenue), so FX gains and losses in profit or loss generally flow into taxable income. Article 20 of the Corporate Tax Law offers an election to recognise certain gains and losses only when realised (for fair-value or impaired items, or only those on capital account), and the FTA treats not electing in the first tax period as an irrevocable choice. How it applies to specific FX balances is not spelled out in the guidance we reviewed, so raise it with your adviser before your first return; our UAE corporate tax filing guide covers the return. In Saudi Arabia, Zakat and income tax also start from the financial statements, and the treatment of unrealised FX is likewise an adviser question. In both countries, keep the revaluation working (balances, rates, source, date) in your year-end file.
From the platform: Staks keeps your books in one base currency and converts each foreign-currency invoice, bill and payment at the exchange rate dated for that document, using a dated rate history. When you record a payment against a foreign-currency invoice or bill, Staks posts the realised difference automatically: the receivable or payable is cleared at the document-date rate, the deposit or payment is converted at the payment-date rate, and the difference goes to the Exchange Gain or Loss account in your chart of accounts. Loan repayments work the same way. Staks does not revalue open balances at month-end, so unrealised gains and losses are a manual journal, and money accounts are held in the base currency (no EUR bank account). Invoices print amounts in the invoice currency only, so add the AED or SAR VAT equivalent in the invoice notes when you bill in a foreign currency.
Frequently asked questions
Does an AED company have FX gains on USD invoices?
Almost none. The dirham has been pegged at AED 3.6725 per USD since 1997, so a USD invoice booked and paid at the peg creates no exchange difference. The small gap you see on your bank statement is usually the bank's conversion spread, which belongs in bank charges.
Where do FX gains and losses go in the chart of accounts?
Most small businesses use one account, "Exchange gain or loss", reported below operating profit with other income and expenses. Larger businesses sometimes split realised and unrealised into two accounts. Either way, keep it out of sales and cost of sales. Our chart of accounts guide shows where it sits.
Do I need to reverse an unrealised FX entry next month?
Not necessarily. You can reverse it on the first day of the next month and book the full difference at settlement, or carry the revalued balance forward and book only the remaining difference. The total gain or loss is the same; choose one method and use it consistently.
Can I invoice in USD or EUR if I am VAT-registered in the UAE or Saudi Arabia?
Yes. Both countries allow invoices in a foreign currency, as long as the VAT amount is also shown in AED (UAE) or SAR (Saudi Arabia), converted at the central bank rate for the date of supply. Your VAT return is always filed in local currency.
Related reading
- Chart of accounts for UAE small businesses
- Stripe payments, fees and payouts: accounting in the UAE
- Running your books in USD and LBP
- Month-end close checklist for UAE small businesses
Book each foreign-currency invoice at the date-of-supply rate, keep VAT in local currency, post the difference at payment to exchange gain or loss, and revalue open EUR, GBP and INR balances at each close. Start a 14-day free trial of Staks to record foreign-currency invoices and bills with the realised exchange difference posted when they are paid.