Currency Decimal Support

Currency decimal & amount compliance

⚠️

Breaking change — effective 30 January 2027

From 30 January 2027, all payment and exchange API endpoints will enforce strict amount compliance. Amounts that do not conform to the rules below will return a 400 error. Sandbox will be updated ahead of this date to allow you to test. We recommend validating and rounding amounts on your side before submission.

Payments before this date, Verto will support for KES, JPY without errors. For other currencies enforcement is already live.


Rules by currency type

Standard — up to 2 decimal places

Most currencies support amounts up to 2 decimal places. Submitting more than 2 decimal places will return:

{
  "code": 400,
  "message": "amount must have at most 2 decimal places"
}

Zero decimal — whole numbers only

Some currencies do not support decimal values. Amounts must be submitted as whole numbers. Submitting a decimal value will return:

{
  "code": 400,
  "message": "amount must be a whole number for JPY"
}

KES — multiples of 0.05 only

KES amounts must be submitted in increments of 0.05. For example, 100.05 and 100.10 are valid; 100.03 and 100.24 are not. Submitting a non-compliant value will return:

{
  "code": 400,
  "message": "amount must be in increments of 0.05 for KES"
}

Currency compliance reference

CurrencyCodeDecimal support
US DollarUSD2 decimal places
EuroEUR2 decimal places
British PoundGBP2 decimal places
Australian DollarAUD2 decimal places
Canadian DollarCAD2 decimal places
Swiss FrancCHF2 decimal places
Singapore DollarSGD2 decimal places
Hong Kong DollarHKD2 decimal places
New Zealand DollarNZD2 decimal places
Norwegian KroneNOK2 decimal places
Swedish KronaSEK2 decimal places
Danish KroneDKK2 decimal places
Polish ZłotyPLN2 decimal places
Czech KorunaCZK2 decimal places
Hungarian ForintHUF2 decimal places
Romanian LeuRON2 decimal places
Bulgarian LevBGN2 decimal places
Croatian KunaHRK2 decimal places
Israeli New ShekelILS2 decimal places
South African RandZAR2 decimal places
Nigerian NairaNGN2 decimal places
Tanzanian ShillingTZS2 decimal places
Ugandan ShillingUGX2 decimal places
Zambian KwachaZMW2 decimal places
Ghanaian CediGHS2 decimal places
Egyptian PoundEGP2 decimal places
Ethiopian BirrETB2 decimal places
Moroccan DirhamMAD2 decimal places
Tunisian DinarTND2 decimal places
UAE DirhamAED2 decimal places
Saudi RiyalSAR2 decimal places
Qatari RiyalQAR2 decimal places
Bahraini DinarBHD2 decimal places
Kuwaiti DinarKWD2 decimal places
Omani RialOMR2 decimal places
Turkish LiraTRY2 decimal places
Indian RupeeINR2 decimal places
Indonesian RupiahIDR2 decimal places
Malaysian RinggitMYR2 decimal places
Philippine PesoPHP2 decimal places
Thai BahtTHB2 decimal places
South Korean WonKRW2 decimal places
Chinese YuanCNY2 decimal places
Bangladeshi TakaBDT2 decimal places
Pakistani RupeePKR2 decimal places
Sri Lankan RupeeLKR2 decimal places
Mexican PesoMXN2 decimal places
Brazilian RealBRL2 decimal places
Russian RubleRUB2 decimal places
CFA Franc (West Africa)XOFWhole numbers only
CFA Franc (Central Africa)XAFWhole numbers only
Japanese YenJPYWhole numbers only
Kenyan ShillingKESMultiples of 0.05 only

📘

If you are unsure about the decimal rules for a specific currency or corridor, contact [email protected] before integrating.


Did this page help you?