Supported currencies
All 28 fiat display currencies with codes, symbols, and decimal handling.
Overview
JoPay supports 28 fiat currencies for display purposes. Merchants choose a display currency when setting up their account. Payment amounts are shown to customers in that currency and converted to a USDC equivalent using live FX rates.
All settlements are in USDC regardless of the display currency. The display currency affects only how amounts are presented in the merchant dashboard, payment pages, and receipts.
1000 in JPY means 1,000 yen, not 10.00 yen.Currency table
| Code | Symbol | Currency name | Zero-decimal |
|---|---|---|---|
USD | $ | US Dollar | No |
EUR | € | Euro | No |
GBP | £ | British Pound | No |
BRL | R$ | Brazilian Real | No |
ARS | $ | Argentine Peso | No |
COP | $ | Colombian Peso | No |
MXN | $ | Mexican Peso | No |
PEN | S/ | Peruvian Sol | No |
CLP | $ | Chilean Peso | Yes |
JPY | ¥ | Japanese Yen | Yes |
KRW | ₩ | South Korean Won | Yes |
INR | ₹ | Indian Rupee | No |
AED | د.إ | UAE Dirham | No |
SAR | ﷼ | Saudi Riyal | No |
TRY | ₺ | Turkish Lira | No |
NGN | ₦ | Nigerian Naira | No |
KES | KSh | Kenyan Shilling | No |
ZAR | R | South African Rand | No |
GHS | ₵ | Ghanaian Cedi | No |
EGP | E£ | Egyptian Pound | No |
PHP | ₱ | Philippine Peso | No |
THB | ฿ | Thai Baht | No |
VND | ₫ | Vietnamese Dong | No |
IDR | Rp | Indonesian Rupiah | No |
MYR | RM | Malaysian Ringgit | No |
SGD | S$ | Singapore Dollar | No |
AUD | A$ | Australian Dollar | No |
CAD | C$ | Canadian Dollar | No |
Zero-decimal currencies
Most currencies divide into 100 fractional units (cents, centavos, pence, etc.). Three supported currencies are zero-decimal, meaning they have no fractional units:
- JPY (Japanese Yen)
- KRW (South Korean Won)
- CLP (Chilean Peso)
For these currencies, amounts are always whole numbers. An amount of 500 in JPY means 500 yen, not 5.00 yen. JoPay's formatting functions handle this automatically, but API integrations must send whole numbers for these currencies.
error field in API responses to detect issues with amount formatting. The invalid_amount error will fire if you send a decimal amount for a zero-decimal currency.FX rates
JoPay fetches live FX rates to convert between display currencies and USDC. Rates are refreshed periodically and cached. The USDC equivalent shown to the customer is calculated at the time the payment page is loaded.
FX rates are for display purposes only. The actual payment amount is always in USDC. The merchant receives the exact amount of USDC sent by the customer, regardless of FX rate fluctuations.
Adding currencies
The list of supported currencies is configured at the platform level. If you need a currency that is not currently supported, contact your partner. Adding a new currency requires a symbol mapping, FX rate feed, and validation rules for decimal handling.