mobilemoney.py
A modern, easy to use, feature-rich, and async ready API wrapper for MobileMoney written in Python. Use method and function simplified for the MOMO OPEN API
Key Features
- Modern Pythonic API using
asyncandawait. - Optimised in both speed and memory.
Installing
Python 3.8 or higher is required
To install the library, you can just run the following command:
.. code:: sh
# Linux/macOS
python3 -m pip install -U mobilemoney.py
# Windows
py -3 -m pip install -U mobilemoney.py
To install from github repository, do the following:
.. code:: sh
$ git clone https://github.com/rewriteapi/mobilemoney.py
$ cd mobilemoney.py
$ python3 -m pip install -U .
Quick Example
.. code:: py
import mobilemoney
import asyncio
#NOTICE : the library is working in both side (Production and Sandbox),
#for Production environement don't use the is_sandbox() method and
#make sure to replace credential correctly
async def main():
subsciption_key = 'COLLECTION_OR_DISBURSEMENT_CREDENTIAL_MAKE_SURE_TO_REPLACE_IT_CORRECTLY'
user = mobilemoney.Client()
#switchh to sandbox env
user.is_sandbox()
#Creating user and getting Key in sandbox env using Collection credential
uuid = user.get_reference_id()
print(uuid)
api_user = await user.create_api_user(uuid, subsciption_key)
print('-------- creating api user----------')
print(api_user)
resp, api_user_details = await user.get_api_user(uuid, subsciption_key)
print('-----------getting api user------------')
print(api_user_details)
resp, api_key = await user.create_api_key(uuid, subsciption_key)
print('---------api key-----------')
print(type(api_key))
print(api_key)
basic_auth = user.basic_token(uuid, api_key["apiKey"])
print('------------Basic auth---------')
print(basic_auth)
#Initialising Collection product
collect = user.collection(subsciption_key)
#creating access token
resp, access_token = await collect.create_access_token(basic_auth)
print('---------creating access token-----------')
print(access_token)
#convert it to bearer token
bearer_token = user.bearer_token(access_token['access_token'])
#request to pay
body = {
"amount": "5",
"currency": "EUR",
"externalId": "45464546454",
"payer": {
"partyIdType": "MSISDN",
"partyId": "87937389"
},
"payerMessage": "BUY THING",
"payeeNote": "THANKS"
}
resp, req_to_pay = await collect.request_to_pay(bearer_token, user.get_reference_id(), api_user_details['targetEnvironment'], body)
print('-----------------Request to pay-----------------')
print(resp)
print(req_to_pay)
if resp:
print('Successfull')
else:
print('Not worked')
#withdraw
resp, with_req = await collect.withdraw(bearer_token, user.get_reference_id(), api_user_details['targetEnvironment'], body)
print('--------------req to withdraw------------------------')
print(resp)
print(with_req)
asyncio.run(main())
Links
Documentation <https://momopy.rewriteapi.cm>_Official Discord Server <https://discord.gg/8hS3tvkfrF>_Website <https://rewriteapi.cm>_
Metadata
Release files for mobilemoney.py 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mobilemoney.py-0.1.2.tar.gz | 13.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mobilemoney.py-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.3 kB
Release files / mobilemoney.py-0.1.2.tar.gz
| Download URL | mobilemoney.py-0.1.2.tar.gz |
|---|---|
| Size | 13.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3b74fee9ad1a78c6b34a9496cccdec08f91d7407c37cb946b7276e0e639a0c59
|
|
BLAKE2b-256 checksum How to use checksums |
8cf6988182b53c0122a65c94e16350cc5ef38c58ffa281943c59805a0e892c2e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.6
|
Release files / mobilemoney.py-0.1.2-py3-none-any.whl
| Download URL | mobilemoney.py-0.1.2-py3-none-any.whl |
|---|---|
| Size | 19.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4f738d7e7d66a4f53aa68c94cf0eef9cef924dcf58e7bbbac2e3c1a78e02bffb
|
|
BLAKE2b-256 checksum How to use checksums |
bf240bd61d1cded115eeb83e13592116b414b93e20fe4e4ae44665933145a828
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.6
|