Skip to content

Georges-Ngandeu/AfrikpayNodeSdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

Afrikpay Node Sdk

Afrikpay api integration with nodejs
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

  1. Getting started
  2. Ecommerce integration
  3. Bill integration
  4. Airtime integration
  5. Account integration
  6. License
  7. Contact
  8. Acknowledgements

Getting Started

This node library was created with the purpose of facilitating the integration of our payment api to our partners. It is an ongoing work. Suggestions to ameliorate the api are welcome.

Prerequisites

npm install npm@latest -g

Installation

npm install afrikpay-node-sdk

Ecommerce integration

Let's suppose you want to integrate ecommerce payments on you system. Here are the two main steps to get the job done in the development environment. You an uncomment the code to test the others apis.

import {Ecommerce} from 'afrikpay-node-sdk';

let ecommerce = new Ecommerce(
    'AFC6617',
    '661671d0bd7bef499e7d80879c27d95e',
    '7777',
    'http://34.86.5.170:8086/api/ecommerce/collect/',
    'http://34.86.5.170:8086/api/ecommerce/payout/',
    'http://34.86.5.170:8086/api/ecommerce/deposit/',
    'http://34.86.5.170:8086/api/ecommerce/changekey/',
    'http://34.86.5.170:8086/api/ecommerce/transaction/status/'
);

ecommerce.collect(
    'mtn_mobilemoney_cm',
    '677777777',
    350).then(function (response) {
        console.log(response.data);
    }).catch(function (error) {
        console.log(error);
    });

ecommerce.collect(
//     'orange_money_cm',
//     '699999999',
//     400,
//     '0000',
//     'wdl125').then(function (response) {
//         console.log(response.data);
//     }).catch(function (error) {
//         console.log(error);
//     });


// ecommerce.deposit()
//     .then(function (response) {
//             console.log(response.data);
//         }).catch(function (error) {
//             console.log(error);
//         });

// ecommerce.payout(
//     'mtn_mobilemoney_cm',
//     '677777777',
//     350).then(function (response) {
//         console.log(response.data);
//     }).catch(function (error) {
//         console.log(error);
//     });

Bill integration

If you want to integrate bill payments apis on you system, here are the two main steps to get the job done in the development environment. You an uncomment the code to test the others apis.

import {Bill} from 'afrikpay-node-sdk';

let bill = new Bill(
    '3620724907638658',
    '3620724907638658',
    'e825e83873eafffff315fc3f22db2d59',
    'afrikpay',
    'http://34.86.5.170:8086/api/bill/v2/',
    'http://34.86.5.170:8086/api/bill/getamount/',
    'http://34.86.5.170:8086/api/bill/status/v2/'
);

bill.payBill(
    'camwater',
    '111111111111111',
    2500,
    'cash',
    '321koi'
).then(function (response) {
    console.log(response.data);
}).catch(function (error) {
    console.log(error);
});

bill.payBill(
//     'canal',
//     '11111111111111',
//     13500,
//     'cash',
//     '321bgh'
// ).then(function (response) {
//     console.log(response.data);
// }).catch(function (error) {
//     console.log(error);
// });

// bill.getBillAmount(
//     'camwater',
//     '111111111111111'
// ).then(function (response) {
//     console.log(response.data);
// }).catch(function (error) {
//     console.log(error);
// });

// bill.getBillStatus(
//     '321bgh'
// ).then(function (response) {
//     console.log(response.data);
// }).catch(function (error) {
//     console.log(error);
// });

Airtime api integration

If you want to integrate airtime apis on you system, here are the two main steps to get the job done in the development environment. You an uncomment the code to test the others apis.

import {Airtime} from 'afrikpay-node-sdk';

let airtime = new Airtime(
    '3620724907638658',
    '3620724907638658',
    'e825e83873eafffff315fc3f22db2d59',
    'afrikpay',
    'http://34.86.5.170:8086/api/airtime/v2/',
    'http://34.86.5.170:8086/api/airtime/status/v2/'
);

airtime.makeAirtime(
    'mtn',
    '677777777',
    1000,
    'cash',
    'zerty145'
).then(function (response) {
    console.log(response.data);
}).catch(function (error) {
    console.log(error);
});

airtime.airtimeStatus(
//     'zerty145'
// ).then(function (response) {
//     console.log(response.data);
// }).catch(function (error) {
//     console.log(error);
// });

Account api integration

If you want to integrate account apis on you system, here are the two main steps to get the job done in the development environment. You an uncomment the code to test the others apis.

import {Account} from 'afrikpay-node-sdk';

let account = new Account(
    '3620724907638658',
    '3620724907638658',
    'e825e83873eafffff315fc3f22db2d59',
    'http://34.86.5.170:8086/api/account/agent/balance/v2/',
    'http://34.86.5.170:8086/api/account/agent/balance/v2/',
    'http://34.86.5.170:8086/api/account/developer/changekey/'
);

account.balance()
    .then(function (response) {
        console.log(response.data);
    })
    .catch(function (error) {
        console.log(error);
    });

How to switch to production ?

You can explore the src folder to see the default production setup. Just use the appropriate apikey, store code, agentid for production. If you have any problem using the library please contact us, we will be happy to help you.

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Project Link: https://github.com/Georges-Ngandeu/AfrikpayNodeSdk

Acknowledgements

About

Afrikpay api node library

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published