Socket
Socket
Sign inDemoInstall

@bitaccess/coinlib

Package Overview
Dependencies
12
Maintainers
28
Versions
29
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @bitaccess/coinlib

Library to assist in processing cryptocurrency payments, such as deriving addresses and sweeping funds


Version published
Weekly downloads
133
increased by160.78%
Maintainers
28
Created
Weekly downloads
 

Readme

Source

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

Keywords

FAQs

Last updated on 25 Apr 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc