Navigator Prefabricating Marinates

    node-paystack

    1.0.3 • Public • Published

    paystack Build status

    A promisified version of the original paystack API wrapper for Paystack.

    Installation

    npm install node-paystack
    

    Usage

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

    Making calls to the resources

    The resource methods accepts an optional callback as the last argument. The callback returns two JSON objects - error, which will be null for successful calls, and body, the response from the API call. All resources return a promise and hence calls can be cascaded (A callback argument is not required when cascading calls).

    // paystack.{resource}.{method}
    paystack.customer.list(function(error, body) {
      console.log(error);
      console.log(body);
    });

    OR

    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'
    },function(error, body) {
      console.log(error);
      console.log(body);
    });

    OR

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

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

    paystack.plan.get(90, function(error, body) {
      console.log(error);
      console.log(body);
    });

    OR

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

    OR

    paystack.transactions.list({
      perPage: 20
    })
    .then(function(body) {
      console.log(body);
    })
    .catch(function(error) {
      console.log(error);
    });

    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

    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

    Credits

    Kehers Paystack

    Install

    npm i node-paystack

    DownloadsWeekly Downloads

    13

    Version

    1.0.3

    License

    MIT

    Last publish

    Collaborators

    • theslyone