# X_MONEY_SCALE_INVALID

## Means

a `Money.scale` that is not usable — either the exponent itself, or the one two operands would have to meet at

## Typical cause

a fractional, negative or out-of-range scale (15 is the last exponent whose power of ten is still a safe integer); or adding a coarse value to a fine one, where widening to their common scale overflows a safe integer

## Fix

use a scale in range — `fromMinor(minor, currency, 6)` for micros, or omit it for the currency's own minor unit. On an overflow the `cause` names the finest scale that fits: `rescale(value, <scale>, 'half-up')`

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