Business Central: Why Forex Gain/Loss Is Wrong When Applying a Foreign Currency Payment to an Invoice in Local Currency with same equivalent
Symptom: You post a Cash Receipt Journal in a foreign currency, key in the actual bank rate directly on the line, and the receipt posts correctly. Then you apply that receipt to the customer's invoice (recorded in Local Currency) — and Business Central posts a forex gain/loss that shouldn't be there at all. It looks like the customer paid more (or less) than what actually landed in the bank. The scenario Local Currency (LCY): GBP Invoice: GBP 1,000 Customer pays: USD 1,346.39 — the bank-negotiated rate that day meant this USD amount exactly covers the GBP 1,000 invoice, no more, no less. Expected result: Payment = Invoice. Applying the receipt should close the invoice with zero forex gain/loss. What actually happens: after applying, Business Central posts a gain or loss anyway, and the receipt's own Amount (LCY) changes in the process. Why this happens You post the Cash Receipt Journal with Currency Code = USD, and use Change Exchange Rate (the Assist...