Skip to main content

Mpesa B2C, C2B, STKPush Python(Flask & Django) library based on the new Api's https://developer.safaricom.co.ke

Project description

mpesa-daraja

This is an unofficial wrapper providing convenient access to the Safaricom MPESA Daraja API for applications written in Python.

This version fixes the base_64 password generation crash on python>=3.6

It has been tested with Python 3.6 and python 3.8

Installation

To install the library from Pypi:

 pip install mpesa-py

To get the latest version of the library.

pip install git+git://github.com/cephaske254/mpesa_daraja

You can also clone or download the library package and install it using setuptools:

python setup.py install

Tests

The library comes with simple integration tests with Safaricom's sandbox APIs. Due to factors beyond my control, the tests are structured to pass even when a specific Daraja API is under maintenance. To run the tests, simply execute pytest from the library's root directory:

pytest

Usage

from mpesa.api.<API> import <API Class>

API

The following APIs are supported:

  • transaction_status
  • mpesa_express
  • reversal
  • balance
  • auth
  • b2c
  • c2b
  • b2b

API Class

The following are the corresponding API classes:

  • TransactionStatus
  • MpesaExpress
  • Reversal
  • Balance
  • MpesaBase
  • B2B
  • C2B
  • B2C

Documentation

For more information about the modules and APIs, please see the documentation.


Forked from Arlus/mpesa-py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mpesa_daraja-0.0.23.linux-x86_64.tar.gz (16.9 kB view hashes)

Uploaded Source

Built Distribution

mpesa_daraja-0.0.23-py3-none-any.whl (19.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page