opennode
TypeScript icon, indicating that this package has built-in type declarations

1.5.0 • Public • Published

OpenNode Node.js Library

Version Build Status Try opennode on RunKit

The OpenNode Node library provides convenient access to the OpenNode API from applications written in server-side JavaScript.

Documentation

You can find examples here. For more information refer to our API docs.

Installation

Install the package with:

npm install opennode --save
or
yarn add opennode

Usage

The package needs to be configured with your account's secret key which is available in your OpenNode Dashboard. value:

const opennode = require('opennode');
opennode.setCredentials('MY_API_KEY', 'dev'); //if no parameter given, default environment is 'live'

try {
  const charge = await opennode.createCharge({
    amount: 10.5,
    currency: "USD",
    callback_url: "https://example.com/webhook/opennode",
    auto_settle: false
  });
}
catch (error) {
  console.error(`${error.status} | ${error.message}`);
}

Using Promises

Every method returns a chainable promise which can be used instead of a regular callback:

// Create a new charge
opennode.createCharge({
  amount: 10.5,
  currency: "USD",
  callback_url: "https://example.com/webhook/opennode",
  auto_settle: false
}).then(charge => {
  console.log(charge);
})
.catch(error => {
  console.error(`${error.status} | ${error.message}`);
});

Webhook signing

OpenNode can send signed webhook events that notify your application any time a specific event occurs. You can read more about it here.

You can verify if a webhook was sent by OpenNode by comparing the signatures.

function handleWebhook (req, res) {
  const charge = req.body;
  const isValid = await opennode.signatureIsValid(charge);

  if (isValid){
    //Handle event
  }

  return res.sendStatus(200);
}

Package Sidebar

Install

npm i opennode

Weekly Downloads

544

Version

1.5.0

License

MIT

Unpacked Size

53.7 kB

Total Files

32

Last publish

Collaborators

  • opennode