0.1.9 • Published 3 years ago

blockchain-payments v0.1.9

Weekly downloads
3
License
MIT
Repository
github
Last release
3 years ago

Install

npm install blockchain-payments

About

Blockchain.info payment api (v2) module

Example

Creation of an address

const BlockchainPayments = require("blockchain-payments");
const express = require("express");
const app = express();

const xpub = "xpub"; // xpub
const key = "key"; // blockchain key
const notifySecret = "secret"; // secret key for notification

const blockchain = new BlockchainPayments(xpub, key, notifySecret);

// Create an address for the payment
app.post('/payments/bitcoin/address/', (req, res, next) => {    
  blockchain.createAddress({
      callback: 'http://example.com'
  }, {
      someCallbackField1: '1',
      someCallbackFieldw2: '2',
  }).then((data) => {
      console.log(data) // {address: ..., index: ..., callback: ...}
  })
});

Conversation of currencies

BlockchainPayments.toBTC(500, 'USD').then((amountInBTC) => {
    // converting USD(or other) to BTC;
});

Handling of a notification

const successHandler = (data, callback) => {
  // data === req.query    
  // save payment info into db e.t.c    
  // callback() or return promise
};

const errorHandler = (err, meta) => {
  // you can save something to a file, db e.t.c.
  // operation must be synchronous or in the background
};

let confirmationsCount = 8; // count of confirmations for acception, default 6

app.get('payments/notification/', blockchain.notify(successHandler, errorHandler, confirmationsCount));

Description

You can write custom notification handler, but library version includes data/authentication validation and automatically sends all headers in the necessary format

API

.constructor(xpub, key, notifySecret, notifyCallback)

you can find xpub and key in your blockchain account, notifySecret you have to come up yourself

.createAddress(query, callbackQuery)

returns promise, creates bitcoin address for client payment
you can set callback url query params with callbackQuery as js object

.notify(fn, onError, confirmationsCount)

notification handler, it is "connect" middleware

Class methods

.toBTC(amount, currency)

converts an amount from a given currency to BTC, returns promise

0.1.9

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.4

4 years ago

0.1.3

4 years ago

0.1.2

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago

0.0.1

8 years ago