Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



    BitGo JavaScript SDK

    The BitGo Platform and SDK makes it easy to build multi-signature Bitcoin applications today. The SDK is fully integrated with the BitGo co-signing service for managing all of your BitGo wallets.

    Included in the SDK are examples for how to use the API to manage your multi-signature wallets.

    Please join us on our Slack channel if you have questions or comments about this API.

    Known Vulnerabilities Build Status


    Please make sure you are running at least Node version 6 (6.9.5 recommended) and NPM version 3 (3.10.10 recommended). We recommend using nvm, the Node Version Manager, for setting your Node version.

    git clone

    cd BitGoJS

    npm install

    Full Documentation

    View our Javascript SDK Documentation.

    Example Usage

    Initialize SDK

    Create an access token by logging into your bitgo account, going to the API access tab in the settings area and making a developer token.

    var BitGo = require('bitgo');
    var bitgo = new BitGo.BitGo({ accessToken: ACCESS_TOKEN }); // defaults to testnet. add env: 'prod' if you want to go against mainnet
    bitgo.session({}, function(err,res) {

    Create Wallet

    var wallet;
    var params = { 
      "passphrase": "replaceme", 
      "label": "firstwallet"
    bitgo.wallets().createWalletWithKeychains(params, function(err, result) {
      wallet = result.wallet; 
      console.log("Locally created keychain: " + result.userKeychain.encryptedXprv);

    Create new address

    wallet.createAddress({ "chain": 0 }, function callback(err, address) {

    View transactions

    wallet.transactions({}, function callback(err, transactions) {

    Send coins

      address: "2NEe9QhKPB2gnQLB3hffMuDcoFKZFjHYJYx", 
      amount: 0.01 * 1e8, 
      walletPassphrase:  "replaceme" 
    }, function(err, result) {

    More examples

    Further demos and examples can be found in the example directory and documented here.

    BitGo Express Local Signing Server (REST API)

    Suitable for developers working in a language without an official BitGo SDK.

    BitGo Express runs as a service in your own datacenter, and handles the client-side operations involving your own keys, such as partially signing transactions before submitting to BitGo. This ensures your keys never leave your network, and are not seen by BitGo. BitGo Express can also proxy the standard BitGo REST APIs, providing a unified interface to BitGo through a single REST API.

    bin/bitgo-express [-h] [-v] [-p PORT] [-b BIND] [-e ENV] [-d] [-l LOGFILEPATH] [-k KEYPATH] [-c CRTPATH]

    For a full tutorial of how to install, authenticate, and use Bitgo Express, see the Bitgo Express Quickstart

    Usage in Browser

    For use inside a browser, BitGoJS can be bundled with any module bundler. There is a Webpack configuration file already included, which can be triggered with package scripts.

    For a production build: npm run-script compile

    For a development (non-minified) build: npm run-script compile-dbg

    To build the test suite into a single test file: npm run-script compile-test


    npm i bitgo

    Downloadslast 7 days







    last publish


    • avatar
    • avatar