Money in the Reevit API is always an integer in the currency’s minor
unit — the smallest indivisible unit of that currency. There are no decimal
points anywhere in the API, which makes floating-point rounding bugs
structurally impossible.
Rules
- Send integers.
45000, never 450.00. A request with a fractional
amount is rejected.
- Convert at the edge. Multiply by 100 exactly once — when the amount
enters your system (e.g. from a form) — and divide by 100 exactly once,
when you display it. Everywhere in between, keep the integer.
- Every money field follows the same rule.
amount, fee_amount,
net_amount, refund amounts, payout amounts, and settlement amounts are
all minor-unit integers in their stated currency field.
- Don’t do float math on display values.
45000 / 100 is safe to
render; summing display values is not. Sum the integers, then format.
The SDKs keep you honest: their typed payment-intent builders take
minor-unit integers, and the docs’ code samples annotate them — e.g.
amount: 45000, // GHS 450.00, in pesewas.