全球货币符号对照
这些规则从哪来
- ISO 4217 的三个字母不是随便定的
- 前两位是该国的 ISO 3166 国家代码,第三位一般取货币名称的首字母:中国
CN+ 元(Yuan)=CNY,日本JP+ 円(Yen)=JPY,英国GB+ 镑(Pound)=GBP。不属于单一国家的货币以X开头,比如欧元EUR是历史特例,而黄金是XAU、白银XAG、特别提款权是XDR、「无货币」是XXX。每种货币还有一个三位数字代码,和国家的数字代码对应。 - 小数位数是标准的一部分
- 大多数货币是 2 位小数,但日元、韩元、越南盾、智利比索、冰岛克朗等是 0 位——给日元金额写成
¥1,234.00是错的。另一头,科威特第纳尔、巴林第纳尔、阿曼里亚尔、约旦第纳尔、突尼斯第纳尔是 3 位小数,1 第纳尔 = 1000 费尔。做支付对接时这一栏直接决定金额该乘以多少:Stripe 之类的接口按「最小货币单位」传整数,USD 传分(×100),JPY 传整元(×1),KWD 要传千分之一(×1000)。 - 符号在前还是在后
- 英语系国家一律写在数字前:
$1,234.56、£1,234.56。欧洲大陆多数写在后面并空一格:1.234,56 €。法语区用空格做千分位:1 234,56 €。瑞士用撇号:1'234.56。这些差异在生成 PDF 发票时最容易露怯。 - 印度的分组方式不一样
- 印度按「拉克」(10 万)和「克若尔」(1000 万)分组,1234567.89 写成
12,34,567.89——从右往左先分三位,之后每两位一组。所以印度客户看到的数字分节方式和我们完全不同,做本地化时不能简单套千分位。 - ¥ 到底是人民币还是日元
- 两者在 Unicode 里是同一个字符
U+00A5(全角¥是U+FFE5)。人民币还有个专用写法是在 Y 上加两横,日元是一横或两横都有,实际打字时区分不了。所以涉及中日之间的金额,务必写CNY或JPY。同理$被美国、加拿大、澳大利亚、新西兰、新加坡、港币等十几种货币共用,₩被韩元和朝鲜元共用。 - 相关工具
- 汇率换算、人民币大写、数字转英文、跨境收款手续费、特殊符号大全、世界各国概况。