wuttapos/docs/quickstart.rst

72 lines
1.6 KiB
ReStructuredText
Raw Normal View History

=============
Quick Start
=============
.. highlight:: sh
WuttaPOS is a `Python`_ app based on `Rattail`_.
.. _Python: https://www.python.org/
.. _Rattail: https://rattailproject.org/
As such it requires a Rattail DB to already be established, containing
data for users (cashiers), customers, products etc. Getting all that
setup is outside the scope of this guide; for more info see the
`Rattail Manual`_.
.. _Rattail Manual: https://rattailproject.org/docs/rattail-manual/
Here we are focused only on getting the WuttaPOS app setup.
Installation
------------
Make a virtual environment::
python -m venv /srv/envs/wuttapos
Install the WuttaPOS package into it::
cd /srv/envs/wuttapos
bin/pip install WuttaPOS
Configuration
-------------
Make a basic config file::
cd /srv/envs/wuttapos
bin/rattail make-config -T rattail -O app
Then edit ``app/rattail.conf`` to suit your needs. In particular you
must specify the DB connection.
Usage
-----
Now you can run the app::
cd /srv/envs/wuttapos
bin/wuttapos open
Access Control
--------------
Note that the app will only allow a user to login to POS, if they have
permissions specific to the POS, namely "ring sales"
(``pos.ring_sales``).
Once logged in, additional POS-specific permissions will determine
whether the user may perform some actions, or not. In the latter case
the user may *initiate* the action but then another user
(e.g. manager) must login to complete the action.
All permissions must be managed externally, e.g. via your Rattail
back-office web app. WuttaPOS will honor them but does not expose a
way to manage them.