--- title: "Supported currencies" description: "Learn about the currencies supported by Tokenz Checkout and how to properly format amount values for each currency." source: "https://docs.tokenz.one/en/v1/checkout/currency" api_version: "v1" locale: "en" version_status: "legacy" docs_stage: "prod" --- # 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 - **AUD** - Australian Dollar ($) - **CNY** - Chinese Yuan (¥) - **HKD** - Hong Kong Dollar ($) - **IDR**\* - Indonesian Rupiah (Rp) - **JPY** - Japanese Yen (¥) - **KRW** - South Korean Won (₩) - **MYR** - Malaysian Ringgit (RM) - **PHP** - Philippine Peso (₱) - **SGD** - Singapore Dollar ($) - **THB** - Thai Baht (฿) - **TWD**\* - New Taiwan Dollar (NT$) ### European currencies - **BGN** - Bulgarian Lev (лв) - **CHF** - Swiss Franc (Fr.) - **CZK** - Czech Koruna (Kč) - **DKK** - Danish Krone (kr) - **EUR** - Euro (€) - **GBP** - British Pound (£) - **HUF** - Hungarian Forint (Ft) - **NOK** - Norwegian Krone (kr) - **PLN** - Polish Złoty (zł) - **RON** - Romanian Leu (lei) - **SEK** - Swedish Krona (kr) ### North American currencies - **CAD** - Canadian Dollar ($) - **USD** - US Dollar ($) ### Middle East currencies - **AED** - UAE Dirham (د.إ) - **BHD** - Bahraini Dinar (.د.ب) - **KWD** - Kuwaiti Dinar (د.ك) - **OMR** - Omani Rial (﷼) - **QAR** - Qatari Riyal (ر.ق) - **SAR** - Saudi Riyal (﷼) ### Latin American currencies - **BRL** - Brazilian Real (R$) - **CLP** - Chilean Peso ($) - **COP** - Colombian Peso ($) - **MXN** - Mexican Peso (Mex$) - **PEN** - Peruvian Sol (S/) ### African currencies - **GHS** - Ghanaian Cedi (GH₵) - **KES** - Kenyan Shilling (KSh) - **MAD** - Moroccan Dirham (DH) ### South Asian currencies - **BDT** - Bangladeshi Taka (৳) - **LKR** - Sri Lankan Rupee (௹) - **PKR** - Pakistani Rupee (Rs) ### Other currencies - **NZD** - New Zealand Dollar ($) - **TZS** - Tanzanian Shilling (TSh) - **UGX** - Ugandan Shilling (USh) - **VND** - Vietnamese 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 | Currency | Code | Minor Unit Name | Conversion | Example | | --- | --- | --- | --- | --- | | UAE Dirham | AED | Fils | ×100 | د.إ10.00 = 1000 | | Australian Dollar | AUD | Cents | ×100 | $10.00 = 1000 | | Bangladeshi Taka | BDT | Paisa | ×100 | ৳10.00 = 1000 | | Bulgarian Lev | BGN | Stotinka | ×100 | лв10.00 = 1000 | | Bahraini Dinar | BHD | Fils | ×1000 | .د.ب10.000 = 10000 | | Brazilian Real | BRL | Centavos | ×100 | R$10.00 = 1000 | | Canadian Dollar | CAD | Cents | ×100 | $10.00 = 1000 | | Swiss Franc | CHF | Rappen/Centimes | ×100 | Fr.10.00 = 1000 | | Chilean Peso | CLP | - | ×1 | $1000 = 1000 | | Chinese Yuan | CNY | Fen | ×100 | ¥10.00 = 1000 | | Colombian Peso | COP | Centavos | ×100 | $10.00 = 1000 | | Czech Koruna | CZK | Haléř | ×100 | Kč10.00 = 1000 | | Danish Krone | DKK | Øre | ×100 | kr10.00 = 1000 | | Euro | EUR | Cents | ×100 | €10.00 = 1000 | | British Pound | GBP | Pence | ×100 | £10.00 = 1000 | | Ghanaian Cedi | GHS | Pesewas | ×100 | GH₵10.00 = 1000 | | Hong Kong Dollar | HKD | Cents | ×100 | $10.00 = 1000 | | Hungarian Forint | HUF | Fillér | ×100 | Ft10.00 = 1000 | | Indonesian Rupiah | IDR* | - | ×1 | Rp1000 = 1000 | | Japanese Yen | JPY | - | ×1 | ¥1000 = 1000 | | Kenyan Shilling | KES | Cents | ×100 | KSh10.00 = 1000 | | South Korean Won | KRW | - | ×1 | ₩1000 = 1000 | | Kuwaiti Dinar | KWD | Fils | ×1000 | د.ك10.000 = 10000 | | Sri Lankan Rupee | LKR | Cents | ×100 | ௹10.00 = 1000 | | Moroccan Dirham | MAD | Santim | ×100 | DH10.00 = 1000 | | Mexican Peso | MXN | Centavos | ×100 | Mex$10.00 = 1000 | | Malaysian Ringgit | MYR | Sen | ×100 | RM10.00 = 1000 | | Norwegian Krone | NOK | Øre | ×100 | kr10.00 = 1000 | | New Zealand Dollar | NZD | Cents | ×100 | $10.00 = 1000 | | Omani Rial | OMR | Baisa | ×1000 | ﷼10.000 = 10000 | | Peruvian Sol | PEN | Céntimos | ×100 | S/10.00 = 1000 | | Philippine Peso | PHP | Centavos | ×100 | ₱10.00 = 1000 | | Pakistani Rupee | PKR | Paisa | ×100 | Rs10.00 = 1000 | | Polish Złoty | PLN | Groszy | ×100 | zł10.00 = 1000 | | Qatari Riyal | QAR | Dirham | ×100 | ر.ق10.00 = 1000 | | Romanian Leu | RON | Bani | ×100 | lei10.00 = 1000 | | Saudi Riyal | SAR | Halala | ×100 | ﷼10.00 = 1000 | | Swedish Krona | SEK | Öre | ×100 | kr10.00 = 1000 | | Singapore Dollar | SGD | Cents | ×100 | $10.00 = 1000 | | Thai Baht | THB | Satang | ×100 | ฿10.00 = 1000 | | New Taiwan Dollar | TWD* | - | ×1 | NT$1000 = 1000 | | Tanzanian Shilling | TZS | Cents | ×100 | TSh10.00 = 1000 | | Ugandan Shilling | UGX | - | ×1 | USh1000 = 1000 | | US Dollar | USD | Cents | ×100 | $10.00 = 1000 | | Vietnamese Dong | VND | - | ×1 | ₫1000 = 1000 | \* 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. ### 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 ```json { "price": { "currency": "USD", "amount": 2499 } } ``` Zero-decimal currency (JPY) - amount as-is ```json { "price": { "currency": "JPY", "amount": 5000 } } ``` Two-decimal currency (EUR) - amount in cents ```json { "price": { "currency": "EUR", "amount": 15050 } } ``` Zero-decimal currency (KRW) - amount as-is ```json { "price": { "currency": "KRW", "amount": 50000 } } ``` ### Important notes 1. **Always verify the currency format** before processing payments to avoid charging incorrect amounts. 2. **Zero-decimal currencies** should never be multiplied by 100. 3. **Two-decimal currencies** must always be converted to their smallest minor unit. 4. When displaying amounts to users, remember to convert back from minor units to the display format. 5. Some payment methods may have minimum and maximum amount limits that vary by currency.