Skip to main content

Python package to simplify integration to soofapay

Project description

This package is aimed at simplifying the process of integrating soofapay payment solution to your python systems. You can check our website for more

Installation

$ pip install soofa

Usage

1. Checking for a transaction

from soofa import Soofa, Transaction

soofa = Soofa("you_soofa_till_number", "your_client_secret_here")
exists = soofa.find("tranaction_id_here")
if exists:
    transaction: Transaction = soofa.get_transaction()
    print(transaction.tid)
    print(transaction.sender)
    print(transaction.gross_amount)
else:
    print("No such transaction")

The expected response for transaction check is Transaction object with various keys and methods

There is an additional method for getting the entire JSON object.

transaction.json()

{
    "status": "SUCCESSFUL",
    "sender_currency": "KES",
    "receiver_currency": "KES",
    "tid": "QTMB3",
    "reference": "T5004",
    "receipt_no": "NFQ6U45W28",
    "timestamp": 1561499777.715254,
    "gross_amount": 5,
    "net_amount": 4.8605,
    "transacted_via": "mpesa",
    "is_money_in": true,
    "sender": "+254701234567",
    "receiver": "Dev Market"
}

The table below describes all the attributes of the transaction object.

Key

Description

status

The state of the transaction, either SUCCESSFUL or PENDING

sender_currency

The currency of the person who performed the transaction

receiver_currency

The currency of the business, if the transaction was Money in for the business

reference

The transaction reference passed when making a transaction

timestamp

Unix timestamp for the transaction

gross_amount

The amount of the transaction

net_amount

The amount received after deducting soofa

transacted_via

The service provider which facilitated the transaction eg. mpesa, visa, airtelmoney, mastercard, tkash …

is_money_in

A boolean indicating if the money was to the business or out of the business

sender

The performer of transaction

receiver

The receiver of the transaction which is the business if the transaction was inbound

2. Checking your soofa business account balance

from soofa import Soofa

soofa = Soofa("you_soofa_till_number", "your_client_secret_here")
balance = soofa.get_balance()
print(balance)

The expected response for checking balance is a JSON with three fields:

{
    “balance”: 1587.49,
    “currency”: “KES”,
    timestamp”: 1561820831.623298
}

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

soofa-0.1.11.tar.gz (3.7 kB view details)

Uploaded Source

File details

Details for the file soofa-0.1.11.tar.gz.

File metadata

  • Download URL: soofa-0.1.11.tar.gz
  • Upload date:
  • Size: 3.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.3

File hashes

Hashes for soofa-0.1.11.tar.gz
Algorithm Hash digest
SHA256 dbf27f673784148d8d08cb7ef6ef54f0dcd080b52c96841a0a2c31d8d99dc3a3
MD5 fb46f7d577862da3a29f08edf71911b9
BLAKE2b-256 a091f4a700e6e155f397fab0ea036203c0cfd7206829aa4bc26da8010bbb6ab3

See more details on using hashes here.

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