web
You’re offline. This is a read only version of the page.
close
Skip to main content
Community site session details

Community site session details

Session Id :

Handling Multi Currency in Business Central

Sumit Singh Profile Picture Sumit Singh 1,885
Handling Multi‑Currency in Business Central

Why this guide (and who it’s for)
If your supply chain buys in USD but bank balance is held in EUR (or you choose to pay in EUR), Business Central can settle a USD invoice with a EUR payment, compute realized FX at application, and book unrealized FX at period end—if setup is right and the payment journal is used properly. This post shows the functional steps, accounting logic, and reports to verify results.

Scenario we’ll cover
  • PO currency: USD
  • Vendor invoice currency: USD
  • Payment currency: EUR (from a EUR bank account)
  • Local currency (LCY): Your company currency (e.g., INR)
BC supports creating purchase documents in foreign currencies and analyzing vendor ledgers in both document currency and LCY.

Prerequisites (functional setup checklist)
1) Currencies
  • Create USD and EUR in Currencies, set exchange rates, and assign Realized/Unrealized Gain/Loss accounts on the currency cards.
  • Assign currency codes on the Vendor (USD) and Bank Account (EUR).
2) Allow application across currencies
  • In Purchases & Payables Setup → Appln. between Currencies, choose All.
  • Configure Curr. Appln. Rndg. G/L accounts on Vendor Posting Group for currency rounding differences.

3) Period‑end FX
  • You’ll run Adjust Exchange Rates to post unrealized gains/losses for open vendor entries and update LCY for banks/customers/vendors at period end.
4) Verification reports
  • Use Vendor Ledger Entries and Detailed Vendor Ledger Entries (Built‑in report) for audit and reconciliation.
Process at a glance (diagram)

Step‑by‑step walkthrough
Step 1 — Create PO and Post Vendor Invoice (USD)
  • Create a Purchase Order in USD, post Vendor Invoice.
  • Confirm Currency Factor and LCY on the posted invoice.
  • BC fully supports foreign currency purchases and shows both currency and LCY amounts.




Step 2 (Optional) Run Adjust Exchange Rates before payment
  • If rates moved since invoice posting, run Adjust Exchange Rates to record unrealized FX on open vendor entries.
  • This doesn’t settle anything; it standardizes LCY values at period boundaries, and later realized FX is recognized when you apply the payment.

Step 3 — Prepare Payment Journal in EUR
  • Open Payment Journals. Pick your EUR bank account (Currency = EUR).
  • Enter a line with Currency Code = EUR and choose Apply Entries to select the USD invoice.
  • BC allows applying a EUR payment to a USD invoice when you enable Appln. between CurrenciAnchores (see prerequisites).



Step 4 — Post the journal
  • On posting, BC closes the USD vendor invoice with your EUR payment and books Realized FX difference based on payment date rates (83.5) vs invoice date (83.25)LCY. If cross‑currency application is enabled, currency application rounding may also post to the configured rounding accounts.


Step 5 — Verify & reconcile
  • Use Detailed Vendor Ledger Entries to see application lines, FX effects, and closing.
  • At month‑end, run Adjust Exchange Rates again to post any unrealized FX remaining on open items and banks.
  • We have Preview Posting functionality also before actual posting.






Step-by-step

  • Invoice posted:
    USD 1,000 × 83.50 =
    ₹83,500 (LCY)
  • Payment in EUR:
    LCY ÷ EUR rate = 83,500 ÷ 92.10 ≈
    906.62 EUR
·

Why is BC showing ₹815.96 ?

  • The Exchange Rate Amount in your setup is likely 1, not 100.
    If we recalc with Exchange Rate Amount = 1:
[{Difference} = 906.62 * (93.00 - 92.10) = 906.62* 0.90 = ₹815.96 ]

So the reason is:

  • Your Exchange Rate Amount = 1 (not 100).
  • Unrealized FX is on the EUR bank account balance, not the vendor (vendor is closed).
  • Formula used by BC for bank revaluation:
[{Unrealized FX} = {Bank Balance in FCY} * ({Adjmt Rate} - {Current Rate}) ]

Key takeaway

  • ₹815.96 = 906.62 EUR × (93.00 − 92.10)
  • So, there are 2 posted invoices with posted payments with same amount and same dates, hence, 815.96*2 = 1631.92

Best practices & tips
  • Keep exchange rates current (consider an exchange rate service).
  • Enable “Appln. between Currencies” = All for cross‑currency vendor applications; also set Currency Application Rounding accounts to avoid posting errors.
  • Separate bank charges on their own journal line to keep FX realization clean and auditable.
  • Period‑end: Run Adjust Exchange Rates for clean unrealized FX and accurate LCY reporting.
  • Audit & analytics: Use Detailed Vendor Ledger Entries (built‑in report) for transparent drill‑down.

When to run Adjust Exchange Rates
  • Purpose: This job revalues open foreign currency balances (vendors, customers, bank accounts) to reflect current exchange rates and posts unrealized gains/losses.
  • Ideal-timing:
    At period-end (month-end, quarter-end, year-end) after all transactions for that period are posted but before closing the books.
    • This ensures your financial statements reflect the latest currency values for open items.

Why not after every invoice or payment?
  • Running it after each transaction is unnecessary and can clutter your G/L with frequent unrealized FX entries.
  • Unrealized FX is only relevant for open entries (unpaid invoices, bank balances in foreign currency).

What if payment is already made?
  • If the vendor invoice is fully paid, there’s no unrealized FX on that vendor entry.
  • However, your foreign currency bank account may still have a balance, so the job will revalue that.

Alternative approach
  • Daily or weekly runs: Some companies with high FX exposure run it more frequently for internal reporting, but official adjustment is usually at month-end.
  • Always run before financial reporting (e.g., before generating trial balance, P&L, balance sheet).

Summary
  • Run after posting all invoices and payments for the period.
  • Do NOT run immediately after each invoice or payment.
  • Always run before closing the period to reflect accurate FX positions.


Common questions
Q1. Will Adjust Exchange Rates change my original document currency?
No—the job recalculates LCY for open entries and posts unrealized FX; the original document currency remains as posted. Realized FX is captured at application/payment.

Q2. Can I view/pay/apply a EUR payment to a USD invoice out‑of‑the‑box?
Yes—set Appln. between Currencies = All/EMU and configure rounding accounts; then apply the EUR payment to the USD invoice from the Payment Journal.

Q3. Where do I review the FX impact after posting?
Check Detailed Vendor Ledger Entries and the G/L for postings to Realized Gain/Loss and Bank Charges.

Comments