For UAE businesses dealing in multiple currencies — common given the import-heavy, internationally-connected economy — exchange rate accounting is a frequent source of confusion. Why does Odoo show gains and losses you didn’t expect? What’s revaluation? Here’s how multi-currency works in Odoo and how to handle it correctly.
Why Exchange Gain/Loss Happens
When you transact in a foreign currency, the value in your home currency (AED) changes as exchange rates move. If you invoice a customer in USD and the rate changes before they pay, the AED value differs — creating a realized exchange gain or loss. This isn’t an error; it’s the reality of currency fluctuation.
Realized vs Unrealized
| Type | When It Occurs |
|---|---|
| Realized gain/loss | When a foreign transaction is settled (paid) |
| Unrealized gain/loss | On open balances at period-end (revaluation) |
Realized gains/losses happen when foreign-currency transactions are actually settled. Unrealized gains/losses arise from open foreign-currency balances whose AED value has changed but which haven’t yet been settled.
How Odoo Handles It
Odoo tracks foreign-currency amounts alongside their AED equivalents, using exchange rates. When transactions settle at a different rate than recorded, Odoo posts the realized gain/loss automatically. This keeps your books accurate to currency movements.
Currency Revaluation
At period-end, open foreign-currency balances (receivables, payables, bank accounts) should be revalued to current exchange rates — recognizing the unrealized gain/loss. Odoo’s revaluation process handles this, ensuring your period-end financials reflect current currency values.
Why Your Numbers Might Look Off
- Exchange rates not updated: If rates are stale, valuations will be wrong
- Revaluation not run: Open balances show old values without it
- Rate configuration: Incorrect rate setup causes wrong conversions
- Wrong currency on transactions: Transactions recorded in the wrong currency
Setting Up Multi-Currency Correctly
- Enable and configure the currencies you use
- Set up exchange rates (and keep them updated — automatically if possible)
- Configure the exchange gain/loss accounts
- Run revaluation at period-end for accurate financials
Keeping Rates Current
Stale exchange rates are a common problem. Odoo can update rates automatically from external sources — keeping your conversions and valuations accurate without manual effort. This is worth setting up if you transact in foreign currencies regularly.
When to Get Help
Multi-currency accounting has real complexity, and getting it wrong distorts your financials. If your multi-currency numbers don’t make sense, or you’re unsure about revaluation, it’s worth getting the configuration reviewed by someone who understands both Odoo and accounting.
We’ll set up and verify your Odoo multi-currency configuration.
Get Accounting Support