Install the package with pip like this:
pip install django-mpesa
Add "mpesa" to your INSTALLED_APPS setting like this:
INSTALLED_APPS = [ ... 'mpesa', ]
Add Mpesa Config variables to your project's settings.py file
- MPESA_CONFIG = {
... 'CONSUMER_KEY': '<Your consumer key from daraja>', 'CONSUMER_SECRET': '<Your consumer secret from daraja>', 'HOST_NAME': '<Your hostname e.g https://myhostname>', 'PASS_KEY': '<Your pass key from daraja>', 'SAFARICOM_API': 'https://sandbox.safaricom.co.ke', 'SHORT_CODE': '174379'
}
Check below for full setting variables description
Include the polls URLconf in your project urls.py like this:
from django.urls import path, include from mpesa.urls import mpesa_urls path('mpesa/', include(mpesa_urls)),
Run python manage.py migrate to create the mpesa models.
Start the development server and visit http://127.0.0.1:8000/admin/
Visit http://127.0.0.1:8000/mpesa/ to checkout the library features.
API ENDPONTS
This module exposes some API endpoints that enable you work with MPESA API
- mpesa/submit/
- This endpoint allows you to submit a post request to initiate an STK push
- mpesa/confirm/
- This endpoint is used as the callback endpoint on which MPESA will return a transaction response/status
- mpesa/check-transaction/
- This endpoint allows you to manually check for the status of an mpesa transaction