Skip to main content

How Do I Remeasure Foreign Currencies?

Remeasure posted currency balances to reporting currency at spot rates at month end closing.

Geoff Ostrega avatar
Written by Geoff Ostrega
Updated this week

Description

SoftLedger is a multi currency system that can create transactions in all fiat or custom currencies and convert them to the functional reporting currency of your Locations. In this way, you can post transactions in any currency and immediately review all activity on the same basis in the functional reporting currency of the SoftLedger Location being reviewed.​

For Balance Sheet Type accounts, balances in posted currencies that are different to the functional reporting currency of the entity can be remeasured at every month end. Remeasuring is the process of comparing the month end spot rate to individual transaction rates between posted currency and reporting currency, and recognizing a difference (gain/loss) based on the changes in foreign currency exchange rates.

If a gain or loss is recognized, the system will create month end reversing journal entries to debit/credit the Ledger Account being remeasured against a debit/credit of the Location's selected Unrealized Foreign Currency Gain/Loss Account. When there is a gain from changes in foreign currency exchange rates, the Unrealized FX Gain/Loss Account will be coded to the Credit side, whereas when there is a loss from exchange rate changes, the Unrealized FX Gain/Loss Account will be coded to the Debit side.

Please note that Foreign Currency Remeasurement is separate to Foreign Currency Translation. Remeasurement recognizes differences in the posted currency to reporting currency per entity, whereas Translation converts subsidiary ending balances from one entity's reporting currency to its parent(s). See this complete guide to CTA for more details on Foreign Currency Translation -->

Important Considerations

  • This is ONLY for Balance Sheet Type Ledger Accounts (Type: Asset, Liability, Equity).

  • Remeasurement Entries are reversing, and will be automatically done each monthly close for any Ledger Accounts that are marked to Remeasure at the time of closing.

  • Remeasurement is separate from Foreign Currency Translation (converting final subsidiary account balances from a subsidiary in one functional currency to a parent location in another functional currency). For details on the rats used for Translation of balances between subsidiaries and parent locations, review the Consolidation Rates Article for more detials -->

The Full Process for Forex Remeasurement

Identify all Ledger Accounts to be remeasured

The first step is to determine which Ledger Accounts are to be remeasured. In general, this is any balance sheet account you expect to have a posted currency different than the reporting currency of your Locations.

Warning: Only balance sheet accounts (Type: Asset, Liability, or Equity) can be remeasured. Income statement accounts do not carry cumulative balances and therefore should not be set to be remeasured.

For any Ledger Accounts that need to be remeasured at month end, ensure that Remeasure Forex Rates is checked when creating or editing Ledger Accounts under Financial>Accounts:

Set the Forex Gain/Loss Account

Before closing the Forex module for any Accounting Period, be sure that you have the Forex Gain/Loss Account set under the Location details available under Financial>Locations for each Location. This is the account that will be used when calculating gain or loss from foreign currency fluctuations, and will be on the other side of the Ledger Accounts chosen to be remeasured in the previous step

If you would like to use a different Forex Gain/Loss Account for each Location within SoftLedger, you can set a Ledger Account under the Location details in Financial>Locations.

Remeasure Forex Rates

Under the Accounting Periods section, click the lock button icon under Forex, for the period you want to close. For any Locations with transactions booked in currencies that are different than the reporting currency for that Location, you have the option to set a new rate:

Once you enter Rates and then Confirm, the following will happen (see the Detailed Steps on Remeasurement Process below for more details):

  1. A Journal Entry will be recorded for any gains and losses resulting from the change from the original transaction rate

    1. These Journals will be produced per Ledger Account per Location per Currency Pair and per Elimination/Standard lines

  2. The balance for any Ledger Accounts set to be remeasured will be adjusted accordingly

After closing the FX task, you can always review rates and journals created from foreign currency remeasurement for the period by clicking into the lock icon once that FX task is closed:

Detailed Steps on Remeasurement Process

Step 1: User determines which Ledger Accounts need to be remeasured

The system will check to determine which Ledger Account balances are to be remeasured at month end when closing the Forex Task in the Accounting Periods module with the following criteria:

  1. Ledger Account setting for Remeasure Forex is set to True (meaning the toggle is enabled).

  2. Ledger Account set to remeasure has Posted Journals booked in a posted currency that is different than its Location's reporting currency.

  3. 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 date of the Accounting Period being closed).

When the FX task is closed, the system will check which Ledger Accounts have been marked to be remeasured at the time of closing the FX Task. Be sure to review your Financial>Accounts section to determine which Ledger Accounts should be set to remeasure.

Step 2: System calculates what each currency balance should be

Once it is known which Ledger Accounts need to be remeasured, the system determines what the ending balance for the ledger account would be if the monthly period spot rate had been used for all the transactions for this Ledger Account. The process:

  1. 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.

    1. Note: this balance is calculated split between standard lines and elimination lines.

  2. Record what the balance for each Ledger Account in each Location would be if the user inputted remeasurement rate had been used instead of the original transaction forex rate.

  3. Calculate the difference between existing balance and the newly calculated remeasured balance and sum up in each Location for all Ledger Accounts marked to remeasure to know what values will be entered in the Journal Entries in the next step as a gain or loss.

Step 3: System created reversing Journal Entries between existing and new remeasured balance

Once the delta between existing balance and new remeasurement balance is known, the system will book Journal Entries with the Ledger Account being remeasured, and the Forex Gain/Loss Account stored for the Location. See table on how Journals will be produced based on the scenario in Foreign Currency fluctuations for the period between transaction rates and end of monthly period spot rate:

Scenario

DEBIT of Reversing Journal

CREDIT of Reversing Journal

Gain from Foreign Currency Fluctuation

Ledger Account being Remeasured

Location's FX Gain Loss Account

Loss from Foreign Currency Fluctuation

Location's FX Gain Loss Account

Ledger Account being Remeasured

These entries are booked for the last day of the month for the accounting period being remeasured (e.g January 31st for a January close) and then reverse on the following day (e.g. February 1st).

Step 4: Repeat process for every eligible Ledger Account/Location/Currency Pair/Line Type set

The remeasurement process is completed for every combination of:

  • Ledger Account set to be remeasured

  • Location

  • Currency Pair (meaning posted currencies with ledger account to location functional reporting currency)

  • Line Type (balances are remeasured separately between standard and elimination lines)

Did this answer your question?