Skip to content

πŸ’΅ Maps country codes (ISO 3166-1-alpha-2) to their default currency codes (ISO 4217)

License

Notifications You must be signed in to change notification settings

thiagodp/country-to-currency

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

61 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

npm (tag) License npm

country-to-currency

Maps country codes (ISO 3166-1 alpha-2) to their default currency codes (ISO 4217).

⚑ Just 2.3 KB (uncompressed), no external dependencies.

🎯 Work with browsers, NodeJS, and DenoJS. JavaScript and TypeScript.

Install

npm i country-to-currency

Usage

This library exports a default object that maps country codes to currency codes.

Available formats include UMD (therefore AMD and CommonJS) and ESM.

πŸ‘‰ Examples available in the folder examples.

TypeScript

From version 1.1.0 on, there are two union types available (TypeScript 3.4 only):

  • Currencies, that contains all the currencies;
  • Countries, that contains all the countries.

Example using TypeScript on NodeJS:

  import countryToCurrency, { Currencies, Countries } from "country-to-currency";

Browser - without installing anything

Global:

<script crossorigin src="https://unpkg.com/country-to-currency" ></script>
<script>
  console.log( countryToCurrency ); // {AF: "AFN", AX: "EUR", ... }
  console.log( countryToCurrency[ 'US' ] ); // USD
  console.log( countryToCurrency[ 'DE' ] ); // EUR
  console.log( countryToCurrency[ 'BR' ] ); // BRL
</script>

ESM:

<script type="module" >
  import countryToCurrency from "https://unpkg.com/country-to-currency/index.esm.js";
  console.log( countryToCurrency[ 'US' ] ); // USD
</script>

NodeJS

const countryToCurrency = require( 'country-to-currency/index.cjs' ); // '/index.cjs' needed since version 2.0
console.log( countryToCurrency[ 'US' ] ); // USD

Deno

import countryToCurrency from "https://unpkg.com/country-to-currency/index.esm.js";
console.log( countryToCurrency[ 'US' ] ); // USD

Notes

  • Countries included: 251
    • Imported: 249
    • Included: 2
    • Fixed: 17
  • Currencies assumed:
Country Currency Details Thanks to
Antactica (AQ) USD Antactica has no official currency @thiagodp
Palestine (PS) ILS Google @thiagodp
Turkey (TR) TRY Wikipedia @kylem123, @thiagodp
South Korea (KR) KRW ISO 4217 @MunjaeLee, @thiagodp
Switzerland (CH) CHF Wikipedia @betabong, @thiagodp
Chile (CL) CLP CLF is a non-circulating currency. Wikipedia @thiagodp
Uruguay (UY) UYU Wikipedia @marneborn, @thiagodp
Croatia (HR) EUR Since January 1st, 2023. Wikipedia and Stripe @xaphod, @thiagodp
Netherlands Antilles (AN) ANG ISO 4217 @jayPare, @thiagodp
El Salvador (SV) USD Since 2001. Wikipedia @chaitanya-d, @thiagodp
South Georgia and the South Sandwich Islands (GS) FKP Wikipedia and https://gov.gs @danielrentz, @thiagodp
Cuba (CU) CUP Wikipedia @jasongitmail, @thiagodp
Hungary (HU) HUF Wikipedia @jasongitmail, @thiagodp
Samoa (WS) WST Wikipedia @jasongitmail, @thiagodp
Niger (NE) XOF Wikipedia @danielrentz, @thiagodp
Republic of the Congo (CG) XAF Wikipedia @jasongitmail, @thiagodp
Dominican Republic (DM) XCD Wikipedia @jasongitmail, @thiagodp
Sierra Leone (SL) SLE Wikipedia and European Union @jasongitmail, @thiagodp
Kosovo (XK) EUR Wikipedia and Geo Names @dukesilverr, @thiagodp

Contribute

Suggestions? Please open an Issue. Pull Requests? Make sure to edit generate.js instead of index.ts.

License

This library is inspired by Michael Rhodes' currency-code-map. The current project adds new currencies, fixes, offers support to browsers and DenoJS, updates dependencies, and provides new internal scripts.

MIT Β© Thiago Delgado Pinto