跳至内容
支付支持的货币

支持的货币

了解 Tokenz Checkout 支持哪些货币,以及如何正确格式化每种货币的金额。

支持的货币列表

Tokenz Checkout 支持亚太、欧洲、北美、中东、拉丁美洲、非洲和南亚等地区的货币。完整列表如下:

45 / 45 种货币

亚太地区货币

  • AUD澳大利亚元$
  • CNY人民币¥
  • HKD港元$
  • IDR*印尼盾Rp
  • JPY日元¥
  • KRW韩元₩
  • MYR马来西亚林吉特RM
  • PHP菲律宾比索₱
  • SGD新加坡元$
  • THB泰铢฿
  • TWD*新台币NT$

欧洲货币

  • BGN保加利亚列弗лв
  • CHF瑞士法郎Fr.
  • CZK捷克克朗Kč
  • DKK丹麦克朗kr
  • EUR欧元€
  • GBP英镑£
  • HUF匈牙利福林Ft
  • NOK挪威克朗kr
  • PLN波兰兹罗提zł
  • RON罗马尼亚列伊lei
  • SEK瑞典克朗kr

北美货币

  • CAD加拿大元$
  • USD美元$

中东货币

  • AED阿联酋迪拉姆د.إ
  • BHD巴林第纳尔.د.ب
  • KWD科威特第纳尔د.ك
  • OMR阿曼里亚尔﷼
  • QAR卡塔尔里亚尔ر.ق
  • SAR沙特里亚尔﷼

拉丁美洲货币

  • BRL巴西雷亚尔R$
  • CLP智利比索$
  • COP哥伦比亚比索$
  • MXN墨西哥比索Mex$
  • PEN秘鲁索尔S/

非洲货币

  • GHS加纳塞地GH₵
  • KES肯尼亚先令KSh
  • MAD摩洛哥迪拉姆DH

南亚货币

  • BDT孟加拉塔卡৳
  • LKR斯里兰卡卢比௹
  • PKR巴基斯坦卢比Rs

其他货币

  • NZDNew Zealand Dollar$
  • TZSTanzanian ShillingTSh
  • UGXUgandan ShillingUSh
  • VNDVietnamese Dong₫

* Tokenz 将 IDR, TWD 视为零小数位货币。这与将其视为两位小数的 ISO 4217 规约不同。JPY、KRW 和 CLP 在 Tokenz 和 ISO 4217 中均为零小数位货币。

货币最小单位

在 Tokenz API 中指定金额时请注意:大多数货币需要以最小单位(如分、派萨等)而非主单位来传递。这样可以避免金额错误,确保支付准确处理。

最小单位的工作原理

世界上大多数货币采用十进制,主单位由 100 个最小单位组成:

  • 1 USD = 100 分
  • 1 EUR = 100 分
  • 1 GBP = 100 便士

在 API 中使用这些货币时,需要将金额乘以 100。例如,要收取 $10.99,应发送 1099(10.99 × 100)。

零小数位货币

部分货币不使用小数位,其本身就是以最小单位表示的。这类货币称为零小数位货币。使用这类货币时,按实际金额直接传值即可,无需任何换算:

  • CLP - 智利比索
  • IDR - 印尼盾
  • JPY - 日元
  • KRW - 韩元
  • TWD - 新台币
  • UGX - 乌干达先令
  • VND - 越南盾

说明: IDR 和 TWD 在 Tokenz API 中为零小数位货币,但 ISO 4217 将其规定为两位小数。下方参考表中以星号(*)标记。

三位小数货币

部分货币使用小数点后三位,而非标准的两位。这类货币的金额需要乘以 1000:

  • BHD - 巴林第纳尔
  • KWD - 科威特第纳尔
  • OMR - 阿曼里亚尔

例如,要收取 10.500 BHD,应发送 10500(10.500 × 1000)。

其余所有支持的货币均使用最小单位,需要乘以 100。

货币最小单位完整参考

×1零位小数 · 金额不变
×100两位小数 · 乘以100
×1000三位小数 · 乘以1,000

* Tokenz 将 IDR, TWD 视为零小数位货币。这与将其视为两位小数的 ISO 4217 规约不同。JPY、KRW 和 CLP 在 Tokenz 和 ISO 4217 中均为零小数位货币。

45 / 45 种货币
AED阿联酋迪拉姆费尔
转换×100
显示金额د.إ10.00
API金额1000
AUD澳大利亚元分
转换×100
显示金额$10.00
API金额1000
BDT孟加拉塔卡派萨
转换×100
显示金额৳10.00
API金额1000
BGN保加利亚列弗斯托廷基
转换×100
显示金额лв10.00
API金额1000
BHD巴林第纳尔费尔
转换×1000
显示金额.د.ب10.000
API金额10000
BRL巴西雷亚尔分
转换×100
显示金额R$10.00
API金额1000
CAD加拿大元分
转换×100
显示金额$10.00
API金额1000
CHF瑞士法郎生丁/分
转换×100
显示金额Fr.10.00
API金额1000
CLP智利比索-
转换×1
显示金额$1000
API金额1000
CNY人民币分
转换×100
显示金额¥10.00
API金额1000
COP哥伦比亚比索分
转换×100
显示金额$10.00
API金额1000
CZK捷克克朗赫勒
转换×100
显示金额Kč10.00
API金额1000
DKK丹麦克朗欧尔
转换×100
显示金额kr10.00
API金额1000
EUR欧元分
转换×100
显示金额€10.00
API金额1000
GBP英镑便士
转换×100
显示金额£10.00
API金额1000
GHS加纳塞地比塞瓦
转换×100
显示金额GH₵10.00
API金额1000
HKD港元分
转换×100
显示金额$10.00
API金额1000
HUF匈牙利福林菲勒
转换×100
显示金额Ft10.00
API金额1000
IDR*印尼盾-
转换×1
显示金额Rp1000
API金额1000
JPY日元-
转换×1
显示金额¥1000
API金额1000
KES肯尼亚先令分
转换×100
显示金额KSh10.00
API金额1000
KRW韩元-
转换×1
显示金额₩1000
API金额1000
KWD科威特第纳尔费尔
转换×1000
显示金额د.ك10.000
API金额10000
LKR斯里兰卡卢比分
转换×100
显示金额௹10.00
API金额1000
MAD摩洛哥迪拉姆分蒂姆
转换×100
显示金额DH10.00
API金额1000
MXN墨西哥比索分
转换×100
显示金额Mex$10.00
API金额1000
MYR马来西亚林吉特仙
转换×100
显示金额RM10.00
API金额1000
NOK挪威克朗欧尔
转换×100
显示金额kr10.00
API金额1000
NZDNew Zealand Dollar—
转换×100
显示金额$10.00
API金额1000
OMR阿曼里亚尔派萨
转换×1000
显示金额﷼10.000
API金额10000
PEN秘鲁索尔分
转换×100
显示金额S/10.00
API金额1000
PHP菲律宾比索分
转换×100
显示金额₱10.00
API金额1000
PKR巴基斯坦卢比派萨
转换×100
显示金额Rs10.00
API金额1000
PLN波兰兹罗提格罗希
转换×100
显示金额zł10.00
API金额1000
QAR卡塔尔里亚尔迪拉姆
转换×100
显示金额ر.ق10.00
API金额1000
RON罗马尼亚列伊巴尼
转换×100
显示金额lei10.00
API金额1000
SAR沙特里亚尔哈拉拉
转换×100
显示金额﷼10.00
API金额1000
SEK瑞典克朗欧尔
转换×100
显示金额kr10.00
API金额1000
SGD新加坡元分
转换×100
显示金额$10.00
API金额1000
THB泰铢萨当
转换×100
显示金额฿10.00
API金额1000
TWD*新台币-
转换×1
显示金额NT$1000
API金额1000
TZSTanzanian Shilling—
转换×100
显示金额TSh10.00
API金额1000
UGXUgandan Shilling—
转换×1
显示金额USh1000
API金额1000
USD美元分
转换×100
显示金额$10.00
API金额1000
VNDVietnamese Dong—
转换×1
显示金额₫1000
API金额1000

API 格式一致性

重要: API 请求和响应均使用相同的最小单位格式。在 API 响应中收到的金额也遵循同样的规则:

  • 零小数位货币(CLP、IDR、JPY、KRW、TWD、UGX、VND)按基本单位返回
  • 三位小数货币(BHD、KWD、OMR)按乘以 1000 后的值返回
  • 其他所有货币均按最小单位(乘以 100)返回

得益于这种一致性,响应中的金额可以直接用于后续的 API 请求,无需任何转换。

API 示例

以下示例展示了如何在请求和响应中正确格式化不同货币的金额:

两位小数货币(USD) - 以分为单位的金额

json
{
  "price": {
    "currency": "USD",
    "amount": 2499
  }
}

零小数位货币(JPY) - 直接传入的金额

json
{
  "price": {
    "currency": "JPY",
    "amount": 5000
  }
}

两位小数货币(EUR) - 以分为单位的金额

json
{
  "price": {
    "currency": "EUR",
    "amount": 15050
  }
}

零小数位货币(KRW) - 直接传入的金额

json
{
  "price": {
    "currency": "KRW",
    "amount": 50000
  }
}

重要提示

  1. 处理支付前请务必确认金额格式,避免收取错误的金额。
  2. 零小数位货币切勿再乘以 100。
  3. 两位小数货币必须换算为最小单位。
  4. 向用户展示金额时,请记得从最小单位换算回显示用的金额。
  5. 某些支付方式的最小和最大金额限制因货币而异。