Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions content/applications/finance/fiscal_localizations/belgium.rst
Original file line number Diff line number Diff line change
Expand Up @@ -71,9 +71,9 @@ POS.
- Sell products without a valid VAT number.
- Use a POS that is not connected to an IoT box.

- The :doc:`cash rounding <../../sales/point_of_sale/shop/cash_rounding>` feature must be activated
and set to a :guilabel:`Rounding Precision` of `0,05` and a :guilabel:`Rounding Method` set as
:guilabel:`Half-Up`.
- The :doc:`cash rounding <../../sales/point_of_sale/pricing/cash_rounding>` feature must be
activated and set to a :guilabel:`Rounding Precision` of `0,05` and a :guilabel:`Rounding Method`
set as :guilabel:`Half-Up`.
- Taxes must be set as included in the price. To set it up, go to :menuselection:`Point of Sale -->
Configuration --> Settings`, and from the :guilabel:`Accounting` section, open the
:guilabel:`Default Sales Tax` form by clicking the arrow next to the default sales tax field.
Expand Down
1 change: 0 additions & 1 deletion content/applications/productivity/iot.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,3 @@ Internet of Things (IoT)

iot/config
iot/devices
../sales/point_of_sale/payment
2 changes: 1 addition & 1 deletion content/applications/productivity/iot/config/pos.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ Then, you have to connect the peripheral devices to your IoT Box.

- **Payment terminal**: The connection process depends on the terminal,
please refer to the :doc:`payment terminals documentation
</applications/sales/point_of_sale/payment>`.
</applications/sales/point_of_sale/payment_methods>`.

Once it's done, you can connect the IoT Box to your PoS. For this, go in
:menuselection:`Point of Sale --> Configuration --> PoS`, tick *IoT Box*
Expand Down
159 changes: 152 additions & 7 deletions content/applications/sales/point_of_sale.rst
Original file line number Diff line number Diff line change
@@ -1,24 +1,169 @@
:nosearch:
:show-content:
:hide-page-toc:
:show-toc:

=============
Point of Sale
=============

With **Odoo Point of Sale**, run your shops or restaurants easily. The app runs on the browser, but
is able to continue working even if you are offline.
With **Odoo Point of Sale**, run your shops and restaurants easily. The app works on any device with
a web browser, even if you are temporarily offline. Product moves are automatically registered in
your stock, you get real-time statistics, and your data is consolidated across all shops.

.. seealso::
- `Odoo Tutorials: Point of Sale Tutorials <https://www.odoo.com/slides/point-of-sale-28>`_
- :doc:`IoT Boxes Documentations </applications/productivity/iot>`

.. _pos/session-start:

Start a session
===============

From the **POS dashboard**, click :guilabel:`New Session` and at the :guilabel:`Opening Cash
Control` screen, click :guilabel:`Open Session` to start a POS session, or click :guilabel:`Continue
Selling` if the session is already opened.

.. note::
Multiple users can be connected to the same session at the same time. However, the session can
only be opened once on the same browser.

.. _pos/sell:

Sell products
=============

Click products to add them to the cart. To change the **quantity**, click :guilabel:`Qty` and enter
the number of products using the keypad. To add a **discount** or modify the product **price**,
click respectively :guilabel:`Disc` or :guilabel:`Price` and enter the amounts.

Once an order is completed, proceed to checkout by clicking :guilabel:`Payment`. Select the
**payment method**, enter the received amount, and click :guilabel:`Validate`. Click
:guilabel:`New Order` to move on to the next customer.

.. image:: point_of_sale/pos-interface.png
:align: center
:alt: POS session interface.

.. tip::
- You can use both `,` and `.` on your keyboard as decimal separators.
- **Cash** is selected by default if you enter the amount without choosing a payment method.

.. _pos/customers:

Register customers
==================

Registering your customers gives you the ability to grant them various privileges such as discounts,
loyalty program, specific communication. It is also required if they want an invoice and registering
them makes any future interaction with them faster.

From your session interface, use the customer button.

.. image:: point_of_sale/customer-button.png

Create a new one by using this button.

.. image:: point_of_sale/customer-add.png

You will be invited to fill out the customer form with their
information.

.. image:: point_of_sale/customer-form.png

Use the save button when you are done. You can then select that customer
in any future transactions.

.. _pos/customer-notes:

Customer notes
==============

You can add **customer notes** about specific products directly from an open :ref:`POS session
<pos/session-start>`. For instance, to provide cleaning and maintenance tips. They can also be used
to track a customer's particular request, such as not wanting the product to be assembled for them.

To do so, select a product and click :guilabel:`Customer Note` on the pad. Doing so opens a pop-up
window in which you can add or modify content for the note.

.. note::
Product notes from an :doc:`imported SO <point_of_sale/shop/sales_order>` are displayed
identically in the cart.

.. image:: point_of_sale/customer-notes.png
:alt: Customer note button and notes (SO and POS session) on products in the cart

Customer notes appear on customers' receipts and invoices similarly to how they appear in the cart,
under the related product.

.. image:: point_of_sale/notes-receipt.png
:alt: Customer receipt with notes from an SO and from the customer note feature

.. _pos/refund:

Return and refund products
==========================

To return and refund a product,

#. :ref:`start a session <pos/session-start>` from the **POS dashboard**;
#. click :guilabel:`Refund` and select the corresponding order;
#. select the product and the quantity to refund using the keypad;
#. click :guilabel:`Refund` to go back to the previous screen;
#. once the order is completed, click :guilabel:`Payment` to proceed to the refund;
#. click :guilabel:`Validate` and :guilabel:`New Order` to move on to the next customer.

.. note::
- You can filter the **orders list** by :guilabel:`Receipt Number`, :guilabel:`Date` or
:guilabel:`Customer` using the search bar.
- You can also refund a product by selecting the returned product from an open session, and
setting a negative quantity that equals the number of returned products. To do so, click
:guilabel:`Qty` and :guilabel:`+/-`, followed by the quantity of returned products.

.. _pos/session-close:

Close the POS session
=====================

To close your session, click :guilabel:`Close` in the upper right corner of your screen; doing so
opens the :guilabel:`Closing Control` pop-up screen. From this screen, you can retrieve various
information:

- the number of orders made and the total amount made during the session;
- the total of all the transactions made during the session grouped by payment method;
- the expected amounts grouped by payment method.

Before closing this window, count your cash using the calculator icon. Doing so opens a pop-up
window that computes the total amount in the cash drawer depending on the coins and bills counted
and added manually. Then, click :guilabel:`Confirm` or :guilabel:`Discard` to close the window. The
computed amount is set in the :guilabel:`Counted` column, and the :guilabel:`Money Details` are
specified in the **Notes** section.

.. image:: point_of_sale/closing-control.png
:align: center
:alt: How to close a POS session.

Once you are done controlling the amounts, click :guilabel:`Close Session` to close and go back to
the **POS dashboard**.

.. note::
- You can let the session open by clicking :guilabel:`Keep Session Open` or abort and keep
selling by clicking :guilabel:`Continue Selling`.
- Depending on your setup, you might not be allowed to close a session if the expected cash
revenue does not equal the counted cash. To close the session, check :guilabel:`Accept payments
difference and post a profit/loss journal entry`.

.. tip::
- It is strongly advised to close your POS session at the end of each day.
- To look at all your previous sessions, go to :menuselection:`Point of Sale --> Orders -->
Sessions`.

.. toctree::
:titlesonly:

point_of_sale/overview
point_of_sale/employee_login
point_of_sale/receipts_invoices
point_of_sale/configuration
point_of_sale/shop
point_of_sale/restaurant
point_of_sale/payment
point_of_sale/advanced_pricing_features
point_of_sale/pricing
point_of_sale/payment_methods
point_of_sale/reporting

This file was deleted.

34 changes: 34 additions & 0 deletions content/applications/sales/point_of_sale/configuration.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
:show-content:
:show-toc:

=============
Configuration
=============

.. _configuration/settings:

Access POS settings
===================

To access the general POS settings, go to :menuselection:`Point of Sale --> Configuration -->
Settings`.

To access the settings of a specific point of sale, go to :menuselection:`Point of Sale -->
Configuration --> Point of Sale`. Alternatively, from the Point of Sale dashboard, click the
vertical ellipsis (:guilabel:`⋮`) button on a POS card, then on :guilabel:`Settings`.

Make products available
=======================

To make products available for sale, go to :menuselection:`Point of Sale --> Products --> Products`,
and select a product to open the product form. In the :guilabel:`Sales` tab, enable
:guilabel:`Available in POS`.

.. image:: configuration/pos-available.png
:alt: Making a product available in your POS.

.. toctree::
:titlesonly:

configuration/https
configuration/epos_ssc
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ To enable the feature, go to your *PoS settings* and check log in with
employees on your *PoS form*. Then, add the employees that have access
to the cash register.

.. image:: multicashiers/multicashiers01.png
.. image:: employee_login/multicashiers01.png
:align: center

Now, you can switch cashier easily.
Expand All @@ -32,12 +32,12 @@ Switch without pin codes
The easiest way to switch cashiers is without a code. To do so, click on
the cashier name in your PoS interface.

.. image:: multicashiers/multicashiers02.png
.. image:: employee_login/multicashiers02.png
:align: center

Now, you just have to click on your name.

.. image:: multicashiers/multicashiers03.png
.. image:: employee_login/multicashiers03.png
:align: center

.. _set-pin-code:
Expand All @@ -48,12 +48,12 @@ Switch cashier with pin codes
You can set a pin code on each cashier. To set up a pin code, go to the
employee form and add a security PIN, in the *HR settings tab*.

.. image:: multicashiers/multicashiers04.png
.. image:: employee_login/multicashiers04.png
:align: center

Now, when switching cashier, a PIN password will be asked.

.. image:: multicashiers/multicashiers05.png
.. image:: employee_login/multicashiers05.png
:align: center

.. _employee-barcode:
Expand All @@ -66,7 +66,7 @@ so, set up a barcode at the same place you add the PIN code. Print the
badge and when they will scan it, the cashier will be switched to that
employee.

.. image:: multicashiers/multicashiers06.png
.. image:: employee_login/multicashiers06.png
:align: center

Find who was the cashier
Expand All @@ -75,7 +75,7 @@ Find who was the cashier
Once you have closed your *PoS session*, you can have an overview of
the amount each cashier sold for. To do so, go to the orders menu.

.. image:: multicashiers/multicashiers07.png
.. image:: employee_login/multicashiers07.png
:align: center

Now, you can open the order and have a summary of the sold products.
14 changes: 0 additions & 14 deletions content/applications/sales/point_of_sale/overview.rst

This file was deleted.

This file was deleted.

Loading