@allan70/daraja-package
Version:
A package to middle-man DarajaAPI 2.0 requests to perform M-Pesa transactions
52 lines (35 loc) • 1.75 kB
Markdown
# daraja-package
You can install the package by entering the following commands to the shell
```
npm i /daraja-package
```
# Package Usage
The package can be used by using the ``require()`` function
```JS
const daraja = require(`/daraja-package`);
```
## M-Pesa Paybill
When making a paybill transaction, you will need to create a JSON body that will be executed by the ``daraja.payBill()`` function.
```JS
//Paybill body
const payBillBody = {
"phoneNumber": req.body.phone,
"amountFromUser": req.body.amount,
"businessNumber": req.body.payBillNumber,
"mpesaPassword": req.body.mpesaPassword,
"secret": req.body.secret,
"consumer": req.body.consumer,
"callback_URL": req.body.callbackURL,
"account_reference": req.body.account_reference,
"transaction_desc": req.body.transaction_desc
};
daraja.payBill(payBillBody);
```
The function will then execute the JSON to return a receipt object.
# Receipts
On making a payment to M-Pesa you will need to receive the transaction information in receipt form. The receipt form will have details such as: the mpesa message number, the amount , status of the transaction , the time the transaction took place and the m-pesa account that made the transaction.
```JS
daraja.receipt('/callback_url', 3000)
```
You will set the endpoint of your callback_url and the port number of the callback url. Ultimately, his is a standalone server function that should start a server that will receive the daraja transactions in the end and produce a JSON object of the transaction as the result.
When running tests you can use an NGROK tuneling tool to provide a url that will be linked to the port number entered ito the ``daraja.receipt()``function.