UNPKG

@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
# daraja-package You can install the package by entering the following commands to the shell ``` npm i @allan70/daraja-package ``` # Package Usage The package can be used by using the ``require()`` function ```JS const daraja = require(`@allan70/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.