GithubHelp home page GithubHelp logo

bitpay-node's Introduction

Bitpay - Bitcoin Payment Library for Node.js

I want a simple way to use the Bitpay Bitcoin API in node.js, and npm -- Node Package Manager -- is the standard way to distribute javascript libraries for Node.js.

Like other HTTP client libraries a Client object will manage authentication and connection to Bitpay's servers. All requests to the API will ultimately be made using the Client object initialized with the Bitpay account credentials.

Installation

npm install bitpay-node

Example Usage

Initialzing a Client object with Bitpay Api Key

var Bitpay = require('bitpay-node');

var client = new Bitpay.Client({ apiKey: process.env.BITPAY_API_KEY });

Creating an Invoice

var invoiceOptions = { 
  price: 0.001, 
  currency: 'BTC' 
}; 

client.createInvoice(invoiceOptions, function(err, invoice) {
  console.log(invoice);
})

The call to createInvoice above should produce a JSON response as per the official Bitpay API documenation

{ id: '2Rpei3aKcJZUDWDSJ92oSq',
  url: 'https://bitpay.com/invoice?id=2Rpei3aKcJZUDWDSJ92oSq',
  status: 'new',
  btcPrice: '0.0010',
  price: 0.001,
  currency: 'BTC',
  invoiceTime: 1390253166402,
  expirationTime: 1390254066402,
  currentTime: 1390253166452 }

Retrieving an Invoice with Status

Once an invoice has been created a call can be made to get its info and status.

client.getInvoice('2Rpei3aKcJZUDWDSJ92oSq', function(err, invoice) {
  console.log(invoice);
});

Which will return the same structure as the call to createInvoice, except now the status may have transitioned to either paid, confirmed, complete, expired or invalid.

Tests

Run the tests wiith Mocha, and make sure to specify your Bitpay API Key in environment. On the Bitpay account API keys page your can generate multiple API keys for your various applications. Enable API key access and generate a key to use in the tests:

BITPAY_API_KEY=46beb6dc657d4ceff4219a8e691b5015 mocha test/

bitpay-node's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

bitpay-node's Issues

Account is suspended

Hello,
I'm getting the error "{ type: 'suspended', message: 'Account is suspended' }" with this code:

Client.createInvoice({
       "price": "0.003",
       "currency": "BTC"
    }, (err, invoice) => {
        if(err) console.error(err)

          console.log(invoice)
   })

Tho, my account isn't suspended... What's wrong<?
Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.