Nodejs API wrapper for Paystack
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
resources Merge branch 'testing' Jul 3, 2017
test Merge branch 'testing' Jul 3, 2017
.editorconfig first commit Jan 29, 2016
.gitignore first commit Jan 29, 2016
.travis.yml Update test Dec 5, 2016
README.md Edited README Mar 18, 2017
index.js fixed build failure 2 Jul 4, 2017
package.json Edited README Mar 18, 2017

README.md

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

  • customer
    • create
    • get
    • list
    • update
  • transaction
    • initialize
    • charge
    • get
    • list
    • totals
    • verify
  • plan
    • create
    • get
    • list
    • update
  • page
    • create
    • get
    • list
    • update
  • subscription
    • create
    • disable
    • enable
    • get
    • list
  • subaccount
    • create
    • get
    • list
    • listBanks
    • update
  • Miscellanous
    • list_banks
    • resolve_bin

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

  • Proper resource examples
  • ES6 support