Amounts are always in minor units
Everyamount field on the API — in requests and responses — is an integer in the currency’s smallest unit:
A fractional amount is rejected with
400 amount must be a whole number of smallest currency units (e.g. cents), and anything below 1 with 400 amount must be at least 1 in the smallest currency unit. This keeps money arithmetic exact — no floating point.
A handful of currencies have no minor unit at all — JPY, KRW, XAF, and XOF among them. For those, the “smallest unit” is just the currency unit itself:
1000 XAF is 1,000 francs, not 10.Changed 9 September 2026. Some responses previously reported amounts in major units
(
12.50 for $12.50) while the webhooks reported the same amount as 1250. Every response
now uses minor units, so the two agree. The affected responses were the transaction
listings and export, the statement lines, loans, broker commissions and referral stats,
and the withdraw and swap responses. GET /wallet/transaction/{id} and
POST /wallet/transfer were already correct but returned their amounts as JSON strings
("4400"); they now return numbers (4400).If your integration multiplied any of these by 100, or parsed them as strings, remove that
handling. Request bodies, wallet balances, fee quotes, statement totals and every webhook
payload are unchanged.Currencies you can collect and hold in
Your wallets can hold a balance in, and be funded via virtual accounts or deposit instructions in: USD · NGN · BRL · USDC · USDT This is the set of currencies you can receive deposits in and carry a balance for. It’s served by the API itself — treat Get Supported Currencies as the source of truth rather than hard-coding it, since it grows over time.Currencies you can pay out in
Payouts reach far beyond your wallet currencies. Fund a payout from any wallet balance you hold, and Rolla converts and delivers it to the beneficiary in their local currency — across local rails, SWIFT, and mobile money, worldwide. Currently supported destination currencies include: USD · EUR · GBP · CAD · AUD · NGN · GHS · XAF · XOF · JPY · CNY · KRW · THB · IDR — and more are added regularly. Which currencies and rails are available to a given beneficiary depends on their country and bank — see Payout rails below, Create Beneficiary for the exact fields per method, and the SWIFT payouts guide for USD-over-SWIFT country coverage specifically. Not sure a corridor is supported? Ask us — we’re adding new ones all the time.Payout rails
A payout’s rail is chosen by the beneficiary’swithdrawal_method:
The exact required fields per currency and method are listed on Create Beneficiary and Withdraw Funds. To know what a payout will cost before sending it, quote it with Get Transaction Fee.
FX
Cross-currency rates come from Get Exchange Rates, which returns arateToken you can pass into Swap Currency to execute at the quoted rate. See Convert currencies.