Reporting currency

Sell in several currencies and your revenue arrives mixed: a pound subscription here, a euro upgrade there. The reporting currency setting shows all of it as one number. Pick a currency once, and every payment is converted into it at the daily European Central Bank reference rate of its payment date, past payments included.

Originals are never touched. Conversion happens in a separate display layer. The amount and currency each customer was actually charged stay stored unchanged, and switching back to "As charged" restores them exactly. You can change your mind any time without losing anything.

Where to set it

Open Settings → Integrations → Revenue for your site. The Reporting currency card sits under the payment integrations:

Reporting currency
Show all revenue in one currency. Payments charged in other currencies are converted at the daily European Central Bank reference rate of their payment date. Original amounts are kept unchanged; "As charged" shows every payment in its own currency.
EURSave

One dropdown, one save. Existing revenue converts in the background.

Saving converts your existing revenue history within seconds and switches the dashboard label to your chosen currency. New payments convert the moment they arrive, whichever integration or custom event they come from.

How the conversion works

  • Rates: the daily reference rates published by the European Central Bank. They refresh once per day.
  • Which day's rate: each payment converts at the rate of its own payment date, not today's. A March payment stays a March conversion forever, so historical revenue doesn't drift when rates move.
  • Weekends and holidays: the ECB publishes business days only; payments on other days use the most recent published rate (typically Friday's).
  • Refunds: converted the same way, so a refund nets out its purchase correctly even when the rate moved in between.
Real-life example. A store's July: three subscription renewals charged in pounds (£28.03 total) and one upgrade charged in euros (€10.62). As charged, the dashboard has to juggle two currencies. With EUR as the reporting currency, each pound payment converts at its renewal date's rate and the header reads one number: €43.24.

What it covers

Everything that carries revenue: payments from the Stripe and Paddle integrations, and revenue you send yourself via clickport.track(…, { amount, currency }). The Revenue stat, the chart line, goal revenue, and every per-source breakdown all show converted amounts, so filters and totals always agree.

Supported currencies

The ECB reference basket: EUR, USD, GBP, CHF, AUD, BGN, BRL, CAD, CNY, CZK, DKK, HKD, HUF, IDR, ILS, INR, ISK, JPY, KRW, MXN, MYR, NOK, NZD, PHP, PLN, RON, SEK, SGD, THB, TRY, and ZAR.

A payment charged in a currency outside this basket stays unconverted rather than being converted at a made-up rate. It keeps its own currency in the data and is summed as-is; if that happens on your site, you'll see it in the numbers rather than have it silently guessed away.

Honest edges

  • Reference rates are not your bank's rates. The ECB reference rate is an indicative mid-market rate. Your payment provider's payout applies its own spread and fees, so converted revenue won't match your bank statement to the cent. It's built for comparing channels and trends, not for accounting.
  • Rounding: converted amounts round to cents per payment. Totals are sums of rounded payments.
  • Switching currencies re-converts everything at the same payment-date rates, so numbers stay consistent; nothing accumulates rounding from repeated switches, because every conversion starts from the untouched original.