- How does it work?
- The Full Process for Forex Revaluation
- Important Considerations
How does it work?
Step 1: Determine which Ledger Accounts need to be revalued
The system will check to determine which Ledger Account balances are to be revalued at month end when closing the Forex Task in the Accounting Periods module with the following criteria:
- Ledger Account setting for “revalue_fx” = true
- Ledger Account has Posted Journals booked in a currency that is different than its Location's, or any of it's parent Locations, reporting currency
- Ledger Account has Posted Journals with “posted_date” less than or equal to this Accounting Period's end date (e.g. Journals prior to the close of any period, such as January 31st, 2022)
Step 2: Calculate what each currency balance should be
Once it is known which Ledger Accounts need to be revalued, the system replaces the transaction rate used at time of transaction with the inputted forex revaluation rate at month end to determine what each posted currency balance should be. The process:
- Recognize the balance for each posted currency used for the Ledger Account in each Location from the existing transaction rate used for all Journal Entries.
- Record what the balance for each Ledger Account in each Location would be if the user inputted revaluation rate had been used instead of the original transaction forex rate.
- Calculate the difference between existing balance and the newly calculated revaluation balance and sum up in each Location for all Ledger Accounts marked to revalue to know what values will be entered in the Journal Entries in the next as a gain or loss.
Step 3: Create reversing Journal Entries between existing and new revaluation balance
Once the delta between existing balance and new revaluation balance is known, the system will book Journal Entries with the Ledger Account being revalued, and the Forex Gain/Loss Account stored for the Location. If there is a gain from the forex fluctuation, the forex account will be used on the credit side, and if there is a loss, then the forex account will be used on the debit side.
These entries are booked for the last day of the month for the accounting period being revalued (e.g January 31st for a January close) and then reverse on the following day (e.g. February 1st). See the example forex revaluation article to get an idea of what this looks like.
Step 4: Repeat the above process for each Ledger Account balance in each Location
This process is started at the lowest level Location and then works its way up to parent Locations, all the way up until the Global Location.
Note: If using Forex Revaluation, Ledger Accounts set to revalue should be set to the Global Location with access to Child Locations, since this account needs to be accessed by all Locations up the tree to enter the Forex Revaluation reversing entries. This process will also create reversing Journals in the Global level Location so balances are in accordance with the user inputted forex revaluation rates all the way up to the most Global consolidated level.
The Full Process for Forex Revaluation
Identify all Ledger Accounts to be revalued
Note: Only balance sheet accounts (Type: Asset, Liability, or Equity) can be revalued. Income statement accounts do not carry cumulative balances and therefore should not be revalued.