Settings
Multi-Currency & FX
Per-currency burn and unified totals with live exchange rates.
Recurex handles multi-currency in two layers.
Per-expense currency (all plans)
Each expense stores its own currency code. The dashboard and reports show separate burn blocks per currency — no conversion applied.
Unified total (Pro)
Enable Unified total in Settings and pick a base currency. The dashboard adds a single rollup line converting all active burn into that currency.
How conversion works
converted = amount / rate[from] * rate[to]
Rates are stored in fx_rates with USD as pivot (FX_PIVOT = "USD"). Rates refresh daily when the reminders cron runs, fetching from FX_API_URL (open.er-api.com pattern).
If a currency is missing from the rate table, that expense is omitted from the unified total (partial totals are marked).
Billing currency (separate)
USD vs INR on the pricing and checkout pages is determined by pricing-locale.ts — India geo/cookie → INR. This only affects Razorpay plan prices, not expense FX.
Pricing page currency
The marketing pricing page lets visitors toggle USD/INR display. Preference is stored in the pricing_cc cookie for one year.
