MyChoice2Pay Python Bindings
Project description
MyChoice2Pay Python
Overview
MyChoice2Pay Python provides integration access to the MyChoice2Pay API.
Installation
You can install using pip
:
pip install --upgrade mc2p-python
or easy_install
easy_install --upgrade mc2p-python
or to install from source, run:
python setup.py install
Quick Start Example
from mc2p import MC2P
mc2p = MC2PClient('KEY', 'SECRET_KEY')
# Create transaction
transaction = mc2p.Transaction({
"currency": "EUR",
"products": [{
"amount": 1,
"product_id": "PRODUCT-ID"
}]
})
# or with product details
transaction = mc2p.Transaction({
"currency": "EUR",
"products": [{
"amount": 1,
"product": {
"name": "Product",
"price": 5
}
}]
})
transaction.save()
transaction.pay_url # Send user to this url to pay
transaction.iframe_url # Use this url to show an iframe in your site
# Get plans
plans_paginator = mc2p.plan.list()
plans_paginator.count
plans_paginator.results # Application's plans
plans_paginator.get_next_list()
# Get product, change and save
product = mc2p.Product.get("PRODUCT-ID")
product.price = 10
product.save()
# Create and delete tax
tax = mc2p.Tax({
"name": "Tax",
"percent": 5
})
tax.save()
tax.delete()
# Check if transaction was paid
transaction = mc2p.Transaction.get("TRANSACTION-ID")
transaction.status == 'D' # Paid
# Create subscription
subscription = mc2p.Subscription({
"currency": "EUR",
"plan_id": "PLAN-ID",
"note": "Note example"
})
# or with plan details
subscription = mc2p.Subscription({
"currency": "EUR",
"plan": {
"name": "Plan",
"price": 5,
"duration": 1,
"unit": "M",
"recurring": True
},
"note": "Note example"
})
subscription.save()
subscription.pay_url # Send user to this url to pay
subscription.iframe_url # Use this url to show an iframe in your site
# Receive a notification
notification_data = mc2p.NotificationData(JSON_DICT_RECEIVED_FROM_MYCHOICE2PAY)
notification_data.status == 'D' # Paid
notification_data.transaction # Transaction Paid
notification_data.sale # Sale generated
Exceptions
from mc2p.errors import InvalidRequestError
# Incorrect data
shipping = mc2p.Shipping({
"name": "Normal shipping",
"price": "text" # Price must be number
})
try:
shipping.save()
except InvalidRequestError as e:
e._message # Status code of error
e.json_body # Info from server
e.resource # Resource used to make the server request
e.resource_id # Resource id requested
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
mc2p-python-0.1.6.tar.gz
(10.1 kB
view details)
File details
Details for the file mc2p-python-0.1.6.tar.gz
.
File metadata
- Download URL: mc2p-python-0.1.6.tar.gz
- Upload date:
- Size: 10.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 703eb2f067b21461f1dbe0e10542366c4c0a2fd15375fadbec160912e184ecb1 |
|
MD5 | 1c31cc6e071be6c33acaf20ccbb94846 |
|
BLAKE2b-256 | 867a64be61dba74744961d9186953822704edd456e07afb745a6791aa25bc0fa |