mtn-mobile-payment-js
v1.0.3
Published
for mtn payment
Downloads
3
Readme
MomoAPI A Node.js library for interacting with the MTN Mobile Money API. It currently supports creating API users, generating API keys, generating access tokens, making requests to pay, checking payment status, and retrieving account balance.
npm install momoapi
const MomoApi = require('mtn-mobile-payment-js');
const subscription_key = 'your_subscription_key'; //your collections primary or secondary key
const uuid = 'your_uuid'; // version 4 unique id
const webhook_url = 'your_webhook_url'; //webhook end point
const currency = 'EUR'; //ISO currency code
const amount = '10'; //amount to get from user to your website or project
const externalid = 'your_external_id'; //external id for your further reference it could be your database id or something
const phonenumber = 'phone_number_for_payment';//for example 024XXXXXXXXX mtn registered mobile number
const payermessage = 'your_payer_message';// your message for why this payment
const payeenote = 'your_payee_note'; //your message for why this payment
const environment = ''; // environment it could be live or sand box
const api = new MomoApi(subscription_key, uuid);
// Create an API user
api.createuser(webhook_url)
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});
// Check if API user exists
api.checkcreateduser()
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});
// Generate an API key
const {apiKey} = await api.getapikey()
// Generate an access token
const {access_token} = await api.getaccesstoken(apiKey)
// Request to pay in this route you havee to pass unique id every time as uuid for new payment
api.requesttopay(uuid,access_token, currency, amount, externalid, phonenumber, payermessage, payeenote, environment)
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});
// Check payment status
api.check_payment_status(environment, token,uuid)
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});
// Get account balance
api.getbalance(token)
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});
api.create_payment_with_payment_status(webhook_url,amount,currency,externalid,phonenumber,payermessage,payeenote,environment)
.then((response)=>{
console.log(response);
})
.catch((error)=>{
console.log(error);
})