bitcoin-conversion
    TypeScript icon, indicating that this package has built-in type declarations

    0.1.6 • Public • Published

    Bitcoin Conversion

    npm

    Simple to use library that takes care of all your bitcoin conversions. Convert to and from bitcoin, satoshis and fiat.

    Installation

    yarn add bitcoin-conversion
    npm install bitcoin-conversion

    Usage

    Note that all functions converting to or from fiat return a Promise. This is because it calls the CoinDesk API for current rates.

    Bitcoin to Fiat

    API

    bitcoinToFiat(amountInBtc: number | string, convertTo: SupportedCurrencies): Promise<number>;

    Example

    import { bitcoinToFiat } from 'bitcoin-conversion';
    
    const paymentInUsd = await bitcoinToFiat('0.00005', 'USD'); // needs await since calling CoinDesk API
    const paymentInGbp = await bitcoinToFiat(0.1, 'GBP'); // needs await since calling CoinDesk API

    Bitcoin to Satoshis

    API

    bitcoinToSatoshis(amountInBtc: number | string): number;

    Example

    import { bitcoinToSatoshis } from 'bitcoin-conversion';
    
    // number or string allowed
    const paymentInSats = bitcoinToSatoshis('0.00005');
    const paymentInSats = bitcoinToSatoshis(0.5);

    Satoshis to Bitcoin

    API

    satoshisToBitcoin(amountInSatoshis: number | string): number;

    Example

    import { satoshisToBitcoin } from 'bitcoin-conversion';
    
    // number or string allowed
    const paymentInBtc = satoshisToBitcoin('100000000');
    const paymentInBtc = satoshisToBitcoin(50000);

    Satoshis to Fiat

    API

    satoshisToFiat(amountInSatoshis: number | string, convertTo: SupportedCurrencies): Promise<number>;

    Example

    import { satoshisToFiat } from 'bitcoin-conversion';
    
    // number or string allowed
    const paymentInUsd = await satoshisToFiat('100000000', 'USD'); // needs await since calling CoinDesk API
    const paymentInGbp = await satoshisToFiat(50000, 'GBP'); // needs await since calling CoinDesk API

    Fiat to Bitcoin

    API

    fiatToBitcoin(amountInCurrency: number | string, convertFrom: SupportedCurrencies): Promise<number>;

    Example

    import { fiatToBitcoin } from 'bitcoin-conversion';
    
    // number or string allowed
    const paymentInBtcFromUsd = await fiatToBitcoin('100000000', 'USD'); // needs await since calling CoinDesk API
    const paymentInBtcFromGbp = await fiatToBitcoin(50000, 'GBP'); // needs await since calling CoinDesk API

    Fiat to Satoshis

    API

    fiatToSatoshis(amountInCurrency: number | string, convertFrom: SupportedCurrencies): Promise<number>;

    Example

    import { fiatToSatoshis } from 'bitcoin-conversion';
    
    // number or string allowed
    const paymentInSatsFromUsd = await fiatToSatoshis('100000000', 'USD'); // needs await since calling CoinDesk API
    const paymentInSatsFromGbp = await fiatToSatoshis(50000, 'GBP'); // needs await since calling CoinDesk API

    Supported Currencies

    type SupportedCurrencies =
      | 'AED' // United Arab Emirates Dirham"
      | 'AFN' // Afghan Afghani"
      | 'ALL' // Albanian Lek"
      | 'AMD' // Armenian Dram"
      | 'ANG' // Netherlands Antillean Guilder"
      | 'AOA' // Angolan Kwanza"
      | 'ARS' // Argentine Peso"
      | 'AUD' // Australian Dollar"
      | 'AWG' // Aruban Florin"
      | 'AZN' // Azerbaijani Manat"
      | 'BAM' // Bosnia-Herzegovina Convertible Mark"
      | 'BBD' // Barbadian Dollar"
      | 'BDT' // Bangladeshi Taka"
      | 'BGN' // Bulgarian Lev"
      | 'BHD' // Bahraini Dinar"
      | 'BIF' // Burundian Franc"
      | 'BMD' // Bermudan Dollar"
      | 'BND' // Brunei Dollar"
      | 'BOB' // Bolivian Boliviano"
      | 'BRL' // Brazilian Real"
      | 'BSD' // Bahamian Dollar"
      | 'BTC' // Bitcoin"
      | 'BTN' // Bhutanese Ngultrum"
      | 'BWP' // Botswanan Pula"
      | 'BYR' // Belarusian Ruble"
      | 'BZD' // Belize Dollar"
      | 'CAD' // Canadian Dollar"
      | 'CDF' // Congolese Franc"
      | 'CHF' // Swiss Franc"
      | 'CLF' // Chilean Unit of Account (UF)"
      | 'CLP' // Chilean Peso"
      | 'CNY' // Chinese Yuan"
      | 'COP' // Colombian Peso"
      | 'CRC' // Costa Rican Col\u00f3n"
      | 'CUP' // Cuban Peso"
      | 'CVE' // Cape Verdean Escudo"
      | 'CZK' // Czech Republic Koruna"
      | 'DJF' // Djiboutian Franc"
      | 'DKK' // Danish Krone"
      | 'DOP' // Dominican Peso"
      | 'DZD' // Algerian Dinar"
      | 'EEK' // Estonian Kroon"
      | 'EGP' // Egyptian Pound"
      | 'ERN' // Eritrean Nnakfa"
      | 'ETB' // Ethiopian Birr"
      | 'EUR' // Euro"
      | 'FJD' // Fijian Dollar"
      | 'FKP' // Falkland Islands Pound"
      | 'GBP' // British Pound Sterling"
      | 'GEL' // Georgian Lari"
      | 'GHS' // Ghanaian Cedi"
      | 'GIP' // Gibraltar Pound"
      | 'GMD' // Gambian Dalasi"
      | 'GNF' // Guinean Franc"
      | 'GTQ' // Guatemalan Quetzal"
      | 'GYD' // Guyanaese Dollar"
      | 'HKD' // Hong Kong Dollar"
      | 'HNL' // Honduran Lempira"
      | 'HRK' // Croatian Kuna"
      | 'HTG' // Haitian Gourde"
      | 'HUF' // Hungarian Forint"
      | 'IDR' // Indonesian Rupiah"
      | 'ILS' // Israeli New Sheqel"
      | 'INR' // Indian Rupee"
      | 'IQD' // Iraqi Dinar"
      | 'IRR' // Iranian Rial"
      | 'ISK' // Icelandic Kr\u00f3na"
      | 'JEP' // Jersey Pound"
      | 'JMD' // Jamaican Dollar"
      | 'JOD' // Jordanian Dinar"
      | 'JPY' // Japanese Yen"
      | 'KES' // Kenyan Shilling"
      | 'KGS' // Kyrgystani Som"
      | 'KHR' // Cambodian Riel"
      | 'KMF' // Comorian Franc"
      | 'KPW' // North Korean Won"
      | 'KRW' // South Korean Won"
      | 'KWD' // Kuwaiti Dinar"
      | 'KYD' // Cayman Islands Dollar"
      | 'KZT' // Kazakhstani Tenge"
      | 'LAK' // Laotian Kip"
      | 'LBP' // Lebanese Pound"
      | 'LKR' // Sri Lankan Rupee"
      | 'LRD' // Liberian Dollar"
      | 'LSL' // Lesotho Loti"
      | 'LTL' // Lithuanian Litas"
      | 'LVL' // Latvian Lats"
      | 'LYD' // Libyan Dinar"
      | 'MAD' // Moroccan Dirham"
      | 'MDL' // Moldovan Leu"
      | 'MGA' // Malagasy Ariary"
      | 'MKD' // Macedonian Denar"
      | 'MMK' // Myanma Kyat"
      | 'MNT' // Mongolian Tugrik"
      | 'MOP' // Macanese Pataca"
      | 'MRO' // Mauritanian Ouguiya"
      | 'MTL' // Maltese Lira"
      | 'MUR' // Mauritian Rupee"
      | 'MVR' // Maldivian Rufiyaa"
      | 'MWK' // Malawian Kwacha"
      | 'MXN' // Mexican Peso"
      | 'MYR' // Malaysian Ringgit"
      | 'MZN' // Mozambican Metical"
      | 'NAD' // Namibian Dollar"
      | 'NGN' // Nigerian Naira"
      | 'NIO' // Nicaraguan C\u00f3rdoba"
      | 'NOK' // Norwegian Krone"
      | 'NPR' // Nepalese Rupee"
      | 'NZD' // New Zealand Dollar"
      | 'OMR' // Omani Rial"
      | 'PAB' // Panamanian Balboa"
      | 'PEN' // Peruvian Nuevo Sol"
      | 'PGK' // Papua New Guinean Kina"
      | 'PHP' // Philippine Peso"
      | 'PKR' // Pakistani Rupee"
      | 'PLN' // Polish Zloty"
      | 'PYG' // Paraguayan Guarani"
      | 'QAR' // Qatari Rial"
      | 'RON' // Romanian Leu"
      | 'RSD' // Serbian Dinar"
      | 'RUB' // Russian Ruble"
      | 'RWF' // Rwandan Franc"
      | 'SAR' // Saudi Riyal"
      | 'SBD' // Solomon Islands Dollar"
      | 'SCR' // Seychellois Rupee"
      | 'SDG' // Sudanese Pound"
      | 'SEK' // Swedish Krona"
      | 'SGD' // Singapore Dollar"
      | 'SHP' // Saint Helena Pound"
      | 'SLL' // Sierra Leonean Leone"
      | 'SOS' // Somali Shilling"
      | 'SRD' // Surinamese Dollar"
      | 'STD' // S\u00e3o Tom\u00e9 and Pr\u00edncipe Dobra"
      | 'SVC' // Salvadoran Col\u00f3n"
      | 'SYP' // Syrian Pound"
      | 'SZL' // Swazi Lilangeni"
      | 'THB' // Thai Baht"
      | 'TJS' // Tajikistani Somoni"
      | 'TMT' // Turkmenistani Manat"
      | 'TND' // Tunisian Dinar"
      | 'TOP' // Tongan Pa?anga"
      | 'TRY' // Turkish Lira"
      | 'TTD' // Trinidad and Tobago Dollar"
      | 'TWD' // New Taiwan Dollar"
      | 'TZS' // Tanzanian Shilling"
      | 'UAH' // Ukrainian Hryvnia"
      | 'UGX' // Ugandan Shilling"
      | 'USD' // United States Dollar"
      | 'UYU' // Uruguayan Peso"
      | 'UZS' // Uzbekistan Som"
      | 'VEF' // Venezuelan Bol\u00edvar Fuerte"
      | 'VND' // Vietnamese Dong"
      | 'VUV' // Vanuatu Vatu"
      | 'WST' // Samoan Tala"
      | 'XAF' // CFA Franc BEAC"
      | 'XAG' // Silver (troy ounce)"
      | 'XAU' // Gold (troy ounce)"
      | 'XBT' // Bitcoin"
      | 'XCD' // East Caribbean Dollar"
      | 'XDR' // Special Drawing Rights"
      | 'XOF' // CFA Franc BCEAO"
      | 'XPF' // CFP Franc"
      | 'YER' // Yemeni Rial"
      | 'ZAR' // South African Rand"
      | 'ZMK' // Zambian Kwacha (pre-2013)"
      | 'ZMW' // Zambian Kwacha"
      | 'ZWL'; // Zimbabwean Dollar"

    Acknowledgements

    This library wraps around the Coindesk API. I think I have to say "Powered by CoinDesk" here to use this API...so here I am.

    Install

    npm i bitcoin-conversion

    DownloadsWeekly Downloads

    31

    Version

    0.1.6

    License

    MIT

    Unpacked Size

    247 kB

    Total Files

    12

    Last publish

    Collaborators

    • aryanjabbari