Currency Decimal Support
Currency decimal & amount compliance
Breaking change — effective 30 January 2027From 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
400error. 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
| Currency | Code | Decimal support |
|---|---|---|
| US Dollar | USD | 2 decimal places |
| Euro | EUR | 2 decimal places |
| British Pound | GBP | 2 decimal places |
| Australian Dollar | AUD | 2 decimal places |
| Canadian Dollar | CAD | 2 decimal places |
| Swiss Franc | CHF | 2 decimal places |
| Singapore Dollar | SGD | 2 decimal places |
| Hong Kong Dollar | HKD | 2 decimal places |
| New Zealand Dollar | NZD | 2 decimal places |
| Norwegian Krone | NOK | 2 decimal places |
| Swedish Krona | SEK | 2 decimal places |
| Danish Krone | DKK | 2 decimal places |
| Polish Złoty | PLN | 2 decimal places |
| Czech Koruna | CZK | 2 decimal places |
| Hungarian Forint | HUF | 2 decimal places |
| Romanian Leu | RON | 2 decimal places |
| Bulgarian Lev | BGN | 2 decimal places |
| Croatian Kuna | HRK | 2 decimal places |
| Israeli New Shekel | ILS | 2 decimal places |
| South African Rand | ZAR | 2 decimal places |
| Nigerian Naira | NGN | 2 decimal places |
| Tanzanian Shilling | TZS | 2 decimal places |
| Ugandan Shilling | UGX | 2 decimal places |
| Zambian Kwacha | ZMW | 2 decimal places |
| Ghanaian Cedi | GHS | 2 decimal places |
| Egyptian Pound | EGP | 2 decimal places |
| Ethiopian Birr | ETB | 2 decimal places |
| Moroccan Dirham | MAD | 2 decimal places |
| Tunisian Dinar | TND | 2 decimal places |
| UAE Dirham | AED | 2 decimal places |
| Saudi Riyal | SAR | 2 decimal places |
| Qatari Riyal | QAR | 2 decimal places |
| Bahraini Dinar | BHD | 2 decimal places |
| Kuwaiti Dinar | KWD | 2 decimal places |
| Omani Rial | OMR | 2 decimal places |
| Turkish Lira | TRY | 2 decimal places |
| Indian Rupee | INR | 2 decimal places |
| Indonesian Rupiah | IDR | 2 decimal places |
| Malaysian Ringgit | MYR | 2 decimal places |
| Philippine Peso | PHP | 2 decimal places |
| Thai Baht | THB | 2 decimal places |
| South Korean Won | KRW | 2 decimal places |
| Chinese Yuan | CNY | 2 decimal places |
| Bangladeshi Taka | BDT | 2 decimal places |
| Pakistani Rupee | PKR | 2 decimal places |
| Sri Lankan Rupee | LKR | 2 decimal places |
| Mexican Peso | MXN | 2 decimal places |
| Brazilian Real | BRL | 2 decimal places |
| Russian Ruble | RUB | 2 decimal places |
| CFA Franc (West Africa) | XOF | Whole numbers only |
| CFA Franc (Central Africa) | XAF | Whole numbers only |
| Japanese Yen | JPY | Whole numbers only |
| Kenyan Shilling | KES | Multiples of 0.05 only |
If you are unsure about the decimal rules for a specific currency or corridor, contact [email protected] before integrating.
Updated about 2 hours ago
