@bitaccess/coinlib
TypeScript icon, indicating that this package has built-in type declarations

7.1.0 • Public • Published

coinlib

Library to assist in processing cryptocurrency payments.

Getting Started

npm i @bitaccess/coinlib
import { CoinPayments } from '@bitaccess/coinlib'

const coinPayments = new CoinPayments({
  seed: '5cf2d4a8b0...ca676651f'
})

To begin processing payments, select your asset

const xrpPayments = coinPayments.forNetwork('XRP')
await xrpPayments.init()

Generate a deposit address. This is useful if you are a hot wallet and don't store the private key. You will need to keep track of which path node you are on (increasing int):

let { address, extraId } = xrpPayments.getPayport(1234)
// Customer sends deposit to `address` with destination tag `extraId`

Validate an address:

if (xrpPayments.isValidAddress(depositAddress)) {
  // do something
}

Get the balance of an address:

let { confirmedBalance, unconfirmedBalance } = await xrpPayments.getBalance(1234)

Generate a sweep transaction for an address, then broadcast it:

let unsignedTx = await xrpPayments.createSweepTransaction(1234, to)
let signedTx = await xrpPayments.signTransaction(unsignedTx)
let { id: txHash } = await xrpPayments.broadcastTransaction(signedtx)

Generate a simple send transaction

let unsignedTx = await xrpPayments.createTransaction(1234, to, '1.234')
// Then sign and broadcast the transaction

Get a transaction and check if it is confirmed:

let txInfo = await xrpPayments.getTransactionInfo(txHash)
if (txInfo.isConfirmed) {
  // txInfo.confirmations > 0
}

In some circumstances, you may want a read-only copy that can do everything but sign. First create it with your seed as usual, then get the public config to use for read only version.

const readOnlyConfig = coinPayments.getPublicConfig()
const readOnlyCoinPayments = new CoinPayments(readOnlyConfig)

See tests or types for more utilities

License

MIT

Dependencies (12)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i @bitaccess/coinlib

    Weekly Downloads

    13

    Version

    7.1.0

    License

    MIT

    Unpacked Size

    300 kB

    Total Files

    29

    Last publish

    Collaborators

    • abhinavdev007
    • kite-robison-bcd
    • tyler.bit.haas
    • charzander
    • jordan-bravo
    • fduarte-bd
    • cai_bd
    • pdodgen-btcd
    • kriskrangle
    • shivbitcoin
    • g8-bd
    • bdbendavis
    • chandresh-bd
    • toby-farris-bd
    • ryanchesnut-bitcoindepot
    • ramandeep.singh_bitcoin
    • mdgart
    • rdbitaccess
    • grajbitcoindepot
    • stevenrokkala
    • rick.brennan
    • ravalesh_ba
    • gauravprabhukbitaccess
    • marcthompson
    • lpaseenba
    • charles-philippe
    • bitpotus
    • domleo