金额格式
Waffo 的金额统一使用 String 类型,不要使用 Number / float / double。使用 String 而非 Number 是为了避免浮点精度问题。
0.1 + 0.2 = 0.30000000000000004 在金融场景中不可接受。金额小数位规则
不同币种对小数位的要求不同。2 位小数的币种(大部分)
以下币种金额必须精确到 2 位小数:0 位小数的币种
以下币种的金额精度为 0 位小数。对于VND,小数位可以省略,也可以保留为全 0;小数部分只要包含非 0 数字,就无法通过金额校验。
特殊币种(同币种 0 位,跨币种 2 位)
以下币种在同币种下单时不允许有小数,但在跨币种下单时允许 2 位小数:什么是同币种 / 跨币种下单
跨币种下单传参
userCurrency 可不传。但如果 payMethodType 或 payMethodName 未完全指定,需要额外传 payMethodCountry 告诉 Waffo 用户在哪个国家。
Waffo 自动处理汇率换算,用户在收银台看到的是当地货币金额。