mandel/testing/: ocyan-plugin-oscar-invoices-0.3.1rc1 metadata and description

Homepage Simple index

MandelBlogStack compatibility distribution for Django Oscar invoices

author MandelBlogStack
author_email [email protected]
classifiers
  • Development Status :: 4 - Beta
  • Environment :: Web Environment
  • Framework :: Django
  • Framework :: Django :: 4.0
  • Intended Audience :: Developers
  • License :: OSI Approved :: BSD License
  • Operating System :: Unix
  • Programming Language :: Python :: 3
  • Programming Language :: Python :: 3.12
dynamic
  • author
  • author-email
  • classifier
  • description
  • home-page
  • license
  • provides-extra
  • requires-dist
  • requires-python
  • summary
license BSD
provides_extras
  • test
  • dev
requires_dist
  • Django<5.3,>=5.2
  • django-oscar<4.2,>=4.1
  • django-phonenumber-field<9,>=8.5
  • phonenumbers
  • Pillow
  • coverage>=5.4; extra == "test"
  • django-webtest<1.10,>=1.9; extra == "test"
  • pytest-django<5.0; extra == "test"
  • pytest-xdist<4.0.0,>=3.6.1; extra == "test"
  • sorl-thumbnail<13.0.0,>=12.10.0; extra == "test"
  • psycopg2-binary>=2.9.9; extra == "test"
  • vdt.versionplugin.wheel; extra == "test"
  • flake8>=4.0.1; extra == "dev"
  • isort>=5.10.1; extra == "dev"
requires_python >=3.12
File Tox results History
ocyan_plugin_oscar_invoices-0.3.1rc1-py3-none-any.whl
Size
19 KB
Type
Python Wheel
Python
3
ocyan_plugin_oscar_invoices-0.3.1rc1.tar.gz
Size
15 KB
Type
Source
=====================
ocyan.plugin.oscar_invoices
===========================

This is the first-party MandelBlogStack compatibility distribution for the
``oscar_invoices`` Django application. It preserves the upstream public package and
app identity while targeting the supported MandelBlogStack runtime: Python 3.12,
Django 5.2 and Django Oscar 4.1.

Do not install ``django-oscar-invoices`` alongside this distribution; both own the
same Python import package. See ``UPSTREAM.md`` for provenance and attribution.

Quickstart
==========

Installation
------------

.. code-block:: console

$ pip install ocyan.plugin.oscar_invoices


Setup
-----

1. Add ``oscar_invoices`` to the ``INSTALLED_APPS`` variable of your
project's ``settings.py``.

2. Sync the database using ``python manage.py migrate``.

3. Create instances of ``LegalEntity`` and ``LegalEntityAddress``.

4. Integrate ``InvoiceCreator`` in your checkout process.


By default, we generate only HTML invoice document and allow user to decide how to
generate PDF documents. You can integrate `python-pdfkit`_, `WeasyPrint`_, `xhtml2pdf`_,
`reportlab`_ or another library of your choice.

.. _`python-pdfkit`: https://github.com/JazzCore/python-pdfkit
.. _`WeasyPrint`: https://github.com/Kozea/WeasyPrint
.. _`xhtml2pdf`: https://github.com/xhtml2pdf/xhtml2pdf
.. _`reportlab`: https://www.reportlab.com/

Since documents contains sensitive data, we store them out of the media folder and
do not provide public access via URL. For this purpose, we use custom storage class
``oscar_invoices.storages.DocumentsStorage``, invoice documents placed into the
nested folder ``settings.OSCAR_INVOICES_UPLOAD_FOLDER`` and available for the admin users via
dashboard order list.


You can find more information in documentation_.

.. _documentation: https://django-oscar-invoices.readthedocs.io


Sandbox
-------

Sandbox environment set up to automatically create invoices on checkout.
But for this, instances of ``LegalEntity`` and ``LegalEntityAddress`` must be created
(from ``admin`` site) before order placement.


Render warnings:
<string>:1: (ERROR/3) Title overline & underline mismatch.

=====================
ocyan.plugin.oscar_invoices
===========================