{ "info": { "author": "Judd Garratt", "author_email": "judd.garratt@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "pypay\n=====\n\npypay provides a clean API for confirming Paypal payments via PDT or IPN. It takes the boilerplate out of interacting with these services and normalises the Paypal response into something sensible.\n\nUnder the hood pypay uses the excellent `Requests `_ library for handling http.\n\n\nInstallation\n------------\n\n\n.. sourcecode:: bash\n\n pip install pypay\n\n\nUsage\n-----\n\nTo check a payment via `PDT `_\n\n\n.. sourcecode:: python\n\n import pypay\n\n response = pypay.pdt_confirm('your_transaction_id', 'your_identity_token')\n\n\nTo check a payment via `IPN `_\n\n\n.. sourcecode:: python\n\n import pypay\n\n response = pypay.ipn_confirm('query_params_from_paypal')\n\n\nYou can pass the query params as either a string (e.g. 'quantity=1&name=joe') or a dict. This is particularly useful if you're using Django as you can drop in request.POST and everything will just work.\n\n\nResponse objects\n~~~~~~~~~~~~~~~~\n\nResponse objects always have two properties\n\n\n.. sourcecode:: python\n\n response.confirmed # bool indicating if payment is verified\n\n response.details # dict containing all the Paypal variables that were returned\n\n\nHandling exceptions\n~~~~~~~~~~~~~~~~~~~\n\nIn the event of a problem making the http call to Paypal, pypay will raise a ``pypay.exceptions.RequestError``.\n\nThe values passed to ``pdt_confirm`` and ``ipn_confirm`` are sanity checked and a ``pypay.exceptions.InvalidPaypalData`` will be raised if they are of the wrong type.\n\n\nPython version support\n----------------------\n\npypay runs on Python 2.6, 2.7, 3.3, 3.4, 3.5 and 3.6 using the `Six `_ compatibility library.\n\n\nRunning tests\n-------------\n\nRun the test suite with `Tox `_\n\n\n.. sourcecode:: bash\n\n pip install tox\n\n\n\nTests are written with `pytest `_", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://bitbucket.org/juddgarratt/pypay", "keywords": "", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "pypay", "package_url": "https://pypi.org/project/pypay/", "platform": "", "project_url": "https://pypi.org/project/pypay/", "project_urls": { "Homepage": "http://bitbucket.org/juddgarratt/pypay" }, "release_url": "https://pypi.org/project/pypay/0.2.1/", "requires_dist": null, "requires_python": "", "summary": "Confirm Paypal payments via PDT and IPN", "version": "0.2.1" }, "last_serial": 3227268, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "e8b76d9dc87d9dd8c64fc17e720767ee", "sha256": "7241ac6ec1e4ef5c7eb68a5189b488502cdae66f046591eba4caa770106b096b" }, "downloads": -1, "filename": "pypay-0.1.0.tar.gz", "has_sig": false, "md5_digest": "e8b76d9dc87d9dd8c64fc17e720767ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4172, "upload_time": "2014-05-20T03:01:03", "url": "https://files.pythonhosted.org/packages/d8/5a/b7fcb57cac6941a2906a0286aa37b210a64ac72e16503bab6336bbe1fc36/pypay-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "2e1365c1c97fa0095cf1423b2bd35fd3", "sha256": "516a1036c0c22283a8b1742287018eee7fdc8f212fc59e4e5ac8c72b12a7734a" }, "downloads": -1, "filename": "pypay-0.1.1.tar.gz", "has_sig": false, "md5_digest": "2e1365c1c97fa0095cf1423b2bd35fd3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4353, "upload_time": "2014-05-20T23:01:51", "url": "https://files.pythonhosted.org/packages/eb/c2/1df1290a506d1e6793948202a36630119d06d3f9d7e2cd3c95eb2d7bd9b6/pypay-0.1.1.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "2c4d3ebabcb2fa638b76c6ebbd60fd46", "sha256": "239134702e16e27b1aa47320c843c01f834dc59f11e49d9dd22a861c4967c4f6" }, "downloads": -1, "filename": "pypay-0.2.1.tar.gz", "has_sig": false, "md5_digest": "2c4d3ebabcb2fa638b76c6ebbd60fd46", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4427, "upload_time": "2017-10-05T08:04:48", "url": "https://files.pythonhosted.org/packages/ec/20/c52583d03c4dabb1e53edf24e4016fbe2027cb96207d5cc8aacad5f69bd7/pypay-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2c4d3ebabcb2fa638b76c6ebbd60fd46", "sha256": "239134702e16e27b1aa47320c843c01f834dc59f11e49d9dd22a861c4967c4f6" }, "downloads": -1, "filename": "pypay-0.2.1.tar.gz", "has_sig": false, "md5_digest": "2c4d3ebabcb2fa638b76c6ebbd60fd46", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4427, "upload_time": "2017-10-05T08:04:48", "url": "https://files.pythonhosted.org/packages/ec/20/c52583d03c4dabb1e53edf24e4016fbe2027cb96207d5cc8aacad5f69bd7/pypay-0.2.1.tar.gz" } ] }