Supported currencies
Learn about the currencies supported by Tokenz Checkout and how to properly format amount values for each currency.
Supported currencies list
Checkout supports currencies across Asia-Pacific, Europe, North America, Middle East, Latin America, Africa, and South Asia. Below is the complete list of supported currencies:
Asia-Pacific currencies
- AUDAustralian Dollar$
- CNYChinese Yuan¥
- HKDHong Kong Dollar$
- IDR*Indonesian RupiahRp
- JPYJapanese Yen¥
- KRWSouth Korean Won₩
- MYRMalaysian RinggitRM
- PHPPhilippine Peso₱
- SGDSingapore Dollar$
- THBThai Baht฿
- TWD*New Taiwan DollarNT$
European currencies
- BGNBulgarian Levлв
- CHFSwiss FrancFr.
- CZKCzech KorunaKč
- DKKDanish Kronekr
- EUREuro€
- GBPBritish Pound£
- HUFHungarian ForintFt
- NOKNorwegian Kronekr
- PLNPolish Złotyzł
- RONRomanian Leulei
- SEKSwedish Kronakr
North American currencies
- CADCanadian Dollar$
- USDUS Dollar$
Middle East currencies
- AEDUAE Dirhamد.إ
- BHDBahraini Dinar.د.ب
- KWDKuwaiti Dinarد.ك
- OMROmani Rial﷼
- QARQatari Riyalر.ق
- SARSaudi Riyal﷼
Latin American currencies
- BRLBrazilian RealR$
- CLPChilean Peso$
- COPColombian Peso$
- MXNMexican PesoMex$
- PENPeruvian SolS/
African currencies
- GHSGhanaian CediGH₵
- KESKenyan ShillingKSh
- MADMoroccan DirhamDH
South Asian currencies
- BDTBangladeshi Taka৳
- LKRSri Lankan Rupee௹
- PKRPakistani RupeeRs
Other currencies
- NZDNew Zealand Dollar$
- TZSTanzanian ShillingTSh
- UGXUgandan ShillingUSh
- VNDVietnamese Dong₫
* Tokenz treats IDR, TWD as zero-decimal currencies. This differs from the ISO 4217 convention, which specifies 2 decimals for these. JPY, KRW, and CLP are zero-decimal under both Tokenz and ISO 4217.
Currency minor units
When specifying amounts in the Tokenz API, it's crucial to understand that most currencies require amounts to be specified in their smallest minor unit (e.g., cents, paise) rather than the main unit. This prevents pricing errors and ensures accurate payment processing.
How minor units work
Most currencies in the world use a decimal system where the main unit is divided into 100 minor units:
- 1 USD = 100 cents
- 1 EUR = 100 cents
- 1 GBP = 100 pence
When using these currencies in the API, you must multiply the amount by 100. For example, to charge $10.99, you would send 1099 (10.99 × 100).
Zero-decimal currencies
Some currencies don't use decimal places and are already expressed in their smallest unit. These are called zero-decimal currencies. For these currencies, you specify the amount as-is without any multiplication:
- CLP - Chilean Peso
- IDR - Indonesian Rupiah
- JPY - Japanese Yen
- KRW - South Korean Won
- TWD - New Taiwan Dollar
- UGX - Ugandan Shilling
- VND - Vietnamese Dong
Note: IDR and TWD are zero-decimal under Tokenz's API but two-decimal under ISO 4217. They appear with an asterisk (*) in the reference table below.
Three-decimal currencies
A few currencies use three decimal places instead of the standard two. These currencies require multiplication by 1000:
- BHD - Bahraini Dinar
- KWD - Kuwaiti Dinar
- OMR - Omani Rial
For example, to charge 10.500 BHD, you would send 10500 (10.500 × 1000).
All other supported currencies use minor units and require multiplication by 100.
Complete currency minor unit reference
* Tokenz treats IDR, TWD as zero-decimal currencies. This differs from the ISO 4217 convention, which specifies 2 decimals for these. JPY, KRW, and CLP are zero-decimal under both Tokenz and ISO 4217.
- AEDUAE DirhamFils
- Conversion×100
- Display amountد.إ10.00
- API amount
1000 - AUDAustralian DollarCents
- Conversion×100
- Display amount$10.00
- API amount
1000 - BDTBangladeshi TakaPaisa
- Conversion×100
- Display amount৳10.00
- API amount
1000 - BGNBulgarian LevStotinka
- Conversion×100
- Display amountлв10.00
- API amount
1000 - BHDBahraini DinarFils
- Conversion×1000
- Display amount.د.ب10.000
- API amount
10000 - BRLBrazilian RealCentavos
- Conversion×100
- Display amountR$10.00
- API amount
1000 - CADCanadian DollarCents
- Conversion×100
- Display amount$10.00
- API amount
1000 - CHFSwiss FrancRappen/Centimes
- Conversion×100
- Display amountFr.10.00
- API amount
1000 - CLPChilean Peso-
- Conversion×1
- Display amount$1000
- API amount
1000 - CNYChinese YuanFen
- Conversion×100
- Display amount¥10.00
- API amount
1000 - COPColombian PesoCentavos
- Conversion×100
- Display amount$10.00
- API amount
1000 - CZKCzech KorunaHaléř
- Conversion×100
- Display amountKč10.00
- API amount
1000 - DKKDanish KroneØre
- Conversion×100
- Display amountkr10.00
- API amount
1000 - EUREuroCents
- Conversion×100
- Display amount€10.00
- API amount
1000 - GBPBritish PoundPence
- Conversion×100
- Display amount£10.00
- API amount
1000 - GHSGhanaian CediPesewas
- Conversion×100
- Display amountGH₵10.00
- API amount
1000 - HKDHong Kong DollarCents
- Conversion×100
- Display amount$10.00
- API amount
1000 - HUFHungarian ForintFillér
- Conversion×100
- Display amountFt10.00
- API amount
1000 - IDR*Indonesian Rupiah-
- Conversion×1
- Display amountRp1000
- API amount
1000 - JPYJapanese Yen-
- Conversion×1
- Display amount¥1000
- API amount
1000 - KESKenyan ShillingCents
- Conversion×100
- Display amountKSh10.00
- API amount
1000 - KRWSouth Korean Won-
- Conversion×1
- Display amount₩1000
- API amount
1000 - KWDKuwaiti DinarFils
- Conversion×1000
- Display amountد.ك10.000
- API amount
10000 - LKRSri Lankan RupeeCents
- Conversion×100
- Display amount௹10.00
- API amount
1000 - MADMoroccan DirhamSantim
- Conversion×100
- Display amountDH10.00
- API amount
1000 - MXNMexican PesoCentavos
- Conversion×100
- Display amountMex$10.00
- API amount
1000 - MYRMalaysian RinggitSen
- Conversion×100
- Display amountRM10.00
- API amount
1000 - NOKNorwegian KroneØre
- Conversion×100
- Display amountkr10.00
- API amount
1000 - NZDNew Zealand Dollar—
- Conversion×100
- Display amount$10.00
- API amount
1000 - OMROmani RialBaisa
- Conversion×1000
- Display amount﷼10.000
- API amount
10000 - PENPeruvian SolCéntimos
- Conversion×100
- Display amountS/10.00
- API amount
1000 - PHPPhilippine PesoCentavos
- Conversion×100
- Display amount₱10.00
- API amount
1000 - PKRPakistani RupeePaisa
- Conversion×100
- Display amountRs10.00
- API amount
1000 - PLNPolish ZłotyGroszy
- Conversion×100
- Display amountzł10.00
- API amount
1000 - QARQatari RiyalDirham
- Conversion×100
- Display amountر.ق10.00
- API amount
1000 - RONRomanian LeuBani
- Conversion×100
- Display amountlei10.00
- API amount
1000 - SARSaudi RiyalHalala
- Conversion×100
- Display amount﷼10.00
- API amount
1000 - SEKSwedish KronaÖre
- Conversion×100
- Display amountkr10.00
- API amount
1000 - SGDSingapore DollarCents
- Conversion×100
- Display amount$10.00
- API amount
1000 - THBThai BahtSatang
- Conversion×100
- Display amount฿10.00
- API amount
1000 - TWD*New Taiwan Dollar-
- Conversion×1
- Display amountNT$1000
- API amount
1000 - TZSTanzanian Shilling—
- Conversion×100
- Display amountTSh10.00
- API amount
1000 - UGXUgandan Shilling—
- Conversion×1
- Display amountUSh1000
- API amount
1000 - USDUS DollarCents
- Conversion×100
- Display amount$10.00
- API amount
1000 - VNDVietnamese Dong—
- Conversion×1
- Display amount₫1000
- API amount
1000
API format consistency
Important: Both API requests and responses use the same minor unit format. When you receive amount values in API responses, they follow the exact same rules:
- Zero-decimal currencies (CLP, IDR, JPY, KRW, TWD, UGX, VND) are returned in their base unit
- Three-decimal currencies (BHD, KWD, OMR) are returned with values multiplied by 1000
- All other currencies are returned in their smallest minor unit (multiplied by 100)
This consistency ensures you can directly use response values in subsequent API calls without conversion.
API examples
Here are examples showing how to correctly format amounts for different currencies in both requests and responses:
Two-decimal currency (USD) - amount in cents
{
"price": {
"currency": "USD",
"amount": 2499
}
}
Zero-decimal currency (JPY) - amount as-is
{
"price": {
"currency": "JPY",
"amount": 5000
}
}
Two-decimal currency (EUR) - amount in cents
{
"price": {
"currency": "EUR",
"amount": 15050
}
}
Zero-decimal currency (KRW) - amount as-is
{
"price": {
"currency": "KRW",
"amount": 50000
}
}
Important notes
- Always verify the currency format before processing payments to avoid charging incorrect amounts.
- Zero-decimal currencies should never be multiplied by 100.
- Two-decimal currencies must always be converted to their smallest minor unit.
- When displaying amounts to users, remember to convert back from minor units to the display format.
- Some payment methods may have minimum and maximum amount limits that vary by currency.