kehers / paystack

Nodejs API wrapper for Paystack
148 stars 76 forks source link

Paystack Build status

Nodejs API wrapper for Paystack.

Installation

npm install paystack

Usage

// Require the library
var paystack = require('paystack')('secret_key');

Making calls to the resources

The resource methods accepts are promisified, but can receive optional callback as the last argument.

// First Option
// paystack.{resource}.{method}
paystack.customer.list(function(error, body) {
  console.log(error);
  console.log(body);
});
// Second Option
// paystack.{resource}
paystack.customer.list()
    .then(function(body) {
        console.log(body);
    })
    .catch(function(error) {
        console.log(error);
    });

For resource methods that use POST or PUT, the JSON body can be passed as the first argument.

paystack.plan.create({
  name: 'API demo',
  amount: 10000,
  interval: 'monthly'
})
  .then(function(error, body) {
     console.log(error);
    console.log(body);
    });

For GET, you can pass the required ID as string and optional parameters as an optional object argument.

paystack.plan.get(90)
    .then(function(error, body) {
        console.log(error);
        console.log(body);
    });
paystack.transactions.list({perPage: 20})
    .then(function(error, body) {
        console.log(error);
        console.log(body);
    });

Resources

Contributing

Tests

To run tests, add your Paystack test secret key to package.json. (The test line should look something like this: env KEY=sk_test_1a68ac96a0171fb72111a24295d8d31d41c28eed ./node_modules/.bin/mocha...). Now run:

npm test

If you are contributing to the repo, kindly update the necessary test file in /test or add a new one and ensure all tests are passed before sending a PR.

Todo