General Ledger - Process Unrealized FX Gain/Loss

Pgm: GLACCRUFX – Accrue Unrealized FX Gain/Loss; standard Treeview path: General Ledger > Utilities > Process Unrealized FX Gain/Losses

This utility is used to identify all open Accounts Payable vouchers and Accounts Receivable invoices with the transaction currency being different from the company currency, calculate the currency gain/loss on the outstanding amounts, and post as General Ledger accrual/non-accrual transactions. When the ‘Recognize FX Gain/Loss’ checkbox is checked, then non-accrual transactions are created, and when unchecked accrual transactions are created. This screen is also used to print an edit list and posting reports of unrealized FX gain/loss transactions. 

Note: To use this utility, the 'Allow to recognize Unrealized FX Gain/Loss' checkbox must be checked at the company level in the [Company Detail] button's pop-up window, which is located on the Maintain Companies screen. For more information, please refer to the Accounting Details section in General Ledger - Maintain Companies.

Users must have the following control accounts set for this purpose.

  • AP Control > Accounting > Unrealized FX Gain/Loss Account

  • AR Control > Accounting > Unrealized FX Gain/Loss Account

The process train for the Process Unrealized FX Gain/Loss screen has the following standard CMiC nodes:

  • Create Transactions

  • Print Edit List

  • Post Transactions

Users must perform this as a month end (end of General Ledger period) task only. Also, this must be performed only once, to avoid the risk of accruals posted multiple times.

The generated transactions will be posted as non-accrual transactions when the ‘Recognize FX Gain/Loss’ checkbox is checked, and as accrual transactions (‘Accrual’ box is checked) when the ‘Recognize FX Gain/Loss’ checkbox is unchecked.

Accrual reversals can be performed either manually or automatically by setting the drop-down menu in the Auto-Reverse Accrual field to “Enable” in the GL Control File screen (standard Treeview path: General Ledger > Setup > Local Tables > Control File Options).

The postings will be one set of General Ledger entries for Accounts Payable gain/loss and another set for Accounts Receivable gain/loss for each currency with open vouchers/invoices.

The General Ledger transaction postings are summed up amounts per currency.

The unrealized FX gain/loss accruals will be posted in General Ledger, to the Accounts Payable/Accounts Receivable control currency gain/loss accounts. The posting will be exactly as the actual posting of currency gain/loss would take place. The newly created accounts will be used as off-set accounts for these transactions.

Pgm: APCTRLFM - AP Control File; standard Treeview path: Accounts Payable > Setup > Local Tables > Control File Options – Accounting tab

Pgm: ARCTRLFM – Maintain AR Control Settings; standard Treeview path: Accounts Receivable > Setup > Local Tables > Control File Options – Accounting tab

Non-Accrual Reversal:

Pgm: GLACCRUFX - Accrue Unrealized FX Gain/Losses; standard Treeview path: General Ledger > Utilities > Process Unrealized FX Gain/Losses

An important element of recognizing unrealized FX Gain/Loss is that every time it is recognized, we can only recognize a gain or loss that occurred since previous recognition or invoice entry, whichever comes last.

In order to identify when the previous recognition was and how gain/loss changed since then, the system needs to store currency conversion rates used in previous recognition in the History Table.

 

Company CAN1, Currency CAD

1 invoice was entered in March of 2020:

Date Item Amount Currency FX Rate

5-Mar-20

AP Invoice 1

1,000.00

USD

1.35

 

At the end of March (Fiscal year 2020, fiscal period 3) currency conversion factor was as follows:

From Currency To Currency FX Rate

USD

CAD

1.38

 

Unrealized FX Gain/Loss was recognized at the end of March. Amount of gain or loss was determined using the following rule:

 

FX Gain/Loss = (Outstanding Invoice Amount) * (Current Conversion Rate – Invoice Conversion Rate)

 

For USD AP Invoice 1 FX Gain/Loss was equal to 1,000.00*(1.38 – 1.35) = 30.00 CAD.

Distribution of this transaction was recorded as:

 

AP FX Gain/Loss

30.00

 

CAD

AP Realized FX Gain/Loss

 

30.00

CAD

 

Pgm: GLPOST – Post Transactions; standard Treeview path: General Ledger > Utilities > Process Unrealized FX Gain/Losses – Post Transactions node

At the time of posting of these transactions, current conversion rates used in calculations were stored in History log:

 

Company Year Period From Currency To Currency FX Rate Rate Date

CAN1

2020

3.00

USD

CAD

1.38

31-Mar-20

 

Rate date is always recorded as the last date of the GL period.

By the end of April, 2020 outstanding amount in AP was:

 

Date Item Amount Currency FX Rate

5-Mar-20

AP Invoice 1

1,000.00

USD

1.35

 

At the end of April, 2020 (Fiscal year 2020, fiscal period 4) currency conversion factors were as follows:

 

From Currency To Currency FX Rate

USD

CAD

1.36

 

Unrealized FX Gain/Loss was recognized at the end of April. Since FX Gain/Loss was already recognized previously, we need to start using historical rates recorded at that time. If the invoice date is prior to the historical rate date, then we can only recognize gain/loss relevant to that historical rate. If, however, the invoice date is after the historical rate date, then we need to recognize loss relevant to the invoice rate. In our example, historical rates were recorded as of March 31 2020. This rule can be formulated as follows:

 

FX Gain/Loss = (Outstanding Invoice Amount) * (Current Conversion Rate – Starting Rate)

Where Starting Rate = latest of (Historical Rate or Invoice Rate)

If Historical Rate does not exist, then Starting Rate = Invoice Rate.

Applying the rule to each invoice, still outstanding in April, we determine the starting rate:

 

Date Item Curr Relation to Rate Date Starting Rate FX Rate

5-Mar-20

AP Invoice 1

USD

Before

Historical

1.38

 

For USD AP Invoice 1 FX Gain/Loss is equal to 1,000.00 * (1.36 – 1.38) = -20.00 CAD

Distribution, related to USD invoices:

 

AP FX Gain/Loss

 

 20.00

CAD

AP Realized FX Gain/Loss

 20.00

 

CAD

 

Again, when this transaction is posted, currency conversion rates need to be recorded in History Log:

 

Company Year Period From Currency To Currency FX Rate Rate Date

CAN1

2020

4

USD

CAD

1.36

30-APR-20

    

 

Accrual Reversal:

Pgm: GLACCRUFX - Accrue Unrealized FX Gain/Losses; standard Treeview path: General Ledger > Utilities > Process Unrealized FX Gain/Losses

For Accrual Reversal unrealized FX Gain/Loss transaction, user should uncheck the checkbox “Recognize FX Gain/Loss”.

The same Formula is used here as well, as explained above in the Non-Accrual Section.

Pgm: GLACCRUFX - Accrue Unrealized FX Gain/Losses; standard Treeview path: General Ledger > Utilities > Accrue Unrealized FX Gain/Losses

AP / AR Voucher/Invoice Posting

 

Comp

Business Partner Type

BP Code

Curr

Invoice#

AP/AR Invoice Posting

Amount

Currency Conversion

Exchange Rate

ZZ

Vendor

BP7777

CAD

BP7777-11

January 1, 2020

10000.00

CAD to USD

0.7702278

ZZ

Vendor

BP7777

CAD

BP7777-12

January 1, 2020

18000.00

CAD to USD

0.7702278

ZZ

Vendor

LENOVO

MXN

LENOVO-11

January 1, 2020

25000.00

MXN to USD

0.0528036

ZZ

Vendor

LENOVO

MXN

LENOVO-12

January 1, 2020

20000.00

MXN to USD

0.0528036

ZZ

Customer

CANCOM

CAD

AR000016

January 1, 2020

45000.00

CAD to USD

0.7702278

ZZ

Customer

CANCOM

CAD

AR000017

January 1, 2020

32000.00

CAD to USD

0.7702278

ZZ

Customer

ZZ-EANDL

MXN

AR000018

January 1, 2020

70000.00

MXN to USD

0.0528036

ZZ

Customer

ZZ-EANDL

MXN

AR000019

January 1, 2020

55000.00

MXN to USD

0.0528036

 

Outstanding AP Vouchers /AR Invoices:

 

Comp Business Partner Type BP Code Curr Invoice# AP/AR FX Gain/Loss Accrual as of Vou/Inv Outstanding Amount Currency Conversion Exchange Rate

ZZ

Vendor

BP7777

CAD

BP7777-11

March 31, 2020

5000.00

CAD to USD

0.7461807

ZZ

Vendor

BP7777

CAD

BP7777-12

March 31, 2020

10000.00

CAD to USD

0.7461807

ZZ

Vendor

LENOVO

MXN

LENOVO-11

March 31, 2020

10000.00

MXN to USD

0.0509681

ZZ

Vendor

LENOVO

MXN

LENOVO-12

March 31, 2020

12000.00

MXN to USD

0.0509681

ZZ

Customer

CANCOM

CAD

CANCOM-11

March 31, 2020

10000.00

CAD to USD

0.7461807

ZZ

Customer

CANCOM

CAD

CANCOM-12

March 31, 2020

16000.00

CAD to USD

0.7461807

ZZ

Customer

ZZ-EANDL

MXN

EANDL-11

March 31, 2020

40000.00

MXN to USD

0.0509681

ZZ

Customer

ZZ-EANDL

MXN

EANDL-12

March 31, 2020

25000.00

MXN to USD

0.0509681

 

Pgm: GLPOST – Post Transactions; standard Treeview path: General Ledger > Utilities > Accrue Unrealized FX Gain/Losses – Post Transactions node

 

Company Department Account Account Name Dr Cr Source Currency

ZZ

00

5000.105

AP/AR Currency Gain/Loss

 

360.71

AP

CAD/USD

ZZ

00

5000.105

AP/AR Currency Gain/Loss

625.22

 

AR

CAD/USD

ZZ

00

5000.115

FX Currency Gain/Loss Accrual

360.71

 

AP

CAD/USD

ZZ

00

5000.125

FX Currency Gain/Loss Accrual

 

625.22

AR

CAD/USD

 

Company Department Account Account Name Dr Cr Source Currency

ZZ

00

5000.105

AP/AR Currency Gain/Loss

 

40.38

AP

MXN/USD

ZZ

00

5000.105

AP/AR Currency Gain/Loss

119.31

 

AR

MXN/USD

ZZ

00

5000.115

FX Currency Gain/Loss Accrual

40.38

 

AP

MXN/USD

ZZ

00

5000.125

FX Currency Gain/Loss Accrual

 

119.31

AR

MXN/USD