MyChoice2Pay Django Bindings
Project description
# MyChoice2Pay Django
# Overview
MyChoice2Pay Django provides integration access to the MyChoice2Pay API through django framework.
# Requirements
* [Django][django]
* [MyChoice2Pay Python][mc2p-python]
# Installation
Install using `pip`...
pip install mc2p-django
Add `'django_mc2p'` to your `INSTALLED_APPS` setting.
INSTALLED_APPS = (
...
'django_mc2p',
...
)
Add django_mc2p urls:
urlpatterns = patterns('',
...
url(r'^mc2p/', include('django_mc2p.urls'))
...
)
# Configuration
After execute migrations you must define KEY and SECRET KEY in administration site, section MyChoice2Pay Configuration.
You can obtain KEY and SECRET KEY from [MyChoice2Pay][mychoice2pay-site] site.
# Quick Example
### Basic transaction
# Sending user to pay
from django_mc2p import MC2PClient
mc2p = MC2PClient()
transaction = mc2p.Transaction({
"currency": "EUR",
"order_id": "order id",
"products": [{
"amount": 1,
"product": {
"name": "Product",
"price": 50
}
}],
"notify_url": "https://www.example.com" + reverse('mc2p-notify'),
"return_url": "https://www.example.com/your-return-url/",
"cancel_return": "https://www.example.com/your-cancel-url/"
})
transaction.save()
transaction.pay_url # Send user to this url to pay
# After user pay a notification will be sent to notify_url
from django_mc2p.constants import MC2P_PAYMENT_DONE
from django_mc2p.signals import notification_received
def check_payment(sender, **kwargs):
notification_data = sender
if notification_data.type == MC2P_TYPE_TRANSACTION and notification_data.status == MC2P_PAYMENT_DONE:
transaction = notification_data.transaction
sale = notification_data.sale
order_id = notification_data.order_id
# Use transaction, sale and order_id to check all the data and confirm the payment in your system
notification_received.connect(check_payment)
### Basic subscription
# Sending user to pay a subscription
from django_mc2p import MC2PClient
mc2p = MC2PClient()
subscription = mc2p.Subscription({
"currency": "EUR",
"order_id": "order id",
"plan": {
"name": "Plan",
"price": 5,
"duration": 1,
"unit": "M",
"recurring": true
},
"notify_url": "https://www.example.com" + reverse('mc2p-notify'),
"return_url": "https://www.example.com/your-return-url/",
"cancel_return": "https://www.example.com/your-cancel-url/"
})
subscription.save()
subscription.pay_url # Send user to this url to pay
# After user pay a notification will be sent to notify_url
from django_mc2p.constants import MC2P_PAYMENT_DONE
from django_mc2p.signals import notification_received
def check_payment(sender, **kwargs):
notification_data = sender
if notification_data.type == MC2P_TYPE_SUBSCRIPTION and notification_data.status == MC2P_PAYMENT_DONE:
subscription = notification_data.subscription
sale = notification_data.sale
order_id = notification_data.order_id
# Use subscription, sale and order_id to check all the data and confirm the payment in your system
notification_received.connect(check_payment)
[django]: https://www.djangoproject.com/
[mc2p-python]: https://github.com/mc2p/mc2p-python
[mychoice2pay-site]: https://www.mychoice2pay.com/
# Overview
MyChoice2Pay Django provides integration access to the MyChoice2Pay API through django framework.
# Requirements
* [Django][django]
* [MyChoice2Pay Python][mc2p-python]
# Installation
Install using `pip`...
pip install mc2p-django
Add `'django_mc2p'` to your `INSTALLED_APPS` setting.
INSTALLED_APPS = (
...
'django_mc2p',
...
)
Add django_mc2p urls:
urlpatterns = patterns('',
...
url(r'^mc2p/', include('django_mc2p.urls'))
...
)
# Configuration
After execute migrations you must define KEY and SECRET KEY in administration site, section MyChoice2Pay Configuration.
You can obtain KEY and SECRET KEY from [MyChoice2Pay][mychoice2pay-site] site.
# Quick Example
### Basic transaction
# Sending user to pay
from django_mc2p import MC2PClient
mc2p = MC2PClient()
transaction = mc2p.Transaction({
"currency": "EUR",
"order_id": "order id",
"products": [{
"amount": 1,
"product": {
"name": "Product",
"price": 50
}
}],
"notify_url": "https://www.example.com" + reverse('mc2p-notify'),
"return_url": "https://www.example.com/your-return-url/",
"cancel_return": "https://www.example.com/your-cancel-url/"
})
transaction.save()
transaction.pay_url # Send user to this url to pay
# After user pay a notification will be sent to notify_url
from django_mc2p.constants import MC2P_PAYMENT_DONE
from django_mc2p.signals import notification_received
def check_payment(sender, **kwargs):
notification_data = sender
if notification_data.type == MC2P_TYPE_TRANSACTION and notification_data.status == MC2P_PAYMENT_DONE:
transaction = notification_data.transaction
sale = notification_data.sale
order_id = notification_data.order_id
# Use transaction, sale and order_id to check all the data and confirm the payment in your system
notification_received.connect(check_payment)
### Basic subscription
# Sending user to pay a subscription
from django_mc2p import MC2PClient
mc2p = MC2PClient()
subscription = mc2p.Subscription({
"currency": "EUR",
"order_id": "order id",
"plan": {
"name": "Plan",
"price": 5,
"duration": 1,
"unit": "M",
"recurring": true
},
"notify_url": "https://www.example.com" + reverse('mc2p-notify'),
"return_url": "https://www.example.com/your-return-url/",
"cancel_return": "https://www.example.com/your-cancel-url/"
})
subscription.save()
subscription.pay_url # Send user to this url to pay
# After user pay a notification will be sent to notify_url
from django_mc2p.constants import MC2P_PAYMENT_DONE
from django_mc2p.signals import notification_received
def check_payment(sender, **kwargs):
notification_data = sender
if notification_data.type == MC2P_TYPE_SUBSCRIPTION and notification_data.status == MC2P_PAYMENT_DONE:
subscription = notification_data.subscription
sale = notification_data.sale
order_id = notification_data.order_id
# Use subscription, sale and order_id to check all the data and confirm the payment in your system
notification_received.connect(check_payment)
[django]: https://www.djangoproject.com/
[mc2p-python]: https://github.com/mc2p/mc2p-python
[mychoice2pay-site]: https://www.mychoice2pay.com/
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size mc2p_django-0.1.3-py2.py3-none-any.whl (9.5 kB) | File type Wheel | Python version py2.py3 | Upload date | Hashes View |
Close
Hashes for mc2p_django-0.1.3-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | afa2b3084dc00694e28ad02120998fd554cd99ccc7d4a7c40052899bac492488 |
|
MD5 | 2d4ae43cdd9115a343187d615740405e |
|
BLAKE2-256 | f103cdd95fcc018fa3bebc1bb1fd552df22686a57df3d51eb4952e32653bfa90 |