Multi-currency Commerce

E-Vignettes

European highway-vignette commerce across six countries with localized billing.

E-Vignettes — product screenshot
E-Vignettes — live product (evignette.co).
Problem

Selling toll vignettes across Europe means six currencies, 18 locales, live FX, and country-specific validity logic - all reconciled to the cent.

Solution

Multi-currency Stripe pricing with an ECB exchange-rate cron sync, 18-locale invoice localization, GA4 ecommerce events, DeepL i18n, and Swiss vignette validity rules.

Architecture

Stripe multi-currency · ECB FX cron · 18-locale invoicing · GA4 ecommerce · lead-to-sale attribution

ClientStorefront18 locales · 6 currenciesCountry validity rules
AppCommerce engineLocalized invoicingLead-to-sale attribution
Data & servicesStripe multi-currencyECB FX cron → persisted pricesGA4 ecommerce
Request / data flow, left to right.
Why it's built this way

Synced ECB rates on a cron into persisted prices rather than converting at checkout - billing stays cent-stable and auditable even when the rate moves mid-session. Country validity lives in config, not branches, so a new market is data, not a deploy.

Impact →One codebase serving six markets with cent-accurate, localized billing.
StripeECB FXGA4 Ecommercei18nDeepLNext.js
Visit live site ↗Discuss a build like E-Vignettes← All work
More work
PaylioFlagship SaaSiBoardingPassPayments & AnalyticsPetunia ChattertonPrint-on-Demand SaaS