Business Central handles foreign currency transactions by converting amounts to your local currency (LCY) using exchange rates you define. The system tracks both the foreign currency amount and the LCY equivalent on every transaction, and at period end you can revalue open entries to reflect current exchange rates.
This guide covers the full setup and transaction flow, from configuring currencies to posting period-end exchange rate adjustments.
Step 1: Set Up Currencies
- Search for Currencies using
Alt + Q. - The list shows all currencies defined in the system. Select New to add a currency.
- Fill in the following fields:
| Field | Description |
|---|---|
| Code | ISO currency code (e.g., USD, EUR, GBP) |
| Description | Full name of the currency |
| Unrealized Gains Acc. | G/L account to post unrealized exchange rate gains |
| Unrealized Losses Acc. | G/L account to post unrealized exchange rate losses |
| Realized Gains Acc. | G/L account for realized gains on payment application |
| Realized Losses Acc. | G/L account for realized losses on payment application |
| Residual Gains Acc. | G/L account for rounding differences |
| Residual Losses Acc. | G/L account for rounding differences |
- Set the Invoice Rounding Precision and Amount Rounding Precision if needed for the currency.
Step 2: Enter Exchange Rates
Exchange rates are stored per currency with an effective date. Business Central uses the most recent rate on or before the transaction date.
- On the Currencies page, select a currency and choose Exchange Rates from the actions menu.
- Select New to enter a rate.
- Set the Starting Date, Exchange Rate Amount, and Relational Exch. Rate Amount.
For example, to define that 1 USD = 10.50 NOK:
| Field | Value |
|---|---|
| Starting Date | 01/01/2025 |
| Exchange Rate Amount | 1 |
| Relational Exch. Rate Amount | 10.50 |
- Add a new line each time the rate changes.
Step 3: Update Exchange Rates Automatically
Business Central can fetch current exchange rates from an exchange rate service.
- Search for Currency Exchange Rate Services using
Alt + Q. - Select New or use an existing service (such as the European Central Bank feed).
- Configure the Service URL and map the response fields to Business Central currency codes.
- Enable the service and set a schedule if you want automatic updates.
- To update rates manually, go to the Currencies page and choose Update Exchange Rates from the actions menu.
Step 4: Assign Currencies to Customers and Vendors
You can set a default currency on customer and vendor records so that documents are automatically created in that currency.
- Search for Customers using
Alt + Qand open a customer record. - Navigate to the Invoicing tab.
- Set the Currency Code field to the customer’s currency (e.g.,
USD).
Any sales document created for this customer will default to USD. The same applies to vendors, set the Currency Code on the Invoicing tab of the Vendor Card.
Step 5: Post a Foreign Currency Invoice
When you create a sales or purchase document for a customer or vendor with a currency code, Business Central handles the conversion automatically.
- Create a Sales Invoice for a USD customer.
- The invoice header will show the Currency Code as
USD. - Enter line amounts in USD. Business Central shows the LCY equivalent in the Amount (LCY) field using the current exchange rate.
- Post the invoice.
The posted entry records both the USD amount and the LCY amount. The exchange rate used is stored on the entry and visible in Customer Ledger Entries.
Step 6: Apply Payments and Realize Exchange Gains/Losses
When a customer pays in a foreign currency, the payment may be at a different exchange rate than the invoice. Business Central calculates the difference when you apply the payment to the invoice.
- Post the payment receipt in the Cash Receipt Journal or through a bank import.
- When applying the payment to the invoice, Business Central calculates the difference between the invoice rate and the payment rate.
- The difference is posted automatically to the Realized Gains Acc. or Realized Losses Acc. defined on the currency.
Step 7: Run Adjust Exchange Rates at Period End
At the end of each period, open foreign currency entries (unpaid invoices, open payables, bank accounts in foreign currency) need to be revalued to the current exchange rate. This creates unrealized gain/loss entries.
- Search for Adjust Exchange Rates using
Alt + Q. - Set the Starting Date and Ending Date for the adjustment (typically the last day of the period).
- Select which entry types to adjust: Customer, Vendor, Bank Account, and/or G/L Account.
- Set Post to enabled if you want to post the entries directly, or leave it off to preview first.
- In the Posting Date field, enter the period-end date.
- Enter a Document No. for the adjustment entries.
- Select OK to run the job.
Business Central creates G/L entries that adjust the LCY value of each open entry to reflect the new exchange rate. These entries are posted to the unrealized gains and losses accounts defined on the currency.
Unrealized vs Realized Exchange Differences
| Type | When It Occurs | Account Used |
|---|---|---|
| Unrealized gain/loss | Period-end revaluation of open entries | Unrealized Gains/Losses Acc. on the currency |
| Realized gain/loss | When payment is applied to an invoice | Realized Gains/Losses Acc. on the currency |
Unrealized entries are reversed or adjusted the next time you run Adjust Exchange Rates. Realized entries remain permanently once the payment is applied.
To track how foreign currency gains and losses affect your income statement, see How to Use Financial Reports in Business Central.