貨幣代碼(ISO 4217)

做結帳表單、匯率表或匯出發票時很實用。

更新日期:

貨幣代碼符號小數位
美元USD$2
歐元EUR€2
英鎊GBP£2
日圓JPY¥0
人民幣CNY¥ / 元2
港幣HKDHK$2
新台幣TWDNT$2
韓元KRW₩0
瑞士法郎CHFCHF2
加元CADC$2
澳元AUDA$2
紐西蘭元NZDNZ$2
新加坡元SGDS$2
印度盧比INR₹2
印尼盾IDRRp2
泰銖THB฿2
越南盾VND₫0
馬來西亞令吉MYRRM2
菲律賓比索PHP₱2
巴西雷亞爾BRLR$2
墨西哥比索MXNMex$2
阿根廷比索ARS$2
土耳其里拉TRY₺2
俄羅斯盧布RUB₽2
沙烏地里亞爾SAR﷼2
阿聯酋迪拉姆AEDد.إ2
南非蘭特ZARR2
波蘭茲羅提PLNzł2
瑞典克朗SEKkr2
挪威克朗NOKkr2
丹麥克朗DKKkr2

說明

ISO 4217 究竟規範了什麼

ISO 4217 是國際標準,為每種貨幣指定一個三字母代碼、一個數字代碼以及明確的小數位數。這些字母並非隨機編排:前兩個字母通常代表國家或地區,第三個字母則代表貨幣名稱,例如 USD 代表美國美元、JPY 代表日本日元、EUR 代表歐元。該標準還確定了輔幣單位——也就是小數點後的位數——這是軟體正確四捨五入金額的依據。當系統說「儲存代碼」時,指的是 ISO 4217 的字母代碼,而非貨幣符號;正是這個區別避免了整類支付錯誤。

為什麼符號永遠不夠

貨幣符號容易產生歧義,而代碼則不會。美元符號用於美國、加拿大、澳洲、紐西蘭、香港和新加坡等多個美元體系;日圓和人民幣的符號會重疊;英鎊符號則同時涵蓋英鎊和其他多種貨幣。寫成 "$10" 的價格完全無法告訴你指的是哪種貨幣。在發票、API 和資料庫中,儲存三字母代碼能徹底消除歧義,符號則變成顯示時才根據目標客群選擇的呈現層面。處理跨境貨幣的系統,簡單的原則是:儲存代碼,渲染符號。

輔幣單位、指數與四捨五入

小數位數是貨幣本身的屬性,而非全域設定。大多數貨幣使用兩位小數,因此 USD、EUR、GBP 和 CNY 都以分為輔幣單位。但日圓和韓國韓圜沒有輔幣單位——JPY 100 就是一百日元,沒有小數部分——而少數以第納爾為單位的貨幣,包括科威特第納爾、巴林第納爾、阿曼里亞爾和突尼西亞第納爾,則使用三位小數。某些貨幣在現金交易和帳務記賬上還會有不同的輔幣單位設定。跨這些情況錯誤四捨五入可能造成百倍級的差異,因此務必從標準中讀取指數,而不預設為兩位小數。

簡短的代碼,長長的例外清單

除了參考表中寥寥幾種主要貨幣之外,還有許多棘手的案例。貨幣會經歷面值調整——例如津巴布韋已刪除過多次零——而已被取代的代碼仍會留存在歷史記錄中。某些領土直接使用他國貨幣,因此當地根本沒有代碼。加密貨幣刻意脫離 ISO 4217 標準,使用自己的代號,所以同時處理兩者的帳本必須知道自己處於哪個命名空間中。此外,還有少數貨幣在不同國家共享同一名稱,卻擁有不同的代碼與幣值。最實用的結論是:代碼才是穩定的識別符,而符號、名稱甚至小數位數都可能隨時間改變。

常見問題

EUR 是哪種貨幣的代碼?
EUR 是歐元的 ISO 4217 代碼,多數歐盟國家使用歐元,符號為 €。
日本的貨幣代碼是什麼?
日圓的 ISO 4217 代碼是 JPY,符號為 ¥,沒有小數位。
為什麼要儲存三字貨幣代碼而不是符號?
符號會重複,例如 $ 可指美元、加幣、澳幣等多種貨幣;三字 ISO 4217 代碼沒有歧義。

參考來源