mirror of
https://github.com/odoo/documentation.git
synced 2025-12-12 07:29:27 +07:00
[IMP] pos/restaurant: Update Restaurant features 18.4
task-3604855 closes odoo/documentation#14690 Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
This commit is contained in:
@@ -5,43 +5,66 @@ Restaurant features
|
||||
Odoo Point of Sale provides various features to manage a restaurant or a bar:
|
||||
|
||||
- :ref:`Organizing the floors and tables <pos/restaurant/floors>`;
|
||||
- :ref:`Taking orders <pos/restaurant/orders>`;
|
||||
- :ref:`Communicating with the kitchen or bar through the POS <pos/restaurant/orders-printing>`;
|
||||
- :ref:`Managing orders <pos/restaurant/orders>`;
|
||||
- :ref:`Notifying the kitchen or bar through the POS <pos/restaurant/orders-printing>`;
|
||||
- :ref:`Printing and splitting bills <pos/restaurant/bills>`;
|
||||
- :ref:`Collecting tips <pos/restaurant/tips>`;
|
||||
- :doc:`Setting different taxes for takeaway food <pricing/fiscal_position>`.
|
||||
- :doc:`Setting different taxes for takeout orders <pricing/fiscal_position>`.
|
||||
|
||||
Three main buttons in the POS register allow for navigating between the :ref:`Floor plan
|
||||
<pos/restaurant/floors>` view, tables, and :ref:`orders <pos/restaurant/orders>`:
|
||||
Three main buttons in the POS interface allow for navigating between tables, the register, and
|
||||
orders:
|
||||
|
||||
- :guilabel:`Plan`: Access the :ref:`Floor plan <pos/restaurant/floors>` view.
|
||||
- :guilabel:`Table`: Enter a table or order number, then click :guilabel:`Jump` to access them. The
|
||||
button's label updates to display the selected number. When applicable, click :guilabel:`Book
|
||||
table` to confirm the table's occupancy.
|
||||
- :icon:`fa-plus-circle` (:guilabel:`order`): :ref:`Create a direct sales order <pos/restaurant/orders>`
|
||||
that is not linked to any table. Each click generates the next order in the sequence. Click
|
||||
:guilabel:`Release Order` to cancel the order (if no products have been added) and return to the
|
||||
:ref:`Floor plan <pos/restaurant/floors>` view.
|
||||
|
||||
.. note::
|
||||
- When :guilabel:`Table Booking` is enabled in the :ref:`POS settings <configuration/settings>`,
|
||||
a :guilabel:`Booking` button appears on the main interface for viewing and managing bookings.
|
||||
- Entering a number through the :guilabel:`Table` button that does not match an existing table
|
||||
number creates a direct sales order.
|
||||
- :guilabel:`Tables`: Access the :ref:`Floor plan <pos/restaurant/floors>` view to manage table
|
||||
occupancy.
|
||||
- :guilabel:`Register`: Access the :ref:`POS register <pos/restaurant/orders>` to process orders.
|
||||
- :guilabel:`Orders`: Access the overview of all orders.
|
||||
|
||||
.. important::
|
||||
To configure restaurant-specific settings, the :guilabel:`Is a Bar/Restaurant` setting under the
|
||||
:guilabel:`Restaurant Mode` section must be enabled in the :ref:`POS settings
|
||||
:guilabel:`Point of Sale` section must be enabled in the :ref:`POS settings
|
||||
<configuration/settings>`.
|
||||
|
||||
.. note::
|
||||
When :guilabel:`Booking` is enabled in the :ref:`POS settings <configuration/settings>`, a
|
||||
:ref:`Booking <pos/restaurant/floors/booking>` button appears on the main interface for viewing
|
||||
and managing bookings.
|
||||
|
||||
.. _pos/restaurant/default:
|
||||
|
||||
Default start screen
|
||||
====================
|
||||
|
||||
To define the point of sale's default start screen, go to the :ref:`POS settings
|
||||
<configuration/settings>`, scroll down to the :guilabel:`PoS Interface` section, and set the
|
||||
:guilabel:`Default Screen` setting to :guilabel:`Tables` (i.e., :ref:`Floor plan
|
||||
<pos/restaurant/floors>` view) or :ref:`Register <pos/restaurant/orders>`.
|
||||
|
||||
.. _pos/restaurant/floors:
|
||||
|
||||
Floors and tables
|
||||
=================
|
||||
|
||||
The :guilabel:`Floor plan` view is the first screen displayed when :ref:`accessing the POS register
|
||||
<pos/session-start>`. It enables managing restaurant floors and tables, and monitoring
|
||||
table status in real time (occupancy, reservations, and kitchen orders).
|
||||
The :guilabel:`Floor plan` view allows for managing restaurant floors and tables and monitoring
|
||||
table status in real time (occupancy, reservations, kitchen orders) using the following action
|
||||
buttons:
|
||||
|
||||
- :icon:`fa-plus` :guilabel:`New Order`: :ref:`Create a direct sales order
|
||||
<pos/restaurant/orders/process>` that is not linked to any table. Take the order, click
|
||||
:guilabel:`Set Table` to assign it to an existing table, or click :guilabel:`Set Tab` to
|
||||
record the open order's name.
|
||||
- Buttons for navigating between :ref:`configured floors <pos/restaurant/floors/backend>`
|
||||
(e.g., :guilabel:`Main Floor/Patio`).
|
||||
- :icon:`fa-hashtag` (:guilabel:`Table Selector`): Enter an existing table number and click
|
||||
:guilabel:`Jump` to access it.
|
||||
|
||||
.. note::
|
||||
- Selecting a table on the :guilabel:`Floor plan` view or accessing it through the
|
||||
:guilabel:`Table Selector` automatically confirms the table's occupancy.
|
||||
- To order free physical QR codes adapted to the floor plan, activate the :doc:`QR menu
|
||||
</applications/sales/point_of_sale/self_order>` setting, then click :icon:`fa-qrcode`
|
||||
:guilabel:`Get QR Codes` in the :guilabel:`Floor plan` view. This `offer
|
||||
<https://www.odoo.com/app/point-of-sale-restaurant-qr-code>`_ is available worldwide and for
|
||||
all subscription types.
|
||||
|
||||
.. example::
|
||||
.. image:: restaurant/plan-understand.png
|
||||
@@ -57,7 +80,7 @@ table status in real time (occupancy, reservations, and kitchen orders).
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
Creating floors and tables allows managing table selection and :ref:`orders
|
||||
Creating floors and tables allows for managing table selection and :ref:`orders
|
||||
<pos/restaurant/orders>`.
|
||||
|
||||
.. _pos/restaurant/floors/backend:
|
||||
@@ -86,12 +109,12 @@ plan`:
|
||||
#. Save.
|
||||
|
||||
.. note::
|
||||
- Enable the :guilabel:`Table Booking` setting to assign an :guilabel:`Appointment resource` and
|
||||
make a table bookable.
|
||||
- Enable the :guilabel:`Booking` setting to assign an :guilabel:`Appointment resource` and make
|
||||
a table bookable.
|
||||
- Click the :icon:`fa-trash-o` (:guilabel:`trash`) icon to delete a table.
|
||||
|
||||
.. tip::
|
||||
To create a :guilabel:`Floor plan` quickly, go to the :guilabel:`Restaurant Mode` section of the
|
||||
To create a :guilabel:`Floor plan` quickly, go to the :guilabel:`Point of Sale` section of the
|
||||
:ref:`POS settings <configuration/settings>`. Under :guilabel:`Floors & Tables Map`, type the
|
||||
floor name in the :guilabel:`Floors` field, and press `Enter`.
|
||||
|
||||
@@ -128,27 +151,100 @@ follow the next steps:
|
||||
.. warning::
|
||||
Removing a table or a floor is permanent.
|
||||
|
||||
.. _pos/restaurant/floors/booking:
|
||||
|
||||
Booking
|
||||
-------
|
||||
|
||||
The :guilabel:`Booking` setting allows for creating and managing reservations for a designated
|
||||
point of sale directly from the POS interface.
|
||||
|
||||
.. note::
|
||||
Enabling the :guilabel:`Booking` setting automatically installs the :doc:`Appointments
|
||||
</applications/productivity/appointments>` app.
|
||||
|
||||
.. _pos/restaurant/floors/booking/configuration:
|
||||
|
||||
Booking configuration
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
To enable and configure the bookings, follow these steps:
|
||||
|
||||
#. Go to the :ref:`POS settings <configuration/settings>`, scroll down to the :guilabel:`PoS
|
||||
Interface` section, and enable :guilabel:`Booking`.
|
||||
#. Enter a name in the :guilabel:`Appointment type` field and click :guilabel:`Create and edit`.
|
||||
#. Configure the :ref:`Appointment type <appointments/configure>` form and click :guilabel:`Save`.
|
||||
#. Click :guilabel:`Save` in the POS settings.
|
||||
|
||||
.. important::
|
||||
To ensure that only existing resources can be booked for a specific point of sale, set the
|
||||
:guilabel:`Book` field to :guilabel:`Resources` in the :guilabel:`Appointment type` form and
|
||||
select tables. Then, enable :guilabel:`Manage Capacities` to define the maximum amount each
|
||||
resource can handle.
|
||||
|
||||
.. tip::
|
||||
To accommodate a booking that exceeds the capacity of a single table, click the
|
||||
:icon:`fa-cubes` (:guilabel:`Resources`) icon in the :guilabel:`Appointment Type` form, select
|
||||
a table, and add additional tables in the :guilabel:`Linked Resource` field to merge them.
|
||||
|
||||
.. seealso::
|
||||
:doc:`/applications/productivity/appointments`
|
||||
|
||||
.. _pos/restaurant/floors/booking/management:
|
||||
|
||||
Booking management
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
To manage table bookings from the POS interface, click :guilabel:`Booking`, then:
|
||||
|
||||
- Click :guilabel:`New` to create a booking. Add a name, the date and time, number of guests, phone
|
||||
number, duration, and :ref:`resources <appointments/resources>`, then click :guilabel:`Save`.
|
||||
- Click a booking to :guilabel:`Edit` or :guilabel:`Delete` it. Click a stage name (e.g.,
|
||||
:guilabel:`Booked`, :guilabel:`Checked-In`, or :guilabel:`No Show`) or drag the booking card to
|
||||
move it to the relevant stage.
|
||||
|
||||
.. tip::
|
||||
To quickly edit a booking from the :ref:`Floor plan <pos/restaurant/floors>` view, click the
|
||||
booking notification on the booked table.
|
||||
|
||||
.. _pos/restaurant/orders:
|
||||
|
||||
Order management
|
||||
================
|
||||
|
||||
To take an order, :ref:`open the POS register <pos/session-start>` and follow these steps:
|
||||
The POS register allows for :ref:`processing <pos/restaurant/orders/process>` and :ref:`transferring
|
||||
<pos/restaurant/floors/transfer>` orders, defining :ref:`presets <pos/restaurant/orders/preset>`,
|
||||
and managing :ref:`courses <pos/restaurant/orders/courses>`.
|
||||
|
||||
#. Select a :ref:`floor plan <pos/restaurant/floors>` and click a table or click the
|
||||
:icon:`fa-plus-circle` (:guilabel:`order`) button at the top to create a direct sales order.
|
||||
#. Add products to the order.
|
||||
.. _pos/restaurant/orders/process:
|
||||
|
||||
Order process
|
||||
-------------
|
||||
|
||||
To process an order from the POS register, follow these steps:
|
||||
|
||||
#. Click products to add them to the cart.
|
||||
#. Define how the order is handled:
|
||||
|
||||
- Click :guilabel:`Set Table` to link the order to a table. Enter a table number and click
|
||||
:guilabel:`Assign`.
|
||||
- Click :guilabel:`Set Tab` to enter the open order's name and click :guilabel:`Apply`.
|
||||
#. Click :guilabel:`Order` to validate the order.
|
||||
|
||||
When ready, :ref:`process the order payment <pos/restaurant/bills/payment>`.
|
||||
|
||||
.. note::
|
||||
Clicking :guilabel:`Order` redirects to the :ref:`Floor plan <pos/restaurant/floors>` view if
|
||||
:guilabel:`Tables` is selected as the :ref:`default start screen <pos/restaurant/default>`.
|
||||
|
||||
.. tip::
|
||||
- To cancel a processed order, click :guilabel:`Actions`, then :guilabel:`Cancel Order`. If an
|
||||
:ref:`order printer is configured <pos/restaurant/orders-printing>`, a cancellation ticket is
|
||||
automatically printed.
|
||||
- To switch to another table order, click the button with the table number at the top of the POS
|
||||
interface, enter a table number, and click :guilabel:`Jump`.
|
||||
- Click :guilabel:`Release table` to cancel a table's occupancy.
|
||||
- To cancel an order, click the :icon:`fa-ellipsis-v` (:guilabel:`Actions`) icon, then
|
||||
:guilabel:`Cancel Order`. If an :ref:`order printer is configured
|
||||
<pos/restaurant/orders-printing>`, a cancellation ticket is automatically printed for an
|
||||
order sent to the kitchen.
|
||||
- After selecting a table in the :ref:`Floor plan <pos/restaurant/floors>` view, click
|
||||
:guilabel:`Release table` in the cart to cancel the table's occupancy. This action is
|
||||
available when the cart is empty.
|
||||
- :ref:`Configure a printer <pos/restaurant/orders-printing>` to send an order to the kitchen
|
||||
printer when clicking :guilabel:`Order`.
|
||||
|
||||
@@ -157,21 +253,70 @@ When ready, :ref:`process the order payment <pos/restaurant/bills/payment>`.
|
||||
Order transfer
|
||||
--------------
|
||||
|
||||
To transfer an order to another table from the :ref:`POS interface <pos/restaurant/orders>`, click
|
||||
:guilabel:`Actions`, then :guilabel:`Transfer/Merge`, and choose the target table in the
|
||||
:ref:`Floor plan <pos/restaurant/floors>` view:
|
||||
To transfer an order to another table from the :ref:`POS register <pos/restaurant/orders>`, click
|
||||
the :icon:`fa-ellipsis-v` (:guilabel:`Actions`) icon, then :guilabel:`Transfer/Merge`, and choose
|
||||
the target table in the :ref:`Floor plan <pos/restaurant/floors>` view:
|
||||
|
||||
- Select an available table to transfer customers and their orders.
|
||||
- Select an occupied table to merge customers and their orders.
|
||||
|
||||
.. _pos/restaurant/orders/preset:
|
||||
|
||||
Presets
|
||||
-------
|
||||
|
||||
Presets are used to apply preconfigured settings to orders and determine whether an order is for
|
||||
:guilabel:`Dine In`, :guilabel:`Takeout`, or :guilabel:`Delivery`. They also control whether
|
||||
customer contact information is required and apply capacity limits based on opening hours and order
|
||||
quantity.
|
||||
|
||||
To use preconfigured presets, go to the :ref:`POS settings <configuration/settings>` and
|
||||
enable the :guilabel:`Take out / Delivery / Members` setting under the :guilabel:`Point of Sale`
|
||||
section. Set the :guilabel:`Default` field to the preferred preset, then save. From the
|
||||
:ref:`register <pos/restaurant/orders>`, select the relevant preset, and :ref:`process the order
|
||||
<pos/restaurant/orders/process>`:
|
||||
|
||||
- :guilabel:`Dine In`: Assign a :ref:`table or open a tab <pos/restaurant/orders/process>`.
|
||||
- :guilabel:`Takeout`: Enter the order's name and click :guilabel:`Apply`, then select a date
|
||||
and a time slot.
|
||||
- :guilabel:`Delivery`: Select an existing customer, or click :guilabel:`Create` to add one. Then,
|
||||
select a time slot.
|
||||
|
||||
.. tip::
|
||||
Click the preset button to switch to another one.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`/applications/sales/point_of_sale/preparation`
|
||||
- :doc:`/applications/sales/point_of_sale/online_food_delivery`
|
||||
|
||||
.. _pos/restaurant/orders/courses:
|
||||
|
||||
Courses
|
||||
-------
|
||||
|
||||
The :guilabel:`Course` button allows for splitting orders into multiple courses, sending each course
|
||||
to the kitchen sequentially.
|
||||
|
||||
To split an order into courses from the :ref:`register <pos/restaurant/orders>`, click
|
||||
:guilabel:`Course` and add products. Repeat the action as many times as needed, then click
|
||||
:guilabel:`Order` to send the order to the kitchen, which also fires the first course.
|
||||
|
||||
When ready for the second course, retrieve the order from the :ref:`Floor plan
|
||||
<pos/restaurant/floors>` view or the :guilabel:`Orders` overview, and click :guilabel:`Fire Course
|
||||
2`. Repeat the action as many times as needed.
|
||||
|
||||
.. tip::
|
||||
- Alternatively, click :guilabel:`Course` as often as needed to display the desired number of
|
||||
courses in the cart. Then, click each course, add products, and click :guilabel:`Order`.
|
||||
- To transfer a product or an entire course into another course, select it in the cart, click
|
||||
the :icon:`fa-ellipsis-v` (:guilabel:`Actions`) icon, then :icon:`fa-arrow-down`
|
||||
:guilabel:`Transfer course`, and select the preferred course.
|
||||
|
||||
.. _pos/restaurant/orders-printing:
|
||||
|
||||
Order printing
|
||||
==============
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
To enable sending orders to a kitchen or a bar printer, :doc:`connect a printer
|
||||
<configuration/epos_printers>` to Odoo, go to the :ref:`POS settings <configuration/settings>`, and
|
||||
follow these steps:
|
||||
@@ -191,7 +336,7 @@ follow these steps:
|
||||
#. Define the product categories to be printed by clicking :guilabel:`Add a line` in the
|
||||
:guilabel:`Printed Product Categories` field and selecting the preferred category from the
|
||||
popover.
|
||||
#. Click :guilabel:`Save & Close`.
|
||||
#. Click :guilabel:`Save`.
|
||||
#. In the :ref:`POS settings <configuration/settings>`, click :guilabel:`Save`.
|
||||
|
||||
The printer is then connected to the point of sale and can print kitchen orders and order receipts.
|
||||
@@ -204,10 +349,13 @@ The printer is then connected to the point of sale and can print kitchen orders
|
||||
image, determine the product availability, then click :guilabel:`Save & Close`.
|
||||
|
||||
.. tip::
|
||||
To access all preparation printers from the :ref:`POS settings <configuration/settings>`, scroll
|
||||
down to the :guilabel:`Preparation` section, and click :icon:`oi-arrow-right`
|
||||
:guilabel:`Printers`. Alternatively, go to :menuselection:`Point of Sale --> Orders -->
|
||||
Preparations Printers`.
|
||||
- To access all preparation printers from the :ref:`POS settings <configuration/settings>`,
|
||||
scroll down to the :guilabel:`Preparation` section and click :icon:`oi-arrow-right`
|
||||
:guilabel:`Printers`. Alternatively, go to :menuselection:`Point of Sale --> Orders -->
|
||||
Preparations Printers`.
|
||||
- After :ref:`processing an order <pos/restaurant/orders/process>`, click the :icon:`fa-cutlery`
|
||||
(:guilabel:`order`) icon in the :ref:`POS register <pos/restaurant/orders>` next to
|
||||
:guilabel:`Payment` to reprint a duplicate of the last kitchen order.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`Connect an IoT system to a POS <configuration/pos_iot>`
|
||||
@@ -226,26 +374,29 @@ Bill splitting
|
||||
--------------
|
||||
|
||||
To allow bill splitting, go to :menuselection:`Point of Sale --> Configuration --> Settings`, and
|
||||
enable :guilabel:`Allow Bill Splitting` under the :guilabel:`Restaurant Mode` section.
|
||||
enable :guilabel:`Allow Bill Splitting` under the :guilabel:`Point of Sale` section.
|
||||
|
||||
To split a bill from the :ref:`POS interface <pos/restaurant/orders>`, follow these steps:
|
||||
To split a bill from the :ref:`POS register <pos/restaurant/orders>`, follow these steps:
|
||||
|
||||
#. Click :guilabel:`Actions`, then :guilabel:`Split`.
|
||||
#. Select at least one product and click :guilabel:`Split Order`.
|
||||
#. Proceed with the :ref:`payment <pos/restaurant/bills/payment>`.
|
||||
#. Click the :icon:`fa-ellipsis-v` (:guilabel:`Actions`) icon, then :guilabel:`Split`.
|
||||
#. Select at least one product and perform one of the following actions:
|
||||
|
||||
- :guilabel:`Payment`: Process the direct payment for the selected product(s).
|
||||
- :guilabel:`Split Order`: Create a sub-order.
|
||||
- :guilabel:`Transfer`: Transfer one or all products to another table.
|
||||
#. Process the :ref:`payment <pos/restaurant/bills/payment>`.
|
||||
#. Click :icon:`fa-chevron-right` :guilabel:`Continue` and repeat the process for each guest.
|
||||
|
||||
.. note::
|
||||
- Splitting a bill requires ordering at least two products and creates a sub-order, which must
|
||||
be paid before returning to the main order.
|
||||
- Clicking :guilabel:`Split Order` without selecting any product creates an empty sub-order.
|
||||
Splitting a bill requires ordering at least two products and creates a sub-order, which must
|
||||
be paid before returning to the main order.
|
||||
|
||||
.. _pos/restaurant/bills/payment:
|
||||
|
||||
Order payment
|
||||
-------------
|
||||
|
||||
To proceed with the order payment from the :ref:`POS interface <pos/restaurant/orders>`, follow
|
||||
To proceed with the order payment from the :ref:`POS register <pos/restaurant/orders>`, follow
|
||||
these steps:
|
||||
|
||||
#. Click :guilabel:`Payment`.
|
||||
@@ -263,7 +414,7 @@ Receipt printing
|
||||
----------------
|
||||
|
||||
To allow receipt printing, go to :menuselection:`Point of Sale --> Configuration --> Settings`, and
|
||||
enable :guilabel:`Early Receipt Printing` under the :guilabel:`Restaurant Mode` section.
|
||||
enable :guilabel:`Early Receipt Printing` under the :guilabel:`Point of Sale` section.
|
||||
|
||||
After a successful :ref:`order payment <pos/restaurant/bills/payment>`, click :icon:`fa-print`
|
||||
:guilabel:`Print Full Receipt` to generate and print a bill.
|
||||
@@ -284,7 +435,7 @@ Configuration
|
||||
-------------
|
||||
|
||||
To allow tipping in a POS, go to the :ref:`POS settings <configuration/settings>`, scroll down to
|
||||
the :guilabel:`Payment` section, enable :guilabel:`Tips`, and click :guilabel:`Save`.
|
||||
the :guilabel:`Payment` section, enable :guilabel:`Tips`, and click :guilabel:`Save`.
|
||||
|
||||
.. important::
|
||||
- The :guilabel:`Add tip after payment` setting only works for a POS in the United States
|
||||
@@ -297,7 +448,7 @@ the :guilabel:`Payment` section, enable :guilabel:`Tips`, and click :guilabel:`
|
||||
- Saving the :guilabel:`Tips` setting automatically fills the :guilabel:`Tip product` field
|
||||
with the preconfigured :guilabel:`[TIPS] Tips` product, which is only used for tips. When
|
||||
selecting another product in the :guilabel:`Tip product` field, the chosen product is no
|
||||
longer available on the :ref:`POS interface <pos/restaurant/orders>`.
|
||||
longer available on the :ref:`POS register <pos/restaurant/orders>`.
|
||||
- Choose only one tip product per POS.
|
||||
|
||||
.. _pos/restaurant/tips/add-tips:
|
||||
@@ -313,9 +464,9 @@ To process a tip during :ref:`payment <pos/restaurant/bills/payment>`, follow th
|
||||
|
||||
.. tip::
|
||||
If the order and the tip are paid using different payment methods, select a :doc:`payment method
|
||||
<payment_methods>` for the order, click :icon:`fa-heart` :guilabel:`Tip`, add the tip amount, and
|
||||
click :guilabel:`Ok`. Then, select a payment method for the tip and :guilabel:`Validate` the
|
||||
payment.
|
||||
<payment_methods>` for the order first. Then, select a payment method for the tip, click
|
||||
:icon:`fa-heart` :guilabel:`Tip`, add the tip amount, and click :guilabel:`Ok`.
|
||||
Finally, :guilabel:`Validate` the payment.
|
||||
|
||||
Tip after payment (US only)
|
||||
---------------------------
|
||||
|
||||
@@ -34,8 +34,9 @@ You can choose from:
|
||||
with the generated QR codes.
|
||||
|
||||
.. note::
|
||||
In **restaurants**, printing or downloading QR codes generates as many QR codes as the
|
||||
number of available tables. In **shops**, it generates only one generic QR code.
|
||||
In :ref:`restaurants <pos/restaurant/floors>`, printing or downloading QR codes generates
|
||||
as many QR codes as the number of available tables. In **shops**, it generates only one
|
||||
generic QR code.
|
||||
|
||||
.. tip::
|
||||
To customize QR codes,
|
||||
|
||||
Reference in New Issue
Block a user