[IMP] point_of_sale: local network access for IoT devices

- Add documentation for local network access required for local devices
- Add warning about LNA on Self-signed certificate for ePOS SSC printers
- Add warning about LNA on pos_iot documentation

closes odoo/documentation#16041

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
This commit is contained in:
David Monnom
2026-02-13 14:20:30 +01:00
committed by Audrey (auva)
parent f3f16d17ae
commit 3e7f68d3a7
5 changed files with 89 additions and 26 deletions

View File

@@ -5,6 +5,7 @@ Configuration
.. toctree::
:titlesonly:
configuration/pos_iot
configuration/pos_lna
configuration/epos_printers
configuration/epos_ssc
configuration/pos_iot

View File

@@ -21,26 +21,25 @@ To use an ePos printer in Point of Sale:
.. note::
When the printer connects to a network, it automatically prints a ticket with its IP address.
.. _pos/epos_printers/supported-printers:
Directly supported ePOS printers
================================
The following ePOS printers are directly compatible with Odoo without needing an :doc:`IoT system
</applications/general/iot/devices/printer>`.
The **Epson TM-m30 i/ii/iii (Wi-Fi or Ethernet only) models** are strongly recommended, as they have
been fully tested with Odoo Point of Sale.
- Epson TM-m30 i/ii/iii (Wi-Fi/Ethernet models only; Recommended)
- Epson TM-H6000IV-DT (Receipt printer only)
- Epson TM-T70II-DT
- Epson TM-T88V-DT
- Epson TM-L90-i
- Epson TM-T70-i
- Epson TM-T82II-i
- Epson TM-T83II-i
- Epson TM-U220-i
- Epson TM-m10
- Epson TM-P20 (Wi-Fi® model)
- Epson TM-P60II (Receipt: Wi-Fi® model)
- Epson TM-P60II (Peeler: Wi-Fi® model)
- Epson TM-P80 (Wi-Fi® model)
Other Wi-Fi or Ethernet Epson printer models that support the **ePoS protocol** should also be
compatible.
.. important::
- The ePoS printer must be capable of operating in HTTP mode.
- When using :doc:`Local Network Access (LNA)
</applications/sales/point_of_sale/configuration/pos_lna>`, the ePOS printer must have a
**static IP address**; otherwise, it may become unreachable. The static IP should be configured
through the router.
.. _pos/epos_printers/iot-supported-printers:
ePOS printers with IoT system integration
=========================================
@@ -64,4 +63,5 @@ be compatible with Odoo:
- Epson printers that connect via Bluetooth are **not compatible**.
.. seealso::
:doc:`epos_ssc`
- :doc:`pos_lna`
- :doc:`epos_ssc`

View File

@@ -4,19 +4,19 @@
Self-signed certificate for ePOS printers
=========================================
.. important::
Since the `Chromium 142 update <https://developer.chrome.com/release-notes/142>`_, using a
self-signed certificate is no longer required. The recommended approach is to use the
:doc:`Local Network Access <pos_lna>` method instead.
To work with Odoo, some printer models that can be used without an
:doc:`IoT system </applications/general/iot>` may require the HTTPS protocol to establish a secure
connection between the browser and the printer. However, trying to reach the printer's IP address
using HTTPS leads to a warning page on most web browsers. In that case, you can temporarily
:ref:`force the connection <epos_ssc/instructions>`, which allows you to reach the page in HTTPS and
use the ePOS printer in Odoo as long as the browser window stays open.
using HTTPS leads to a warning page on most web browsers.
.. warning::
The connection is lost after closing the browser window. Therefore, this method should only be
used as a **workaround** or as a pre-requisite for the :ref:`following instructions
<epos_ssc/instructions>`.
.. _epos_ssc/instructions:
.. seealso::
:doc:`pos_lna`
Generate, export, and import self-signed certificates
=====================================================

View File

@@ -0,0 +1,62 @@
.. |LNA| replace:: :abbr:`LNA (Local Network Access)`
====================
Local Network Access
====================
`Local Network Access <https://developer.chrome.com/release-notes/142#local_network_access_restrictions>`_
is a security feature that limits a website's ability to send requests to servers on a local
network. Access requires explicit user permission, which makes it possible to grant network access
to a specific web page. Using |LNA|, Odoo Point of Sale can communicate with devices with local
access, such as :ref:`supported ePOS printers <pos/epos_printers/supported-printers>`, directly
from the browser and without requiring an :doc:`SSL certificate <epos_ssc>`.
.. note::
Local Network Access is available in most browsers based on `Chromium version 142
<https://developer.chrome.com/release-notes/142>`_ or higher, including Google Chrome, Brave,
Microsoft Edge, Vivaldi, and Opera.
.. important::
The ePOS printer must have a **static IP address**; otherwise, it may become unreachable. The
static IP should be configured through the router.
Activation
==========
To activate |LNA| and ensure POS uses it over a secure connection, create a new system parameter
as follows:
#. :ref:`Enable the developer mode <developer-mode>`.
#. Go to :menuselection:`Settings --> Technical --> System Parameters`.
#. Click :guilabel:`New` and fill in the fields:
- :guilabel:`Key`: `point_of_sale.use_lna`
- :guilabel:`Value`: `True`
#. Click :guilabel:`Save`.
Browser permission
==================
Once |LNA| is activated in Odoo and a device with local access, such as an :ref:`ePOS printer
<pos/epos_printers/supported-printers>`, is configured, the browser displays a popup requesting
permission to communicate with the devices on the local network.
.. image:: pos_lna/pos-lna.png
:alt: Permission popup to access local network devices
.. note::
- If the popup does not appear, permission can be granted manually through the browser's site
settings.
- Some browsers may require enabling a flag to activate the feature:
- Brave: `brave://flags/#local-network-access-check`
- Google Chrome: `chrome://flags/#local-network-access-check`
Point of sale LNA status
========================
To view the point of sale's |LNA| status, :ref:`open <pos/use/open-register>` or access the
register, click the :icon:`fa-bars` (:guilabel:`hamburger menu`) icon in the top-right corner, then
click the :guilabel:`Local Network Access` button at the bottom of the menu. The current |LNA|
status details are then displayed in the :guilabel:`LNA Permission status` popup.

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB