JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 17
  • Score
    100M100P100Q38603F
  • License MIT

Cross-Switch Ghana API wrapper

Package Exports

  • cross-switch-gh
  • cross-switch-gh/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (cross-switch-gh) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Cross-Switch Ghana

Issues Star Issues

Nodejs API wrapper for Cross-Switch Ghana.

NPM

Installation

npm install cross-switch-gh

Usaged

var live = false;

if (process.env.NODE_ENV === 'production') {
    live = true;
}
// Require the library
var cross_switch = require('cross-switch-gh')(process.env.APP_ID, process.env.APP_KEY, live, baseurl);

Making calls to the resources

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

// cross_switch.{resource}
cross_switch.payment.createPayment({})
    .then((body)=> {
          console.log(body);
    })
    .catch((error)=> {
        console.log(error);
    });

For all resource methods, the JSON body can be passed as the argument.

Resources

  • payment
    • createPayment
    • Collection
    • Cashout
    • getBalance
    • verifyPayment
  • customer
    • createCustomer
    • getCustomer
    • getCustomerBill
  • sms
    • sendSms
    • sendOtp
    • verifyOtp
  • Bill
    • createBill
    • getBill
    • payBill
  • Page (Payment Link)
    • createPage - Coming soon
    • getPage - Coming soon
    • Payment - Coming soon
  • Invoice (Payment Link)
    • createInvoice - Coming soon
    • getInvoice - Coming soon
    • PayInvoice - Coming soon

Method to Initiation Sending or Receiving from mobile Money.

cross_switch.payment.createPayment({
    type: 'Receive || Send',
    name: 'Firstname Lastname',
    mobile: '+233540000000',
    mobile_network: 'MTN || AIRTEL || TIGO || VODAFONE',
    email: 'harmony@cross-switch.com',
    currency: 'GHS',
    amount: 0.1,
    order_id: `${Math.ceil(Math.random() * 10e8)}`,
    order_desc: 'Testing',
    account: '',
    customerid: '',
    callback: ''
}).then((body)=> {
    console.log(body);
}).catch((error)=> {
    console.log(error);
});

Method to Initiation Only Receiving from mobile Money.

cross_switch.payment.Collection({
    name: 'Firstname Lastname',
    mobile: '+233540000000',
    mobile_network: 'MTN || AIRTEL || TIGO || VODAFONE',
    email: 'harmony@icloud.com',
    currency: 'GHS',
    amount: 0.1,
    order_id: `${Math.ceil(Math.random() * 10e8)}`,
    order_desc: 'Testing',
    account: '',
    customerid: '',
    callback: '',
}).then((body)=> {
    console.log(body);
}).catch((error)=> {
    console.log(error);
});;

Method to Initiation Only Sending to mobile Money.

cross_switch.payment.Cashout({
    name: 'Firstname Lastname',
    mobile: '+233540000000',
    mobile_network: 'MTN || AIRTEL || TIGO || VODAFONE',
    email: 'harmony@icloud.com',
    currency: 'GHS',
    amount: 1,
    order_id: `${Math.ceil(Math.random() * 10e8)}`,
    order_desc: 'Testing',
    customerid: '',
    callback: '',
}).then((body)=> {
    console.log(body);
}).catch((error)=> {
    console.log(error);
});

Method to Get Cashout Balance.

cross_switch.payment.getBalance({})
.then((body)=> {
    console.log(body);
}).catch((error)=> {
    console.log(error);
});

Method to Verify Transaction status.

cross_switch.payment.verifyPayment({
    order_id: `${data.transaction_no}`,
}).then((body)=> {
    console.log(body);
}).catch((error)=> {
    console.log(error);
});

Todo

  • Add MOMO Number Verification
  • Add MOMO Direct Debit