JSPM

  • Created
  • Published
  • Downloads 241
  • Score
    100M100P100Q82105F

Wallet client for Bitcore node

Package Exports

  • bitcore-client

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (bitcore-client) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Bitcore Client

A helper to create a wallet using the bitcore-v8 infrastructure.

Purpose

This repo should allow you to create a wallet using the bitcore-v8 infrastructure.

Currently we have the following features

  • Wallet Creation
  • Importing Addresses to the Wallet
  • View Only
  • Send Enabled by including the privKey
  • Instant balance checking
  • Transaction Creation
  • Transaction Signing
  • Transaction Broadcasting
  • Multi-Sig address derive/importing

Commands

Wallet Create

No baseUrl flag will automatically create a wallet that points to https://api.bitcore.io/api.

./wallet-create --name TestWalletBTC --chain BTC --network mainnet

To create a wallet to point to local bitcore-node.

./wallet-create --name myregtestwallet --chain BCH --network regtest --baseUrl http://localhost:3000/api

Register an Existing Wallet

Register an existing wallet to point to custom Bitcore API url.

./wallet-register --name myregtestwallet --baseUrl https://api.bitcore.io/api

Or a local Bitcore-node

./wallet-register --name myregtestwallet --baseUrl http://localhost:3000/api

Wallet Address Import

You can import a jsonl file. privKey and pubKey are optional. If you provide privKey, pubKey must be provided as well.

//~/Desktop/export.jsonl
{"address": "mXy1234", privKey: "xxxxxxx", pubKey: "yyyyyyyy"}
{"address": "mXy1234", privKey: "xxxxxxx", pubKey: "yyyyyyyy"}
{"address": "mXy1234", privKey: "xxxxxxx", pubKey: "yyyyyyyy"}
./wallet-import --name TestWalletBTC --file ~/Desktop/export.jsonl

You can also import an address in json format in the command line.

./wallet-import --name myregtestwallet --parse '[{"address":"mXy1234"}]'

Balance Checking

./wallet-balance --name TestWalletBTC

Balance Checking at Specific Date or Time

./wallet-balance --name TestWalletBTC --time 01-15-2019

Valid types of time (no slash marks allowed):

1-14-2019
"Wed Jan 16 2019 13:34:20 GMT-0500 (Eastern Standard Time)"
"2019-01-16T18:47:33.396Z"

Wallet UTXOS

./bin/wallet-utxos --name TestWalletBTC

Transaction Creation

./bin/wallet-tx --addresses '[{"address": "moVf5Rf1r4Dn3URQHumEzvq3vtrFbaRvNr", "satoshis": 2500000000}]' --fee 100 --utxos '[{"txid":"28321f501ce47db1fd40d9ad461624bf9fe6cb581ac0177d17304ff128b86d61","vout":0,"address":"mhwfzHhBdpUKLTzGkUEUpJWa3ipTYZHjF8","script":"21033a3c1aa3fb35e07fe7ff44423c8d378c2d4610ffac8b08c4e6747d7573566937ac","value":5000000000}]' --change "mz21R16FYXfA6G4EJdCrTsduvX9BHHecvv" --name TestWalletBTC --amount 2500000000

Transaction Signing

./bin/wallet-sign --name TestWalletBTC --tx 0100000001616db828f14f30177d17c01a58cbe69fbf241646add940fdb17de41c501f32280000000000ffffffff0200f90295000000001976a914578237b9848cc709ced0e098417e0494415add1488ac9cf80295000000001976a914caf0ee682de3daa9b3640da1f6d47cc04ce2c99e88ac00000000

Transaction Broadcast

./bin/wallet-broadcast --name TestWalletBTC --tx 0100000001616db828f14f30177d17c01a58cbe69fbf241646add940fdb17de41c501f32280000000048473044022052cf595274c422c37d140989c8cc31c95b39d326b5eac8d4feb8bcceebdebc3f02205635c798c24ae1d44d0871e6938dbfd76293e695131d890838654816f28b942401ffffffff0200f90295000000001976a914578237b9848cc709ced0e098417e0494415add1488ac9cf80295000000001976a914caf0ee682de3daa9b3640da1f6d47cc04ce2c99e88ac00000000

Paypro Payment

./bin/wallet-paypro --name TestWalletBTC --payProUri 'https://bitpay.com/i/Dd8q13AnnVyYM7pcMBHfv'

Contributing

See CONTRIBUTING.md on the main bitcore repo for information about how to contribute.

License

Code released under the MIT license.

Copyright 2013-2019 BitPay, Inc. Bitcore is a trademark maintained by BitPay, Inc.