Getting Started. — tekmpesa 1.0.0 documentation

# Getting Started.

The package provides a simple,clean and intuitive interface to enable you to quickly and consistently use this library in your python application.

## Installation

The preferred installation method is directly from pypi:

    pip install -U tekmpesa

Additionally, if you want to use the built-in test mechanisms, you need to install some extra requirements:

    pip install -U tekmpesa[tests]

## Usage

The main class you will be working with is the `API` class of the respective submodules.

For example for Mpesa Kenya the class is `mpesa.kenya.API`, and similarly: `mpesa.ghana.API` for Ghana, `mpesa.tanzania.API` for Tanzania, `mpesa.mozambique.API` for Mozambique, `mpesa.drc.API` for the Democratic Republic of Congo.

    import mpesa

    # There is a corresponding module for each supported country.
    # i.e
    mpesa_ke=mpesa.kenya.API(app_key="<APP_KEY>",app_secret="<APP_SECRET>",env="sandbox")
    # for production,i.e going LIVE use env="production".

    mpesa_gh=mpesa.ghana.API(public_key="<PUBLIC_KEY>",api_key="<API_KEY>",env="sandbox")
    # for production,i.e going LIVE use env="production".

    mpesa_tz=mpesa.tanzania.API(public_key="<PUBLIC_KEY>",api_key="<API_KEY>",env="sandbox")
    # for production,i.e going LIVE use env="production".

    mpesa_mz=mpesa.mozambique.API(public_key="<PUBLIC_KEY>",api_key="<API_KEY>",env="sandbox")
    # for production,i.e going LIVE use env="production".

    mpesa_drc=mpesa.drc.API(Username="<Username>",Password="<Password>",env="sandbox")
    # for production,i.e going LIVE use env="production".

## Configuration

## Examples

    # Kenya STK Push.
    stkpush_result=mpesa_ke.lnmo_stkpush(
        business_shortcode="",
        passcode="",
        phonenumber="",
        amount="",
        callback_url="",
        reference_code="",
        description="",
    )
    # Kenya B2C
    ke_b2c_result=mpesa_ke.b2c(
         initiator_name="",
         security_credential="",
         command_id="",
         amount="",
         party_a="",
         party_b="",
         remarks="",
         queue_timeout_url="",
         result_url="",
         occassion="",
    )
    # Kenya B2B
    ke_b2b_result=mpesa_ke.b2b(
         initiator="",
         security_credential="",
         command_id="",
         sender_identifier_type="",
         receiver_identifier_type="",
         amount="",
         party_a="",
         party_b="",
         remarks="",
         account_reference="",
         queue_timeout_url="",
         result_url="",
    )

    # For Ghana, and  Tanzania The API signature is the same for all methods.
    gh_c2b_result=mpesa_gh.c2b(
         Amount="",
         CustomerMSISDN="",
         ServiceProviderCode="",
         ThirdPartyConversationID="",
         TransactionReference="",
         PurchasedItemsDesc="",
    )

    # Ghana/Tanzania b2c
    tz_b2c_result=mpesa_tz.b2c(
         Amount="",
         CustomerMSISDN="",
         ServiceProviderCode="",
         ThirdPartyConversationID="",
         TransactionReference="",
         PaymentItemsDesc="",
    )
    # Ghana/Tanzania b2b
    tz_b2b_result=mpesa_tz.b2b(
         Amount="",
         PrimaryPartyCode="",
         ReceiverPartyCode="",
         ThirdPartyConversationID="",
         TransactionReference="",
         PurchasedItemsDesc="",
    )

    # Mozambique c2b.
    mz_c2b_result=mpesa_mz.c2b(
         Amount="",
         CustomerMSISDN="",
         ServiceProviderCode="",
         ThirdPartyReference="",
         TransactionReference="",
    )
    # Mozambique b2c.
    mz_b2c_result=mpesa_mz.b2c(
         Amount="",
         CustomerMSISDN="",
         ServiceProviderCode="",
         ThirdPartyReference="",
         TransactionReference="",
    )
    # Mozambique b2b.
    mz_b2b_result=mpesa_mz.b2b(
         Amount="",
         PrimaryPartyCode="",
         ReceiverPartyCode="",
         ThirdPartyReference="",
         TransactionReference="",
    )

    # DRC c2b
    drc_c2b_result=mpesa_drc.c2b(
         Amount="",
         CallBackChannel="",
         CallBackDestination="",
         CommandId="",
         Currency="",
         CustomerMSISDN="",
         Date="",
         Initials="",
         Language="",
         ServiceProviderCode="",
         Surname="",
         ThirdPartyReference="",

    )
    # DRC b2c
    drc_b2c_result=mpesa_drc.b2c(
         Amount="",
         CallBackChannel="",
         CallBackDestination="",
         CommandID="",
         Currency="",
         CustomerMSISDN,
         Language="",
         ServiceProviderName="",
         Shortcode="",
         ThirdPartyReference="",
         TransactionDateTime="",
    )