daraja-sdk
v1.0.3
Published
sdk for the developers integrating with safaricom's daraja api
Readme
M-Pesa API SDK
This SDK provides a convenient way to integrate with the Safaricom M-Pesa API (Daraja) for various mobile money transactions and services within your application.
Features ✨
Prerequisites ✅
Before using this SDK, ensure you have:
Installation 💻
npm install daraja-sdkGetting Started 🚀
Import the SDK:
const Mpesa = require('daraja-sdk');Initialize the SDK with your Credentials:
const mpesa = new Mpesa({
consumerKey: 'YOUR_CONSUMER_KEY',
consumerSecret: 'YOUR_CONSUMER_SECRET',
passkey: 'YOUR_STK_PASSKEY',
environment: 'sandbox' // or 'live'
});Generate an Access Token: The SDK typically handles access token generation and refreshing internally. If not, you might call a method like:
Usage Examples 📋 Below are common use cases. Replace placeholder values with your actual data.
STK Push (Lipa Na M-Pesa Online) Initiate a payment request to the customer's M-Pesa enabled phone.
async ()=>{
mpesa.stkPush({
BusinessShortCode: '174379', // Your Paybill Shortcode(Lipa na M-Pesa Online Paybill)
Password: 'bfB279f9242d...', // Passkey
Timestamp: 'YYYMMddHHmmss',
TransactionType: 'CustomerPayBillOnline' or 'CustomerBuyGoodsOnline',
Amount:10,
PartyA:2547XXXXXXXX,
PartyB:174379,
PhoneNumber:2547XXXXXXXX,
CallBackURL:'[https://your-domain.com/mpesa/callback]',
AccountReference:'Order123',// e.g Invoice number
TransactionDesc:'payment for Goods'
})
}catch(error){
console.error(error);
}Documentation 📚
For comprehensive details on all API endpoints, request/response formats, please refer to:
Safaricom Daraja Portal Documentation
Contributing 🤝
Contributions are welcome.
Support ❓
If you encounter any issues, have questions, or need assistance, please:
