Skip to main content

Currency and settings

Multi-currency in Finance Hero

Every asset and every liability is stored in its own currency — the one it actually lives in. Your default display currency is what the app uses to show totals, net worth, and the dashboard chart. Conversion happens on display; your records are never rewritten.

Supported currencies

Eight currencies are supported:

USD · EUR · PLN · GBP · JPY · CHF · CAD · AUD

Each asset and each liability picks one of these at creation. A single portfolio can freely mix currencies — e.g. a PLN checking account, a USD brokerage account, and a EUR bond fund all at once.

Exchange rates

Rates are fetched from an external source and cached. On every app load the latest rates are pulled; they also refresh automatically when you change your default currency.

The Settings page shows:

  • A table of all currencies and their current rates vs. your default
  • The timestamp of the last update
  • A Refresh button that force-fetches the latest rates, bypassing the cache

If rates have not been updated in the last 24 hours, a staleness warning appears.

Conversion warnings

When you view or edit an asset or liability in a currency that is not your default, the app shows the converted amount alongside the native amount. If rates have gone stale between the time a historical entry was recorded and the time you are reading it, a small warning badge appears on that entry so you know the converted value may drift slightly.

The original currency amount is always preserved — warnings are about display, not about data integrity.

Creating items in foreign currency

When you create an asset or liability in a currency that is not your default, a secondary panel in the form auto-populates the converted amount in your default currency. This is informational — the app stores the native amount, and the converted view is always recomputed from the latest rate.

Settings page

Four things live on the Settings page.

Theme

Three options:

  • Light
  • Dark
  • System — follows your OS preference

The choice is persisted per browser.

Default display currency

A dropdown of the eight supported currencies. Changing it triggers an immediate refresh of exchange rates so every displayed total updates to the new currency.

The choice is persisted both locally and to your account, so it follows you across devices.

Exchange rates

The table of current rates plus the Refresh button. Use this if you know the market has moved significantly and you want the displayed totals to reflect that immediately.

What is not in settings yet

  • No profile editing (email, password change is via the reset flow)
  • No data export
  • No account deletion from inside the app
  • No notifications preferences

These are planned but not part of the first version.