Afrikpay api integration with nodejs
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
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.
npm install npm@latest -g
npm install afrikpay-node-sdk
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);
// });
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);
// });
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);
// });
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);
});
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.
Distributed under the MIT License. See LICENSE
for more information.
Project Link: https://github.com/Georges-Ngandeu/AfrikpayNodeSdk