A new market looked profitable because the model mixed currencies.

Orders were real. The reporting layer dropped their currency context before the budget view.

Representative businessMulti-market apparel brand
MarketUnited States · United Kingdom · European Union
SystemsShopify Markets · Payments · Meta / Google · Finance
Decision ownersCFO + International Growth lead
Decision at risk

Should the team scale the new markets, or correct the currency path first?

Whether international media and inventory should increase after an apparently profitable launch.

Illustrative currency-lineage docketUnit integrity

Before / unit context lost

Order revenueGBP
RefundEUR
Payment feeUSD
Decision modelUnits mixedInvalid

After / governed lineage

Order revenueNative GBPApproved FXBase USD
RefundNative EURApproved FXBase USD
Payment feeNative USDApproved FXBase USD
One conversionComparable base values

Symbolic values show unit lineage only. They are not exchange-rate, profit, or market-performance claims.

Cause isolated

Native amounts reached the reporting model without a reliable ISO currency or one approved conversion policy.

Bounded change

Preserve native amount and currency, derive the base value once, and block aggregation when unit lineage is missing.

Acceptance check

Test orders retain native and base values through every reporting layer with one explainable conversion.

See what changed in the numbers.

Synthetic worked example

These dashboard reconstructions use constructed data. The pixelated identity field demonstrates redaction; it does not conceal a real client. The daily chart values and example check results are available in the accompanying CSV.

01 / Original reportPNG
Synthetic before dashboard: 90,000 (invalid mixed units) over seven days. Mixed units labelled USD (invalid).
Mixed units labelled USD (invalid)
02 / Corrected reportPNG
Synthetic after dashboard: $100,500 over seven days. Converted base USD (valid).
Converted base USD (valid)

Revenue presented in the USD view

Before: invalid units / after: USD · same seven days
Before correction After correction
25k18.75k12.5k6.25k0kDay 1Day 2Day 3Day 4Day 5Day 6Day 7
The old view incorrectly labelled a sum of native amounts as USD. The example mixes equal numeric amounts of USD, GBP and EUR, using fixed demonstration rates of 1.00, 1.25 and 1.10 USD. The corrected series is the only valid USD measure. No percentage growth claim can be inferred from the invalid baseline.

This is a restatement of the same period, not a time-series experiment or a claim of revenue growth caused by Calyxra.

Illustrative verification checkSupported currencies with reproducible base values

Before1 of 3

After3 of 3

The check results are separate constructed fixtures, not measurements inferred from the revenue chart or logs from a client engagement.

Inspect the seven-day dataset
Synthetic fixture · before: invalid mixed units; after: USD · both columns refer to the same period
DayBefore correctionAfter correction
19,000 (invalid mixed units)$10,050
212,000 (invalid mixed units)$13,400
315,000 (invalid mixed units)$16,750
49,000 (invalid mixed units)$10,050
518,000 (invalid mixed units)$20,100
615,000 (invalid mixed units)$16,750
712,000 (invalid mixed units)$13,400
Total90,000 (invalid mixed units)$100,500
Download the source CSV

What gets checked, changed and handed back.

In this scenario, a connector preserved monetary amounts but not dependable currency lineage. GBP, EUR, and USD records therefore entered one decision model as directly comparable values.

Decision Risk Score methodology

Evidence required

  • Market-launch timeline and supported currencies
  • Test orders in each active market
  • Raw amount and ISO currency payloads
  • Connector schema, FX source, timestamp, and dashboard logic

Correction sequence

  1. Preserve native amount and ISO currency on every monetary record.
  2. Create a separate base amount using one approved FX source and date policy.
  3. Convert exactly once and expose missing or unsupported currency codes.
  4. Link refunds and fees to the originating order and market.
  5. Document the difference between operating and realised-settlement views.

Closure criteria

  • ISO currency is present for every eligible monetary record.
  • Native values tie to the corresponding Shopify source records.
  • Each base value has one reproducible FX source, date, and calculation.
  • Mixed-currency fields cannot be aggregated without conversion.
  • Remaining settlement variance is tied to named timing or rate items.
Decision reopened

Compare markets on one governed contribution view before reallocating media or inventory.

Interpretation boundary

Currency reconciliation does not prove market incrementality, profitability, or the correct hedging policy. Tax, treasury, and ERP redesign remain outside this scope.

Request a 2-day incident review.

A focused diagnostic: evidence map, initial findings, and a proposed fix scope. Two business days from agreed scope, payment where applicable, and complete required data. We confirm feasibility and fee before work starts. Implementation and longer verification windows are scoped separately.

Request my incident review