- 新平台
关于接口中的金额计算规则如下:
也可以参考官方文档:
https://www.checkout.com/docs/four/resources/calculating-the-amount
接口中的金额字段 amount 对应的数值要求是正整数(验卡场景除外),不同币种对应的金额计算规则不同,主要可以分为以下3类。
- 金额=数值
- 金额=数值/100
- 金额=数值/1000
请注意:对于所有币种,金额字段最少为1位,最多为9位。
类型 1: 金额=数值
对于以下币种,金额=数值,例如 amount =100 等同于100日元。
币种代码 | 币种名称 |
---|---|
BIF | Burundian Franc |
CLF | Chilean Unidad de Fomentos |
DJF | Djiboutian Franc |
GNF | Guinean Franc |
ISK | Icelandic Krona |
JPY | Japanese Yen |
KMF | Comoran Franc |
KRW | South Korean Won |
PYG | Paraguayan Guarani |
RWF | Rwandan Franc |
UGX | Ugandan Shilling |
VUV | Vanuatu Vatu |
VND | Vietnamese Dong |
XAF | Central African Franc |
XOF | West African CFA franc |
XPF | Comptoirs Français du Pacifique |
以下为一笔5000日元的支付请求示例:
{
"source": {
"type": "card",
"number": "4242424242424242",
"expiry_month": 6,
"expiry_year": 2022
},
"amount": 5000,
"currency": "JPY"
}
类型 2: 金额=数值/1000
对于以下币种,实际支付金额=数值除以1000后计算得到数字。例如,amount = 1000 等于 1 巴林第纳尔。
请注意: amount的最后一位数字必须位0,例如,例如 amount = 1310 可以处理,如果 amount = 1312 将无法处理并导致系统报错。
币种代码 | 币种名称 |
---|---|
BHD | Bahraini Dinar |
IQD | Iraqi Dinar |
JOD | Jordanian Dinar |
KWD | Kuwaiti Dinar |
LYD | Libyan Dinar |
OMR | Omani Rial |
TND | Tunisian Dinar |
以下为一笔50巴林第纳尔的支付请求示例:
{
"source": {
"type": "card",
"number": "4242424242424242",
"expiry_month": 6,
"expiry_year": 2022
},
"amount": 50000,
"currency": "BHD"
}
类型 3: 金额=数值/100
对于其他币种,也就是大部分币种,金额=数值除以100后计算得到的数字,例如,amount = 100 等同于1美金。
对于币种Chilean Peso (CLP) :最后两位数字必须是 00,例如,amount = 500100可以处理,但是 amount = 500095将无法处理并导致系统报错。
以下为一笔50.95美金的支付请求示例:
{
{
"source": {
"type": "card",
"number": "4242424242424242",
"expiry_month": 6,
"expiry_year": 2022
},
"amount": 5095,
"currency": "USD"
}
特别注意
对于币种印尼盾IDR,当前在Checkout.com系统内也需要按照【类型3】金额=数值/100处理。
以下为一笔100 IDR的支付请求示例:
{
"source": {
"type": "card",
"number": "4242424242424242",
"expiry_month": 6,
"expiry_year": 2022
},
"amount": 10000,
"currency": "IDR"
}