{ "info": { "author": "Michal Werner", "author_email": "michal@hurtowniapixeli.pl", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": ".. image:: https://codeclimate.com/github/michalwerner/django-payu-payments/badges/gpa.svg\n :target: https://codeclimate.com/github/michalwerner/django-payu-payments\n\n.. image:: https://img.shields.io/pypi/v/django-payu-payments.svg\n :target: https://pypi.python.org/pypi/django-payu-payments\n\n.. image:: https://img.shields.io/pypi/dm/django-payu-payments.svg\n :target: https://pypi.python.org/pypi/django-payu-payments\n\n.. image:: https://img.shields.io/pypi/l/django-payu-payments.svg\n :target: https://pypi.python.org/pypi/django-payu-payments\n\nInstallation\n============\n\n1. Install via pip: ::\n\n pip install django-payu-payments\n\n2. Add ``payu`` to INSTALLED_APPS: ::\n\n INSTALLED_APPS = [\n ...\n 'payu',\n ...\n ]\n\n3. Add URLs to URLConf: ::\n\n url(r'^payments/', include('payu.urls', namespace='payu')),\n\n\n4. Run migrations: ::\n\n python manage.py migrate\n\nConfiguration\n=============\n\nConfiguration is done via Django's ``settins.py`` file.\n\n- ``PAYU_POS_ID``\n\n Your POS ID. If not provided the test payment value will be used.\n\n- ``PAYU_MD5_KEY``\n\n Your MD5 key. If not provided the test payment value will be used.\n\n- ``PAYU_SECOND_MD5_KEY``\n\n Your second MD5 key. If not provided the test payment value will be used.\n\n- ``PAYU_CONTINUE_PATH``\n\n Specifies path on your website, where user should be redirected after payment (successful, or not).\n May be absolute path, like ``/some-page/`` or ``reverse('some:thing')``.\n This view should handle GET parameters ``error=501`` in case of failed payment and\n ``no_payment=1`` in case of payment with total equals 0, which is registered, but actually sent to PayU.\n\n- ``PAYU_VALIDITY_TIME``\n\n Payment validity time (in seconds), after which it's canceled, if user did not take action.\n If not provided ``600`` will be used.\n\nCreate payment\n==============\n\nTo create payment object you have to call ``Payment.create`` method: ::\n\n from payu.models import Payment\n\n\n description = 'Some stuff'\n products = [\n {\n 'name': 'Some product',\n 'unitPrice': 14.99,\n 'quantity': 1\n },\n {\n 'name': 'Some other product',\n 'unitPrice': 3.19,\n 'quantity': 4\n }\n ]\n buyer = {\n 'email': 'john.doe@domain.com',\n 'firstName': 'John',\n 'lastName': 'Doe'\n }\n notes = 'This client is important for us, we should prioritize him.'\n\n payment = Payment.create(request, description, products, buyer, validity_time=300, notes)\n\n``request`` is just Django HTTP request object, we need it to get buyer IP, and absolute URLs.\n\n``validity_time`` is optional and overrides ``PAYU_VALIDITY_TIME`` setting.\n\n``notes`` is optional, and used for storing internal information about payment.\n\n``Payment.create`` will return two-key dictionary, containing ``Payment`` object and URL where buyer should be redirected, or ``False`` if not successful. ::\n\n {\n 'object': ,\n 'redirect_url': 'https://...'\n }\n\nFetch payment's data\n====================\n\nTo get data associated with payment you just need to retrieve ``Payment`` object: ::\n\n Payment.objects.get(...)\n\nThere are also few helpful methods, which you can call on ``Payment`` object:\n\n- ``get_total_display()``\n\n Returns pretty formatted ``total`` value.\n\n- ``get_products_table()``\n\n Returns pretty formatted table of products associated with payment.\n\n- ``is_successful()``\n\n For ``status`` equal ``COMPLETED`` returns ``True``, otherwise ``False``.\n\n- ``is_not_successful()``\n\n For ``status`` equal ``CANCELED`` or ``REJECTED`` returns ``True``, otherwise ``False``.\n\n\nChangelog\n=========\n\n0.1.3\n-----\n- PEP8 fixes\n\n0.1.2\n-----\n- changelog added\n- ``get_total_display()``, ``get_products_table()``, ``is_successful()`` and ``is_not_successful()`` methods added\n- JSONField is not Postgres-only anymore\n- ``Payment.create()`` now returns two-key dictionary instead of just redirect URL\n- ``Payment`` objects are now ordered from newest to oldest, by default\n- compiled translation is now included in package\n- settings moved to ``settings.py``\n- settings is not dictionary anymore\n- validity time added\n\nJSONField and ordering related changes requires you to take some action when upgrading.\n\n1) run migrations: ``python manage.py migrate payu``.\n\n2) run following code, using Django shell (``python manage.py shell``): ::\n\n import json\n from payu.models import Payment\n\n\n for p in Payment.objects.all():\n if isinstance(p.products, str):\n p.products = json.loads(p.products)\n p.save()\n\n0.1.1\n-----\n- sum added to products table\n\n0.1.0\n-----\n- initial version\n", "description_content_type": null, "docs_url": null, "download_url": null, "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/michalwerner/django-payu-payments", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "django-payu-payments", "package_url": "https://pypi.org/project/django-payu-payments/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-payu-payments/", "project_urls": { "Homepage": "https://github.com/michalwerner/django-payu-payments" }, "release_url": "https://pypi.org/project/django-payu-payments/0.1.3/", "requires_dist": null, "requires_python": null, "summary": "PayU integration for Django.", "version": "0.1.3" }, "last_serial": 2355179, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "087a38b138002a93b65226029443f912", "sha256": "333c309901fb7c629a0fe727b2fb258dbab4f95c8e695da10ca2f06a62295679" }, "downloads": -1, "filename": "django_payu_payments-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "087a38b138002a93b65226029443f912", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8634, "upload_time": "2016-02-05T13:41:48", "url": "https://files.pythonhosted.org/packages/a9/e0/4edea524f0ef39f7d0dde099937b076c7b06e61751dc2eece0f2db3a1090/django_payu_payments-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "97a33f4bacff166ff68190d6c8484420", "sha256": "2fcd098da5ec317793b641b6af2b7a50af53b63470177f0d7d1b54def9525c59" }, "downloads": -1, "filename": "django-payu-payments-0.1.0.tar.gz", "has_sig": false, "md5_digest": "97a33f4bacff166ff68190d6c8484420", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7280, "upload_time": "2016-02-05T13:42:11", "url": "https://files.pythonhosted.org/packages/7d/7a/ccdea1bef131998aaa542db511e1b6f303c1c8d33e75e9bb85725202d392/django-payu-payments-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "e30cf80c9570320ca69820e48bf90d80", "sha256": "cd75a8efaacce6a55b3cfac3ab564af413f35adcba9415499fea9e3d1a00b055" }, "downloads": -1, "filename": "django_payu_payments-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e30cf80c9570320ca69820e48bf90d80", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19316, "upload_time": "2016-02-16T22:04:51", "url": "https://files.pythonhosted.org/packages/e1/78/1df355384259966f88ddb1c911aef7934f67507666f78799698bfc541e17/django_payu_payments-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "060e1b58ee66949643b889380a1324b9", "sha256": "2ba54f2f2cb3f418f3a9c6c754e1d987424ee90465fc1106eff4154317fbd011" }, "downloads": -1, "filename": "django-payu-payments-0.1.1.tar.gz", "has_sig": false, "md5_digest": "060e1b58ee66949643b889380a1324b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8199, "upload_time": "2016-02-16T22:05:13", "url": "https://files.pythonhosted.org/packages/74/11/bb89fb3a061236c92b8e82d30cfde0b04680f450ed4906da18c83a1ba715/django-payu-payments-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "fb30b22b203f00450f6654f2a26b224e", "sha256": "d94ce1ec86b0aa5a50ccfabd4f3386916f866429a473c4be755b2b3ff4aab4e0" }, "downloads": -1, "filename": "django_payu_payments-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "fb30b22b203f00450f6654f2a26b224e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 24323, "upload_time": "2016-04-14T21:16:11", "url": "https://files.pythonhosted.org/packages/8b/77/744e37f1d0fb41e1c1f27ce1f654f1ec01cf6cec4f3881cdc47665ce8544/django_payu_payments-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d120f9ec7d38c7be509b63d345bd3819", "sha256": "d0210c4ca9d96b7e2102bc6bb350f501fbeb0ede616a78ea0920ce973b3498ae" }, "downloads": -1, "filename": "django-payu-payments-0.1.2.tar.gz", "has_sig": false, "md5_digest": "d120f9ec7d38c7be509b63d345bd3819", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9275, "upload_time": "2016-04-14T21:15:55", "url": "https://files.pythonhosted.org/packages/f3/b2/0d8d6fcd408664f86cfd84d54064912a9192ac788cda23ef11187a89ab14/django-payu-payments-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "1514d662d1208b86a4db64e6a8406bbd", "sha256": "e51b1480f405733c0612070134d48ea622fe7b1085a55120c3eabf970c52aa35" }, "downloads": -1, "filename": "django_payu_payments-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "1514d662d1208b86a4db64e6a8406bbd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13366, "upload_time": "2016-09-21T14:59:42", "url": "https://files.pythonhosted.org/packages/13/8e/5bd0cdc7fad0e4c5c9321a776b66a262baa4495f166b4592e1a995201900/django_payu_payments-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0591ee60998ca6fb3070abc1beb35a9c", "sha256": "fb99f27cbc89e72c1b1a4ab2a979b40e1323987d6ca3b9677360c2794f4db227" }, "downloads": -1, "filename": "django-payu-payments-0.1.3.tar.gz", "has_sig": false, "md5_digest": "0591ee60998ca6fb3070abc1beb35a9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9471, "upload_time": "2016-09-21T14:59:28", "url": "https://files.pythonhosted.org/packages/5d/97/9dcdd4a9474e5de3afca514e4c7d0f8e47cc63301eabd00fee16e62eda39/django-payu-payments-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1514d662d1208b86a4db64e6a8406bbd", "sha256": "e51b1480f405733c0612070134d48ea622fe7b1085a55120c3eabf970c52aa35" }, "downloads": -1, "filename": "django_payu_payments-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "1514d662d1208b86a4db64e6a8406bbd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13366, "upload_time": "2016-09-21T14:59:42", "url": "https://files.pythonhosted.org/packages/13/8e/5bd0cdc7fad0e4c5c9321a776b66a262baa4495f166b4592e1a995201900/django_payu_payments-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0591ee60998ca6fb3070abc1beb35a9c", "sha256": "fb99f27cbc89e72c1b1a4ab2a979b40e1323987d6ca3b9677360c2794f4db227" }, "downloads": -1, "filename": "django-payu-payments-0.1.3.tar.gz", "has_sig": false, "md5_digest": "0591ee60998ca6fb3070abc1beb35a9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9471, "upload_time": "2016-09-21T14:59:28", "url": "https://files.pythonhosted.org/packages/5d/97/9dcdd4a9474e5de3afca514e4c7d0f8e47cc63301eabd00fee16e62eda39/django-payu-payments-0.1.3.tar.gz" } ] }