node-wipay v0.3.6
Node WiPay
This is a Node Wrapper for the WiPay Caribbean V1 API written in TypeScript.
Getting Started
Installation
This package is available on the Node Package Manager and be installed with the following commands:
npm install node-wipay
yarn add node-wipayBasic Use
To use this package you must import it using the CommonJs or Es6 Module import statement.
import * as WiPay from 'node-wipay'
const WiPayAuth = require('node-wipay').WiPayAuth;Creating an Auth instance
const auth = WiPayAuth({
    AccountNumber: Number,
    API_Key: String,
});Testing in Sandbox Mode
auth.LiveMode = false;Making Voucher API Call.
const handler = new WiPayVoucher(auth);
handler.check(voucher:String)
    .then((result:WiPayVoucherResponse) => {
        console.log(result);
    })
    .catch((error:WiPayVoucherResponse) => {
        console.log(error);
    });WiPayAuth
This class is designed as a singleton object in order to create an immutable and fault-tolerant instance of the required WiPay configuration information.
WiPayAuthConfig
This configuration interface defines the required configuration information for a WiPay authentication instance to be sucessful.
interface WiPayAuthConfig {
    AccountNumber: Number,
    API_Key: String,
}Using this format you can initialise an authorisation object by doing the following:
const config;
const wipay_auth = WiPayAuth.getInstance(config:WiPayAuthConfig);
wipay_auth.LiveMode = false or true; // LiveMode is true by defaultIt is important to note that the
_configof theWiPayAuthis immutable and cannot be modified, although theLiveMode:Booleancan be toggled forLiveandSandbox. Also as a Singleton object, the typical class constructor is private to prevent unwanted duplication.
Voucher API
The
WiPayVoucherfunctions returns aPromise<WiPayVoucherResponse>. The structure of the response is as follows.
interface WiPayVoucherResponse {
    status: String,
    msg: String,
    trxn_id?: String,
    value?: Number,
}Before any calls can be made to the object, it needs to be initialised witha valid authorisation object.
const handler = new WiPayVoucher(auth:WiPayAuth);Check
handler.check(voucher:String)
    .then((result:WiPayVoucherResponse) => {
        console.log(result);
    })
    .catch((error:WiPayVoucherResponse) => {
        console.log(error);
    });Pay
handler.pay(voucher:String, total:Number, details?:String)
    .then((result:WiPayVoucher) => {
        console.log(`Transaction ID is ${result.trxn_id}`);
    })
    .catch((error:WiPayVoucherResponse) => {
        console.log(`Payment failed due to: [${error.msg}]`);
    })5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago