Bitcoin Conversion

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');
const paymentInGbp = await bitcoinToFiat(0.1, 'GBP');
Bitcoin to Satoshis
API
bitcoinToSatoshis(amountInBtc: number | string): number;
Example
import { bitcoinToSatoshis } from 'bitcoin-conversion';
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';
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';
const paymentInUsd = await satoshisToFiat('100000000', 'USD');
const paymentInGbp = await satoshisToFiat(50000, 'GBP');
Fiat to Bitcoin
API
fiatToBitcoin(amountInCurrency: number | string, convertFrom: SupportedCurrencies): Promise<number>;
Example
import { fiatToBitcoin } from 'bitcoin-conversion';
const paymentInBtcFromUsd = await fiatToBitcoin('100000000', 'USD');
const paymentInBtcFromGbp = await fiatToBitcoin(50000, 'GBP');
Fiat to Satoshis
API
fiatToSatoshis(amountInCurrency: number | string, convertFrom: SupportedCurrencies): Promise<number>;
Example
import { fiatToSatoshis } from 'bitcoin-conversion';
const paymentInSatsFromUsd = await fiatToSatoshis('100000000', 'USD');
const paymentInSatsFromGbp = await fiatToSatoshis(50000, 'GBP');
Supported Currencies
type SupportedCurrencies =
| 'AED'
| 'AFN'
| 'ALL'
| 'AMD'
| 'ANG'
| 'AOA'
| 'ARS'
| 'AUD'
| 'AWG'
| 'AZN'
| 'BAM'
| 'BBD'
| 'BDT'
| 'BGN'
| 'BHD'
| 'BIF'
| 'BMD'
| 'BND'
| 'BOB'
| 'BRL'
| 'BSD'
| 'BTC'
| 'BTN'
| 'BWP'
| 'BYR'
| 'BZD'
| 'CAD'
| 'CDF'
| 'CHF'
| 'CLF'
| 'CLP'
| 'CNY'
| 'COP'
| 'CRC'
| 'CUP'
| 'CVE'
| 'CZK'
| 'DJF'
| 'DKK'
| 'DOP'
| 'DZD'
| 'EEK'
| 'EGP'
| 'ERN'
| 'ETB'
| 'EUR'
| 'FJD'
| 'FKP'
| 'GBP'
| 'GEL'
| 'GHS'
| 'GIP'
| 'GMD'
| 'GNF'
| 'GTQ'
| 'GYD'
| 'HKD'
| 'HNL'
| 'HRK'
| 'HTG'
| 'HUF'
| 'IDR'
| 'ILS'
| 'INR'
| 'IQD'
| 'IRR'
| 'ISK'
| 'JEP'
| 'JMD'
| 'JOD'
| 'JPY'
| 'KES'
| 'KGS'
| 'KHR'
| 'KMF'
| 'KPW'
| 'KRW'
| 'KWD'
| 'KYD'
| 'KZT'
| 'LAK'
| 'LBP'
| 'LKR'
| 'LRD'
| 'LSL'
| 'LTL'
| 'LVL'
| 'LYD'
| 'MAD'
| 'MDL'
| 'MGA'
| 'MKD'
| 'MMK'
| 'MNT'
| 'MOP'
| 'MRO'
| 'MTL'
| 'MUR'
| 'MVR'
| 'MWK'
| 'MXN'
| 'MYR'
| 'MZN'
| 'NAD'
| 'NGN'
| 'NIO'
| 'NOK'
| 'NPR'
| 'NZD'
| 'OMR'
| 'PAB'
| 'PEN'
| 'PGK'
| 'PHP'
| 'PKR'
| 'PLN'
| 'PYG'
| 'QAR'
| 'RON'
| 'RSD'
| 'RUB'
| 'RWF'
| 'SAR'
| 'SBD'
| 'SCR'
| 'SDG'
| 'SEK'
| 'SGD'
| 'SHP'
| 'SLL'
| 'SOS'
| 'SRD'
| 'STD'
| 'SVC'
| 'SYP'
| 'SZL'
| 'THB'
| 'TJS'
| 'TMT'
| 'TND'
| 'TOP'
| 'TRY'
| 'TTD'
| 'TWD'
| 'TZS'
| 'UAH'
| 'UGX'
| 'USD'
| 'UYU'
| 'UZS'
| 'VEF'
| 'VND'
| 'VUV'
| 'WST'
| 'XAF'
| 'XAG'
| 'XAU'
| 'XBT'
| 'XCD'
| 'XDR'
| 'XOF'
| 'XPF'
| 'YER'
| 'ZAR'
| 'ZMK'
| 'ZMW'
| 'ZWL';
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.