Skip to main content
Card class: Card
Revenue split by transaction currency. Highlights FX exposure for multi-currency accounts.

At a glance

Revenue split by transaction currency, both in native amount and reporting-currency equivalent. Highlights FX exposure for multi-currency NetSuite accounts.
What it countsSUM(Transaction.Amount) for revenue accounts grouped by Currency for the period. Each currency shown in native amount and reporting-currency equivalent at transaction-date FX.
Tax treatmentNet of tax.
ShippingIncluded if mapped to revenue.
Refunds / Credit MemosDeducted within each currency.
Currency conversionNative + reporting-currency dual view. The reporting-currency total includes FX translation gains/losses; native does not.
Subsidiary scopeRespects dashboard filter. Useful when subsidiaries each transact in their base currency exclusively (one currency per sub).
Time window30D
Alert triggerNone (informational); FX exposure alert lives on Currency Exposure.
Rolesowner, finance
Only-when gateMulti-currency feature enabled. Single-currency accounts hide this card.

Calculation

Calculated automatically from your NetSuite data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A UK omnichannel apparel brand on NetSuite OneWorld. Reporting currency GBP. 30-day window 14 Mar 26 to 12 Apr 26.
CurrencyNative amountReporting (GBP) at period-avg% of totalYoY nativeYoY GBP
GBP£2,840,000£2,840,00055%+5%+5%
USD$1,920,000£1,501,44029%+12%+8%
EUR€1,180,000£1,007,72019%-2%-10%
AUDA$28,000£14,800<1%+20%+18%
Total£5,187,160100%
Five things to notice:
  1. EUR YoY is -2% native but -10% GBP. That 8 percentage-point gap is FX. EUR weakened against GBP over the year. The Controller can’t fix FX, but they can hedge it; the card surfaces the magnitude.
  2. USD strengthened, helping GBP-reported revenue. Native USD +12%, reported GBP +8% (FX gave back 4 percentage points). Net positive.
  3. AUD share is tiny (<1%) but growing fast. Possibly a new market entry. The card lets the Controller validate strategic geographic expansion.
  4. GBP at 55% means majority is unhedged-by-default (transaction currency = reporting currency, no FX risk). Healthy.
  5. The native + reporting dual view is essential. The Controller reads native to gauge operational performance (“did we sell more units?”), and reporting to gauge financial outcome (“did revenue translate?”). Both stories matter.

Sibling cards merchants should reference together

CardWhy pair it with Revenue by Currency
Revenue by SubsidiarySubsidiary cut. Often correlates 1:1 with currency on OneWorld accounts.
Currency ExposureThe risk view (open AR, open AP, inventory by currency).
Revenue Booked into GLThe total. Currency breakdown decomposes it.
Intercompany BalanceInter-co exposure mostly travels in currency pairs.
stripe.stripe_total_revenueStripe’s per-currency processing volumes.

Reconciling against the vendor’s own dashboard

Where to look in NetSuite:
Reports → Financial → Currency Revaluation Reports → Sales → Sales by Currency (custom saved search; not standard) Setup → Accounting → Currency Exchange Rates
NetSuite’s standard reports do not slice revenue by currency natively; most accounts build a saved search for this. The card replaces that. Why our number may legitimately differ from a manual saved search:
ReasonDirectionWhy
FX rate cadenceReporting-side smallCard uses transaction-date rates; some saved searches use period-average.
Currency code variantsEitherSome accounts have legacy codes (e.g. EUR vs old country codes). The card uses the active currency.
Inactive currenciesCard excludesInactive currencies are hidden.
Subsidiary scopeEitherCard defaults to all subs.
Cross-connector reconciliation:
CardRelationshipWhy
stripe.stripe_total_revenueStripe processes in customer’s currencyStripe’s per-currency totals for the same window should match the Stripe-share of revenue in this card.

Known limitations / merchant FAQs

OneWorld required? No. Multi-currency is enabled separately from OneWorld. Single-subsidiary accounts can transact in multiple currencies; the card works. What FX rate is used for the reporting-currency total? Transaction-date rate by default, period-average available via toggle. NetSuite’s Revenue Recognition uses transaction-date by convention. Why doesn’t native + reporting-currency add up if I check manually? FX gain/loss is a separate GL account. Each transaction posts at transaction-date rate; subsequent revaluation at period-end posts to FX gain/loss. The card sums revenue accounts only, so the reporting-currency total doesn’t include the FX revaluation. Multi-currency without OneWorld, behaviour? Identical for this card. The single subsidiary just transacts in multiple currencies. Should I hedge the EUR exposure? That’s a treasury decision; the card surfaces magnitude. Most mid-market commerce businesses hedge when single-currency exposure exceeds 15-20% of revenue and movements >5% YoY would meaningfully impact P&L. This is a CFO conversation, not a Controller decision. Stripe / PayPal multi-currency, does it complicate the card? No. Stripe and PayPal report each charge in customer currency. NetSuite books each Customer Payment in the same currency as the originating Invoice. The card respects the transaction currency; payment processor doesn’t change anything. ASC 606 deferred revenue, multi-currency? Each ARM-deferred revenue line carries its currency. Recognition releases at the same currency. The card shows recognised revenue in transaction currency. Currency revaluation cadence, when does it run? Most accounts run it monthly at period close. Some run daily. The card respects whatever’s posted at refresh time.

Tracked live in Vortex IQ Nerve Centre

Revenue by Currency is one of hundreds of KPI pulses Vortex IQ tracks across NetSuite and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.