← Insights

FX differences are not disputes

Half the intercompany 'differences' between a USD-invoicing entity and a EUR-booking entity are two exchange rates. Here is how to isolate the FX component so the real differences stand out.

12 October 2026 · TieOut Pilot team · 2 min read

Entity A in Hong Kong invoices 30,000 USD. Entity B in Frankfurt books it in EUR. A translates at the rate on the invoice date; B translates at the rate on the day the payment leaves. At month-end A's receivable and B's payable differ by 310.50 EUR. Nobody owes anybody anything, and the item sits on the reconciliation as a "difference".

Three rates, one invoice

In a multi-currency group each intercompany item can legitimately carry three rates: the booking rate on each side and the group policy rate for consolidation. Differences between them are translation, not transaction. The accounting is settled — revalue to policy rate, book the FX gain or loss — but the reconciliation process rarely separates FX from everything else, so the FX noise hides the real items.

Isolating FX

The method is mechanical:

  1. Compare the two sides in the invoice currency first. If they agree, the entire difference is FX.
  2. Pull the rate each side used from its posting (amount in local currency ÷ amount in invoice currency).
  3. Recompute both at the policy rate. The residual after that is the non-FX difference, if any.

30,000 × 0.9000 = 27,000 (A). 30,000 × 0.9104 = 27,310.50 (B). Policy month-end rate 0.9070 → both 27,210.00. Residual zero; the 310.50 is entirely translation, and each side has a small revaluation entry.

Where it goes wrong

  • Partial payments across a rate move, so neither side's balance is at one rate.
  • Payment in a third currency through a bank conversion: the implied bank rate includes a spread that is a bank charge, not FX.
  • Policy rate sources that differ: one entity uses the ECB fixing, another a Bloomberg close.

Each of these is still mechanical once the documents are open: the bank statement shows the implied rate, the policy says which source. What they share is that a person doing them by hand has to find and open three documents per item.

Reconciliation hygiene

Report FX separately. A reconciliation that shows "37 items explained, of which 19 FX translation, 310.50 total" tells a controller something; "37 differences under investigation" does not. TieOut Pilot classifies FX as its own explanation class for exactly this reason, and shows both rates and the policy rate on every FX item so the controller can see the whole computation without opening anything.

Related

TieOut Pilot is in early access.

We are onboarding a small number of design partners with real documents and real deadlines. Tell us what you work on and we will set up a workspace with your material.