# X_CURRENCY_REDEFINED

## Means

one currency code registered twice with different meanings

## Typical cause

a second `registerCurrency` for a code already in force — a shipped ISO row, or an earlier registration — carrying a different `exponent` or `name`. An identical second call is a no-op, so a module imported twice is not a crash; `cause` prints both declarations

## Fix

keep one `registerCurrency({ code: 'XBT', exponent: 2, name: 'XBT' })` call and delete the other. Changing a live exponent means migrating every stored amount in that currency first — each one shifts by a power of ten

[i18n, money, time](/error-codes#i18n-money-time)
