{ "info": { "author": "Twisto", "author_email": "devs@twisto.cz", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Topic :: Utilities" ], "description": "pycsob\n======\n\n.. image:: https://circleci.com/gh/TwistoPayments/pycsob.svg?style=svg\n :target: https://circleci.com/gh/TwistoPayments/pycsob\n\n.. image:: https://badge.fury.io/py/pycsob.svg\n :target: https://badge.fury.io/py/pycsob\n\nInstall:\n--------\n\n.. code-block:: bash\n\n pip install pycsob\n\nRun tests:\n----------\n\n.. code-block:: bash\n\n python setup.py test\n\nBasic usage:\n------------\n\n.. code-block:: python\n\n from pycsob.client import CsobClient\n c = CsobClient('MERCHANT_ID', 'https://iapi.iplatebnibrana.csob.cz/api/v1.6/',\n '/path/to/your/private.key',\n '/path/to/mips_iplatebnibrana.csob.cz.pub')\n\nInitialize payment. Outputs are requests's responses enriched by some properties\nlike ``payload`` or ``extensions``.\n\n.. code-block:: python\n\n r = c.payment_init(14, 1000000, 'http://twisto.dev/', 'Tesovaci nakup', customer_id='a@a.aa',\n return_method='GET', pay_operation='payment')\n r.payload\n #[Out]# OrderedDict([('payId', 'b627c1e4e60fcBF'),\n #[Out]# ('dttm', '20160615104254'),\n #[Out]# ('resultCode', 0),\n #[Out]# ('resultMessage', 'OK'),\n #[Out]# ('paymentStatus', 1)])\n\nAfter payment init get URL to redirect to for payId obtained from previous step.\n\n.. code-block:: python\n\n c.get_payment_process_url('b627c1e4e60fcBF')\n #[Out]# 'https://iapi.iplatebnibrana.csob.cz/api/v1.6/payment/process/MERCHANT_ID/b627c1e4e60fcBF/20160615104318/bla-bla-bla'\n\nAfter user have payment processed, browser redirects him to URL provided in ``payment_init()``.\nYou can check payment status.\n\n.. code-block:: python\n\n c.payment_status('b627c1e4e60fcBF').payload\n #[Out]# OrderedDict([('payId', 'b627c1e4e60fcBF'),\n #[Out]# ('dttm', '20160615104501'),\n #[Out]# ('resultCode', 0),\n #[Out]# ('resultMessage', 'OK'),\n #[Out]# ('paymentStatus', 7),\n #[Out]# ('authCode', '042760')])\n\nYou can also use one-click payment methods. For this you need\nto call ``c.payment_init(pay_operation='oneclickPayment')``. After this transaction confirmed\nyou can use obtained ``payId`` as template for one-click payment.\n\n.. code-block:: python\n\n r = c.oneclick_init('1e058ff1d0d5aBF', 666, 10000)\n r.payload\n #[Out]# OrderedDict([('payId', 'ff7d3e7c6c4fdBF'),\n #[Out]# ('dttm', '20160615104532'),\n #[Out]# ('resultCode', 0),\n #[Out]# ('resultMessage', 'OK'),\n #[Out]# ('paymentStatus', 1)])\n\n r = c.oneclick_start('ff7d3e7c6c4fdBF')\n r.payload\n #[Out]# OrderedDict([('payId', 'ff7d3e7c6c4fdBF'),\n #[Out]# ('dttm', '20160615104619'),\n #[Out]# ('resultCode', 0),\n #[Out]# ('resultMessage', 'OK'),\n #[Out]# ('paymentStatus', 2)])\n\n r = c.payment_status('ff7d3e7c6c4fdBF')\n r.payload\n #[Out]# OrderedDict([('payId', 'ff7d3e7c6c4fdBF'),\n #[Out]# ('dttm', '20160615104643'),\n #[Out]# ('resultCode', 0),\n #[Out]# ('resultMessage', 'OK'),\n #[Out]# ('paymentStatus', 7),\n #[Out]# ('authCode', '168164')])\n\nOf course you can use standard requests's methods on ``response`` object.\n\n.. code-block:: python\n\n r.json()\n #[Out]# {'authCode': '047256',\n #[Out]# 'dttm': '20160615104717',\n #[Out]# 'payId': '1e058ff1d0d5aBF',\n #[Out]# 'paymentStatus': 7,\n #[Out]# 'resultCode': 0,\n #[Out]# 'resultMessage': 'OK',\n #[Out]# 'signature': 'foh4asfoxy40QRmwChJQwNkfT+PBmI3a7jQ+g2M75RpE2uJNqWCCmrhF8TPhcJ6rcyKSttB/ZZrd0gh9BQDgByMtyPG/rv0Jn3kQeuAryJfOW4nuFj86tr/queHD8ZZ248PwOkT5Zo2uTz+QRCrv/n4he+TWkFoVsm94AoSTK3O1SBDyLiOi3njv/ZWm+z/Z9iK55xBwuSs0v5lzxNJ9vJpjIwWlAB1qEkrWZuGZHrNtAib9NxytO0ruWyG3U4H+B8ioJOUlWrAbCHhmKvmArmYi23fup2486v/9s5SCl0fS7PQUNdiDJpZHxnRkVZZXwZM2sPyacgayvYb+khlBRg=='}\n\n r = c.payment_status('1e058ff1d0d5aBF')\n\n r.request.url\n #[Out]# 'https://iapi.iplatebnibrana.csob.cz/api/v1.6/payment/status/M1E3CB2577/1e058ff1d0d5aBF/20160615111034/HQKDHz7DTHL0lCn6OrAv%2BKQjGEr8KtdF42czAGCngCG0gWbuYTfJfO%2B5rHwAEWCl1XKiClYngLBI7Lu2mCJG8AP2Od7%2BAa5VXWcIjs0mSAsP60irR7M4Xl1NsXPe4bEhXAvAJU4yz3oV2vZ68QRB9vE7mk6OaLQade48yEFmX83FJPDQ4RSBOUqD3JPrKMMZ%2BkNEz0%2FMh94X7Zx3DrtwUVdKEyuX8Zf2MYwqzQh7mNBW6EZKxt7yKwS%2B0108GalXoD1n7ctjbtcyrbFAFKKLDgPNf%2BMlLBt8cwSSQ6J2xigI3P9T32L5YUg25kKr%2B4Dy%2FnwOKDntDszbGXQZdIBnTQ%3D%3D'\n\n r.status_code\n #[Out]# 200\n\nPlease look at the code for other available methods and their usage.\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/TwistoPayments/pycsob", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pycsob", "package_url": "https://pypi.org/project/pycsob/", "platform": "", "project_url": "https://pypi.org/project/pycsob/", "project_urls": { "Homepage": "https://github.com/TwistoPayments/pycsob" }, "release_url": "https://pypi.org/project/pycsob/0.3.1/", "requires_dist": null, "requires_python": "", "summary": "Python client for \u010cSOB Payment Gateway", "version": "0.3.1" }, "last_serial": 3780403, "releases": { "0.1": [], "0.1.0": [ { "comment_text": "", "digests": { "md5": "c0f62846aa2efe8a21f0d6d133132178", "sha256": "eb30db8bc17152d114eaa4354f58fef74e672c6b201bce720e864816fa50ac8c" }, "downloads": -1, "filename": "pycsob-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c0f62846aa2efe8a21f0d6d133132178", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10166, "upload_time": "2016-06-14T13:10:03", "url": "https://files.pythonhosted.org/packages/39/2e/76d4410d61318e1eccd95ddc7ef30b6bb5211e7c85cd1ae6e8864e8f59b3/pycsob-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2e51797dba911b72f190964c8a4f026", "sha256": "e260a13ba9ed61ecea0878708c270b8775cf6e7e139b36f1cea7a5aa14fff040" }, "downloads": -1, "filename": "pycsob-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f2e51797dba911b72f190964c8a4f026", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7573, "upload_time": "2016-06-14T13:07:42", "url": "https://files.pythonhosted.org/packages/cd/a2/5850525445f6844f91922f1cba6afccf138d6a607c9bfae685a4242723e0/pycsob-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "96f4276ad6a91ab4e86b792ca6af5efa", "sha256": "e7285354db1472da3fad5a737a2a3e10fb010019830f3193283969df7f470ff4" }, "downloads": -1, "filename": "pycsob-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "96f4276ad6a91ab4e86b792ca6af5efa", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10170, "upload_time": "2016-06-14T14:07:48", "url": "https://files.pythonhosted.org/packages/f5/8a/d5dc8324c49dd4f602bb9f687b17c1634f082aae97234a14a23a08d419ed/pycsob-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f5dcf7ead27852b1f522d7ad72c66d4e", "sha256": "a91cfb07d38f5677f9a051dd088ff9c6ad828951cc03b8ad037afe5591035bf6" }, "downloads": -1, "filename": "pycsob-0.1.1.tar.gz", "has_sig": false, "md5_digest": "f5dcf7ead27852b1f522d7ad72c66d4e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7567, "upload_time": "2016-06-14T14:07:37", "url": "https://files.pythonhosted.org/packages/65/28/e488ce0f6ec077e10ae9f78dc7bddafe71b8511014c1ce6f6545f813d768/pycsob-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "659e3b244af60d09f470231d57137771", "sha256": "0e3be712ea7fcc48fca60695595c3bde23c98a3448cebc142daed3b001466300" }, "downloads": -1, "filename": "pycsob-0.2.0.tar.gz", "has_sig": false, "md5_digest": "659e3b244af60d09f470231d57137771", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9338, "upload_time": "2016-06-15T09:26:40", "url": "https://files.pythonhosted.org/packages/86/bf/4e12c329bd093c7970a73a971770eaf19fdc727560c9ad8de4ff3f8abdd3/pycsob-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "8427261bab10fb179034358af4700746", "sha256": "60d7f840541f01b27e8fb8862d3a25253948a4fddef2b71b51c9201c2e773db5" }, "downloads": -1, "filename": "pycsob-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8427261bab10fb179034358af4700746", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 13125, "upload_time": "2016-06-21T12:17:13", "url": "https://files.pythonhosted.org/packages/a3/b4/a38dcf747dfc611d89c5a6b8248128e59c6339d5f4308a659a177c21fa24/pycsob-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e8d87f5bf01b04225430f55897924f88", "sha256": "7d0a03cdbe78d5662790a9b386997bf07273f72b7627f8cdf56d61b69ad9475b" }, "downloads": -1, "filename": "pycsob-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e8d87f5bf01b04225430f55897924f88", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9606, "upload_time": "2016-06-21T12:17:08", "url": "https://files.pythonhosted.org/packages/07/91/506464071539178f5781c454b7810f58b8dbcbd835ba88a098ea68b19a7a/pycsob-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "fd62ed11806dfcbfb104cdc8a5f260cc", "sha256": "1c0feddf6d223b87b2e3f4cd6d656ba451edcb43a5be30a5ebeb4f66696865de" }, "downloads": -1, "filename": "pycsob-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fd62ed11806dfcbfb104cdc8a5f260cc", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 13644, "upload_time": "2016-06-22T13:06:27", "url": "https://files.pythonhosted.org/packages/8c/59/d545419e6823ee1a499e48ef358fd5cca958e5e688c6a4039455c7578b57/pycsob-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "995a0bb4df2bf12746f918599e87e32e", "sha256": "964d6d905399147bd11f24c6c3d4e04c86b1471dd2bb9dedcf32fd93705662f3" }, "downloads": -1, "filename": "pycsob-0.2.2.tar.gz", "has_sig": false, "md5_digest": "995a0bb4df2bf12746f918599e87e32e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10149, "upload_time": "2016-06-22T13:06:22", "url": "https://files.pythonhosted.org/packages/bf/3f/75c142017be0b2e72c5e2895f65c134c52a91b60b344d3383ef809529528/pycsob-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "d585e33abc9e82c130bc55a482e8fdc7", "sha256": "7e6517fcbf08e960033a04e49c40d8f1743bff464b9b3bff13199165aa5bd37b" }, "downloads": -1, "filename": "pycsob-0.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d585e33abc9e82c130bc55a482e8fdc7", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 13717, "upload_time": "2016-06-27T09:56:47", "url": "https://files.pythonhosted.org/packages/da/a7/041c0479dc7bdfde5b9aa62b0cb481d0126df4a892ea7697cb7ceee365c2/pycsob-0.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a5c2e9ecc2676925d9b8a05661699ef4", "sha256": "93a3450e23a3d4fc1322b323108a4c2b6d891238aa43a83733d32e54c144d439" }, "downloads": -1, "filename": "pycsob-0.2.3.tar.gz", "has_sig": false, "md5_digest": "a5c2e9ecc2676925d9b8a05661699ef4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10225, "upload_time": "2016-06-27T09:56:42", "url": "https://files.pythonhosted.org/packages/c6/4b/107ba7284dc7e0cc6804eaab9d8571e6a82208b033158422489f7139e7ca/pycsob-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "755827659da1a35002eb443c986790bf", "sha256": "034841b7ad97bec1c8b4cac9e2202ae63d74f759c39636af54736e46b1c2064c" }, "downloads": -1, "filename": "pycsob-0.2.4.tar.gz", "has_sig": false, "md5_digest": "755827659da1a35002eb443c986790bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10139, "upload_time": "2017-03-23T14:19:16", "url": "https://files.pythonhosted.org/packages/c7/f9/9ecdd5c299cf914a5184c712837587ce1517d4a2f6ea92108dbd245fd364/pycsob-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "74c3089917b494f59b44aa9f2a81e615", "sha256": "ccf5c35b5090188e171495d44081b26956d93dfaec78898a6079e6b4a33494c8" }, "downloads": -1, "filename": "pycsob-0.2.5.tar.gz", "has_sig": false, "md5_digest": "74c3089917b494f59b44aa9f2a81e615", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10147, "upload_time": "2017-05-03T12:09:37", "url": "https://files.pythonhosted.org/packages/a3/85/3ed4f52b00211476917609a14c48a7c4779daad2e6796ecffd83d845588b/pycsob-0.2.5.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "702a743d8a1367bf47e0d0bdfa66fb29", "sha256": "15ec55604ad0e0e95f6172d6c3583a917822135e9e715e9326cac9f421ab6341" }, "downloads": -1, "filename": "pycsob-0.3.0.tar.gz", "has_sig": false, "md5_digest": "702a743d8a1367bf47e0d0bdfa66fb29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11399, "upload_time": "2017-11-20T13:54:32", "url": "https://files.pythonhosted.org/packages/d3/4b/f3b00a39f4d4da03ed918d8e7a7cc6fff7b02230fb25c054ee24ba4d40f1/pycsob-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "5a57eb6449097952de311944a64048dc", "sha256": "c1f257617257268789594ffe50bf9d557f6326a9ab389c35ea1cd57131651cf3" }, "downloads": -1, "filename": "pycsob-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5a57eb6449097952de311944a64048dc", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 13589, "upload_time": "2018-04-19T12:14:06", "url": "https://files.pythonhosted.org/packages/39/99/2b20f9da111b70fc5b6b619fc309f65bf0c19b0ce21d38a171ba5df1a5fc/pycsob-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e52998ccc093602150f6d7a8823e36c1", "sha256": "6b7e0e825b71038ed1a15e393065577ea05260303a6fa57638fcbdc2bf25fe88" }, "downloads": -1, "filename": "pycsob-0.3.1.tar.gz", "has_sig": false, "md5_digest": "e52998ccc093602150f6d7a8823e36c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11398, "upload_time": "2018-04-19T12:14:04", "url": "https://files.pythonhosted.org/packages/21/07/401365749e23091a4026cacab94dd385401aa8244bbc9dea3ea4ef997881/pycsob-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5a57eb6449097952de311944a64048dc", "sha256": "c1f257617257268789594ffe50bf9d557f6326a9ab389c35ea1cd57131651cf3" }, "downloads": -1, "filename": "pycsob-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5a57eb6449097952de311944a64048dc", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 13589, "upload_time": "2018-04-19T12:14:06", "url": "https://files.pythonhosted.org/packages/39/99/2b20f9da111b70fc5b6b619fc309f65bf0c19b0ce21d38a171ba5df1a5fc/pycsob-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e52998ccc093602150f6d7a8823e36c1", "sha256": "6b7e0e825b71038ed1a15e393065577ea05260303a6fa57638fcbdc2bf25fe88" }, "downloads": -1, "filename": "pycsob-0.3.1.tar.gz", "has_sig": false, "md5_digest": "e52998ccc093602150f6d7a8823e36c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11398, "upload_time": "2018-04-19T12:14:04", "url": "https://files.pythonhosted.org/packages/21/07/401365749e23091a4026cacab94dd385401aa8244bbc9dea3ea4ef997881/pycsob-0.3.1.tar.gz" } ] }