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.