Metadata-Version: 2.1
Name: mc2p-python
Version: 0.1.4
Summary: MyChoice2Pay Python Bindings
Home-page: https://github.com/mc2p/mc2p-python
Author: MyChoice2Pay
Author-email: support@mychoice2pay.com
License: BSD
Download-URL: https://github.com/mc2p/mc2p-python/archive/v0.1.4.tar.gz
Description: # MyChoice2Pay Python
        
        
        # Overview
        
        MyChoice2Pay Python provides integration access to the MyChoice2Pay API.
        
        [![Build Status](https://travis-ci.org/mc2p/mc2p-python.svg?branch=master)](https://travis-ci.org/mc2p/mc2p-python)
        [![Coverage Status](https://coveralls.io/repos/github/mc2p/mc2p-python/badge.svg?branch=master)](https://coveralls.io/github/mc2p/mc2p-python?branch=master)
        [![Code Health](https://landscape.io/github/mc2p/mc2p-python/master/landscape.svg?style=flat)](https://landscape.io/github/mc2p/mc2p-python/master)
        
        # 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    
        
Keywords: mychoice2pay,payments
Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/markdown
Provides-Extra: test
