TL;DR Key takeaways
Reconstruct the executed rate and reconcile gross proceeds to the beneficiary credit before measuring costs. Match the reference source, timestamp, currency direction and value date. Distinguish the provider’s evidenced pricing reference from an independent benchmark: a measured shortfall alone does not prove markup, profit or wrongdoing.
A completed FX quote needs an evidence trail connecting the price accepted to the money delivered. An FX reference rate is a rate used as a pricing input or comparison benchmark; those are not necessarily the same thing. For treasury and payment operations, the audit must distinguish the provider’s actual pricing reference from a benchmark selected independently after execution.
What you can—and cannot—establish after execution
With complete records, you can verify the executed customer rate, reconcile gross conversion proceeds to the beneficiary credit, and measure a shortfall against a documented benchmark exchange rate. Establishing which reference the provider actually used requires transaction-linked pricing evidence, not merely a similar historical rate.
Classify your conclusion as provider reference evidenced, independent benchmark comparison, or reference unresolved. A benchmark gap alone does not establish exchange rate markup, provider profit or wrongdoing. This distinction keeps FX transaction cost analysis useful without overstating what the records prove.
Collect the quote, execution and settlement evidence
Build one audit file around the transaction ID. Preserve original records, including their timestamps, before normalising anything.
- Quote evidence: the quote ID, currency pair, buy/sell direction, amounts, displayed rate, creation time, expiry, acceptance time and applicable pricing terms. Keep the original message, API response or screenshot.
- Execution evidence: the trade confirmation, execution timestamp, final rate, source amount actually converted, gross destination amount and contractual value date. Identify any partial fills or replacement quotes.
- Settlement evidence: the source-account debit, payment instruction, fee notices and beneficiary credit. Record each charge’s currency, amount and whether it was deducted from proceeds or debited separately.
Link the records by identifiers and amounts. Do not assume the statement booking date is the trade date or pricing timestamp.
For partial fills, retain each fill’s amount, rate and pricing time. Reconcile their totals to the parent order; do not let a blended confirmation hide fills executed under different quotes or at different times.
Match source, timestamp, direction and value date
Before calculating a difference, align four attributes:
- Source and field. Obtain the source name, exact rate field and historical observation. Establish whether it was a mid, bid, ask, fixing or proprietary reference. A generic description such as market rate is insufficient.
- Timestamp. Identify the contractual pricing event: quote creation, rate lock, acceptance, execution or fixing. Preserve the original time zone and UTC offset. Record timestamp precision; a minute-level record cannot support a second-exact claim.
- Currency direction. Write the units explicitly, such as USD received per EUR sold. Match both rates to that orientation and, for a two-way quote, identify the relevant dealing side.
- Value date. Match the contractual settlement date. A forward needs a corresponding forward reference or spot plus matched forward points—not a comparison with spot alone.
The ECB’s daily reference rates are information-only, and the ECB strongly discourages transaction use. They are not timestamp-matched executable quotes. WMR FX benchmarks include London 4pm closing spot rates: a named fixing has its own methodology and time, rather than being interchangeable with a live quote.
A mid-market exchange rate sits between bid and ask; it is not an executable dealing price. Retain the bid-ask spread where available, and note whether the data represents the transaction’s size and terms.
For a like-for-like executable comparison, seek an archived, contemporaneous quote for the same direction, notional, value date, credit terms and fee treatment. Check whether it was firm for your company or merely indicative; an indicative feed cannot prove an alternative price was available to trade.
When the historical observation is missing
If historical data is unavailable, request the provider’s retained snapshot or an archived extract from the named source. Confirm that any archived series uses the methodology and rate field applicable on the trade date. Record whether the timestamp marks the market observation, publication or receipt: a delayed feed can make a precisely timestamped record stale. Preserve any indicative-price label.
If only nearby observations survive, label the comparison approximate and show the time gap. Do not interpolate a rate and present it as the provider’s actual reference. An exact reference remains unresolved without supporting records.
Worked audit: selling EUR and receiving USD
All figures below are hypothetical. Assume a documented reference matched to the pricing time and value date. The company sells EUR 100,000 and buys USD. Both rates express USD received per EUR sold, so a lower rate produces fewer dollars.
- Matched reference rate: 1.1000 USD per EUR.
- Executed customer rate: 1.0912 USD per EUR.
- Reference gross proceeds: EUR 100,000 × 1.1000 = USD 110,000.
- Actual gross proceeds: EUR 100,000 × 1.0912 = USD 109,120.
- Gross difference: USD 110,000 − USD 109,120 = USD 880.
Express the relative rate shortfall in basis points:
(reference − customer) / reference × 10,000
(1.1000 − 1.0912) / 1.1000 × 10,000 = 80 bps, or 0.80%.
The 80 bps gap is a measured shortfall against the chosen benchmark, not proven provider markup or profit. If the reference is a mid, the comparison does not isolate the executable spread, pricing adjustments or the provider’s underlying costs.
If your records instead quote EUR per USD, invert both customer and reference rates before using this USD-per-EUR formula. Do not reuse the subtraction formula blindly across quotation directions.
Separate conversion economics from payout deductions
Now assume a USD 40 fee deducted after conversion, with no other charges. The beneficiary receives USD 109,120 − USD 40 = USD 109,080. That fee belongs in the settlement reconciliation, not inside the executed FX rate.
The net shortfall is USD 110,000 − USD 109,080 = USD 920. Using benchmark gross proceeds as the denominator:
USD 920 / USD 110,000 × 10,000 ≈ 83.64 bps.
This combines the conversion shortfall and payout fee without double counting. State the denominator and fee currency in every all-in calculation. Convert charges in another currency using a documented rate and time. A separately debited charge belongs in total cost even though it does not reduce the beneficiary credit.
Ask the provider for reproducible pricing evidence
The December 2024 FX Global Code addresses understanding reference prices in Principle 13 and reasonable principal markup and disclosure in Principle 14. It is wholesale-market good practice, not law or a universal disclosure mandate.
A reusable evidence request
Attach the confirmation and send this request:
Please provide the pricing evidence for the transaction identified in the attached confirmation. Which reference source and exact rate field were used? Please include the historical observation, currency orientation, bid/ask/mid designation, timestamp with time zone and precision, and applicable value date. Was the price locked at quote creation, acceptance, execution or an agreed fixing?
Please explain how that reference became the customer rate, including any pricing adjustments or markup under the agreed terms. Please also reconcile the source amount, gross converted proceeds, each fee or deduction and the final beneficiary credit, identifying who applied each charge.
Test the response against the original records. A current methodology document does not prove what happened on this trade.
Classify each difference as explained by evidence, asserted but unverified, or unexplained. An explanation should identify the amount, pricing step and supporting record; a generic claim of market movement is insufficient. Keep conversion adjustments separate from settlement deductions. An unexplained balance warrants follow-up, not an allegation.
Close the audit with the evidence status, calculation, remaining discrepancy and named owner for follow-up—not an unsupported explanation.
Apply the audit to stablecoin settlement
If a payment uses stablecoins, map the actual route into separate legs: fiat-to-token conversion, token transfer, token-to-fiat conversion and any subsequent FX conversion or payout. Keep the price, quantity, timestamp and fees for each leg. Do not assume a USD-linked token converted at exactly USD 1.
A transaction hash supports the transfer trail; it does not establish the off-chain quote or its reference source. Reconcile network fees separately, recording who paid them and how any non-fiat charge was valued. Distinguish pricing time from blockchain confirmation and bank-credit time.
FinchTrade provides institutional OTC digital-asset liquidity and on/off-ramp services through its OTC desks. When discussing a proposed route, make the required trade confirmations and settlement records part of the conversation before execution.
Conclusion
An FX quote audit should establish which reference can be evidenced, measure the difference on matched terms, and reconcile every deduction to the beneficiary credit. Where the reference remains unresolved, document that limit and request the missing transaction records.
For requesting more information about how we can help reach out to us. We're here to help and answer any questions you may have.