03 Apr Foreign Currency in Oracle E-Business Suite – The Basics
Ledger/Set of Books in Oracle General Ledger
Oracle GL stores all account balances, updated by financial transactions in all other modules of E-Business Suite (EBS).
Ledgers, known as Sets of Books prior to Release 12, are set up to store balances for an organization or group of organizations that share the same Functional Currency, Accounting Calendar, Chart of Accounts and Accounting Method.
So each Ledger has a single ‘Functional Currency’, which is the prime reporting currency for the group of organizations. Oracle has the ability to set up additional reporting currencies, but we’ll leave that for another post.
We will use the example of a Ledger with USD as the Functional Currency.
Foreign Currency Transactions
A transaction created in any module of EBS is done in the context of a Ledger. If the currency of the transaction is different to the Functional Currency of the Ledger, then this is a Foreign Currency transaction.
Examples of transactions include:
- Oracle Payables: Supplier Invoices and Payments
- Oracle Receivables: Customer Invoices and Receipts
- Oracle General Ledger: Journals
For every transaction, Oracle stores the amount in Entered Currency (currency of the transaction) and Functional Currency (the equivalent in the Functional Currency of the Ledger).
The conversion from Entered Currency to Functional Currency is done by Oracle using the following data fields:
- Exchange Rate Type – type against which rates are stored, often defaulted from the configuration of the module in question*
- Exchange Rate Date – date to find relevant rate, often defaulted to the transaction date or system date
* – The special rate type ‘User’ allows the user to enter their own exchange rate for the transaction. See separate post on Exchange Rate Types in Oracle EBS.
For example, consider a supplier invoice for 100.00 EUR to our US-based company whose Ledger is in USD. The exchange rate stored in EBS between EUR and USD for rate type ‘Corporate’ and the GL date of the invoice is 1.2*. Then the invoice amount would be stored twice in two separate fields:
- 100.00 EUR (Entered Currency field)
- 120.00 USD (Functional Currency field)
*-The GL Date is the accounting date and defaults from either the invoice date or the current date, depending on your Payables Options settings.
Accounting and Transfer to GL
When Foreign Currency transactions are transferred from a sub-ledger (any EBS module that transfers to GL) to the GL, they are created as journals in GL.
In R12, the transaction is accounted first by the Sub-Ledger Accounting (SLA) module. The below applies to SLA journals and GL journals. Prior to R12, some modules had similar functionality, but each module stored the accounting differently.
These journals are in the Entered Currency of the transaction, with the Functional Currency equivalent stored against each line (debit or credit).
In our example, the supplier invoice would create the GL journal below:
The debit and credit reflect tax distributions; the net Dr/Cr is 100.00 EUR and 120.00 USD.
Balances in GL
When GL journals are posted, they update the GL account balances, which are stored in the table GL_BALANCES.
Account balances are stored for Foreign Currencies as well Functional Currencies. Note that the Foreign Currency balances represent the total of only the journals in that particular Foreign (Entered) Currency, whereas the Functional Currency balances represent the sum of journals in all currencies, using the Functional Currency equivalent.
So, when a Foreign Currency journal is posted, it will update two balances; one for Foreign Currency and one for Functional Currency.
Our example invoice would update the following two balances of the supplier liability account for the period of the transactions:
- EUR Balance: +100.00 credit
- USD Balance: +120.00 credit