Skip to content

Brazilian Real (BRL): 2 decimal places

Brazilian Real (BRL) has 2 decimal places: one BRL is 100 minor units, and amounts are stored as integers of those.
ISO 4217 exponent
2
Minor units per unit
100
Intl display digits
2
Symbol (en-US)
R$

BRL in a statement

The same integer in every state a statement can be in. Null is not zero: unknown renders as a dash, never as a zero amount.

ValueStored (minor units)StatementMoney component
Positive1234561,234.561,234 Brazilian Real and 56 minor units
Negative-123456(1,234.56)negative 1,234 Brazilian Real and 56 minor units
Zero00.000 Brazilian Real
Unknown (null)null—not available

Typing BRL

What a person types, and the integer it is stored as at BRL's exponent. Rounded once, at the end.

TypedStored as
1,234.56123456
(1,234.56)-123456
1.2k120000
=1200+340*2188000

Split without losing a minor unit

100.00 BRL split three ways. Rounding each third leaves a remainder; largest-remainder allocation hands it out one minor unit at a time, so the parts always sum to the whole.

  • 33.34
  • 33.33
  • 33.33
  • = 100.00

On a check

One thousand two hundred thirty-four BRL and 56/100 only

The fraction is over 100 because BRL has 2 decimal places. Write any amount in words.

BRL in React

The component reads the exponent from the currency code; you pass the integer and the code, never a float and never a decimal count.

tsx
import { Money } from "@/components/ledger/money";

// 1,234.56 BRL, stored as the integer 123456
<Money accounting value={{ amount: 123456, currency: "BRL" }} />

Also stored at 2 decimal places

Work with it

Tools that read BRL at its own exponent.

Works in your QuickBooks Online or Xero file

Get your books closed every month

Lopifi is building AI bookkeeping that keeps your books closed on US GAAP as transactions happen, with a CPA review every quarter, for $200 a month. We’re not open yet.

$200/month when we open. No card now.