[ADD] Finance: POS certification doc blackbox setup

closes odoo/documentation#3755

X-original-commit: f6dfea8206
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
This commit is contained in:
LoredanaLrpz 2023-02-13 12:02:22 +00:00
parent d85715a176
commit 8a07f95e43
11 changed files with 184 additions and 104 deletions

View File

@ -62,7 +62,7 @@ available on Odoo.
- :doc:`Argentina - Accounting <fiscal_localizations/argentina>`
- :doc:`Australian - Accounting <fiscal_localizations/australia>`
- Austria - Accounting
- Belgium - Accounting
- :doc:`Belgium - Accounting <fiscal_localizations/belgium>`
- Bolivia - Accounting
- Brazilian - Accounting
- Canada - Accounting
@ -137,6 +137,7 @@ available on Odoo.
fiscal_localizations/argentina
fiscal_localizations/australia
fiscal_localizations/belgium
fiscal_localizations/chile
fiscal_localizations/colombia
fiscal_localizations/colombia_ES

View File

@ -0,0 +1,181 @@
=======
Belgium
=======
.. _belgium/introduction:
Fiscal certification: POS restaurant
====================================
In Belgium, the owner of a cooking business such as a restaurant or food truck is required by law to
use a government-certified **Cash Register System** for their receipts. This applies if their yearly
earnings (excluding VAT, drinks, and take-away food) exceed 25,000 euros.
This government-certified system entails the use of a :ref:`certified POS system
<belgium/certified>`, along with a device called a :ref:`Fiscal Data Module <belgium/fdm>` (or
**black box**) and a :ref:`VAT Signing Card <belgium/vat>`.
.. important::
Do not forget to register as *foodservice industry manager* on the `Federal Public Service
Finance registration form <https://www.systemedecaisseenregistreuse.be/fr/enregistrement>`_.
.. _belgium/certified:
Certified POS system
--------------------
The Odoo POS system is certified for the major versions of databases hosted on **Odoo Online** and
**Odoo.sh**. Please refer to the following table to ensure that your POS system is certified.
.. list-table::
:header-rows: 1
:stub-columns: 1
* -
- Odoo Online
- Odoo.sh
- On-Premise
* - Odoo 16.0
- Review in progress
- Review in progress
- Not certified
* - Odoo 15.2
- Not certified
- Not certified
- Not certified
* - Odoo 15.0
- Certified
- Certified
- Not certified
* - Odoo 14.0
- Certified
- Certified
- Not certified
.. seealso::
:doc:`/administration/maintain/supported_versions`
A `certified POS system <https://www.systemedecaisseenregistreuse.be/systemes-certifies>`_ must
adhere to rigorous government regulations, which means it operates differently from a non-certified
POS.
- On a certified POS, you cannot:
- Make a refund.
- Set up and use the **global discounts** feature (the `pos_discount` module is blacklisted and
cannot be activated).
- Set up and use the **loyalty programs** feature (the `pos_loyalty` module is blacklisted and
cannot be activated).
- Reprint receipts (the `pos_reprint` module is blacklisted and cannot be activated).
- Modify prices in order lines.
- Modify or delete order lines in POS orders.
- 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`.
- 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:`Taxes` section, open the :guilabel:`Default
Sales Tax` form by clicking the arrow next to the default sales tax field. There, click
:guilabel:`Advanced Options` and enable :guilabel:`Included in Price`.
- At the start of a POS session, users must click :guilabel:`Work in` to clock in. Doing so allows
the registration of POS orders. If users are not clocked in, they cannot make POS orders.
Likewise, they must click :guilabel:`Work Out` to clock out at the end of the session.
.. warning::
If you configure a POS to work with a black box, you cannot use it again without it.
.. _belgium/fdm:
The Fiscal Data Module
----------------------
The :abbr:`FDM (Fiscal Data Module)`, or `black box <https://www.boîtenoire.be/fonctionnement>`_, is
a government-certified device that works together with the Point of Sale application and saves your
POS orders information. Concretely, a **hash** (:dfn:`unique code`) is generated for each POS order
and added to its receipt. This allows the government to verify that all revenue is declared.
.. note::
Ensure your black box is approved by the Belgian government. You can check the compliance of your
black box by visiting the `Federal Public Service Finance
<https://www.systemedecaisseenregistreuse.be/systemes-certifies#FDM%20certifiés>`_ website.
Configuration
~~~~~~~~~~~~~
Before setting up your database to work with an FDM, ensure you have the following hardware:
- a registered :ref:`black box <belgium/blackbox>` (go to `www.boîtenoire.be
<https://www.boîtenoire.be/ma-caisse/>`_ to order yours);
- an RS-232 serial null modem cable per FDM;
- an RS-232 serial-to-USB adapter per FDM;
- an :ref:`IoT Box <belgium/iotbox>` (one IoT box per black box); and
- a receipt printer.
.. _belgium/blackbox:
Black box module
****************
As a pre-requisite, :ref:`activate <general/install>` the `Belgian Registered Cash Register` module
(technical name: `pos_blackbox_be`).
.. image:: belgium/be-modules.png
:align: center
:alt: black box modules for belgian fiscal certification
Once the module is activated, add your VAT number to your company information. To set it up, go to
:menuselection:`Settings --> Companies --> Update Info`, and fill in the :guilabel:`VAT` field.
Then, enter a national registration number for every staff member who operates the POS system. To do
so, go to the :guilabel:`Employees` app and open an employee form. There, go to :menuselection:`HR
settings tab --> Attendance`, and fill in the :guilabel:`INSZ or BIS number` field.
.. image:: belgium/bis-number.png
:align: center
:alt: ISNZ or BIS number field on employee form
.. tip::
To input your information, click on your avatar, go to :menuselection:`My Profile --> Preference
tab`, and enter your INSZ or BIS number in the designated field.
.. warning::
You must configure the black box directly in the production database. Utilizing it in a testing
environment may result in incorrect data being stored within the black box.
.. _belgium/iotbox:
IoT Box
*******
In order to use a Fiscal Data Module, you need a registered IoT Box. To register your IoT box, you
must contact us through our `support contact form <https://www.odoo.com/help>`_ and provide the
following information:
- your VAT number;
- your company's name, address, and legal structure; and
- the Mac address of your IoT Box.
Once your IoT box is certified, :doc:`connect <../../productivity/iot/config/connect>` it to your
database. To verify that the IoT Box recognizes the FDM, go to the IoT homepage and scroll down the
:guilabel:`IOT Device` section, which should display the FDM.
.. image:: belgium/iot-devices.png
:align: center
:alt: Hardware status page on a registered IoT Box
Then, add the IoT to your POS. To do so, go to :menuselection:`Point of Sale --> Configuration -->
Point of Sale`, select your POS, scroll down to the :guilabel:`Connected Device` section, and enable
:guilabel:`IoT Box`. Lastly, add the FMD in the :guilabel:`Fiscal Data Module` field.
.. note::
To be able to use an FDM, you must at least connect one :guilabel:`Receipt Printer`.
.. _belgium/vat:
VAT signing card
----------------
When you open a POS session and make your initial transaction, you are prompted to enter the PIN
provided with your :abbr:`VSC (VAT signing card)`. The card is delivered by the :abbr:`FPS (Service
Public Federal Finances)` upon `registration <https://www.systemedecaisseenregistreuse.be/fr/enregistrement>`_.

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

View File

@ -22,4 +22,3 @@ is able to continue working even if you are offline.
point_of_sale/restaurant
point_of_sale/payment
point_of_sale/advanced_pricing_features
point_of_sale/belgian_fdm

View File

@ -1,10 +0,0 @@
:nosearch:
===================
Fiscal Data Modules
===================
.. toctree::
:titlesonly:
belgian_fdm/setup

View File

@ -1,92 +0,0 @@
===================================================
Setting up the Fiscal Data Module with the Odoo POS
===================================================
Introduction
============
The Belgian government requires certain businesses to use a
government-certified device called a **Fiscal Data Module** (also
known as a **blackbox**). This device works together with the POS
application and logs certain transactions. On top of that, the used
POS application must also be certified by the government and must
adhere to strict standards specified by them. `Odoo 9 (Enterprise Edition) is a
certified application
<http://www.systemedecaisseenregistreuse.be/systemes-certifies>`_. More
information concerning the Fiscal Data Module can be found on `the
official website <http://www.systemedecaisseenregistreuse.be/>`_.
Required hardware
=================
* A government certified `Fiscal Data Module
<http://www.systemedecaisseenregistreuse.be/systemes-certifies#FDM%20certifiés>`_
per POS, all of them should work, but the Cleancash SC-B is
recommended, you will also need:
* Serial null modem cable per FDM (`example
<http://www.startech.com/Cables/Serial-Parallel-PS-2/DB9-DB25/10-ft-Cross-Wired-Serial-Null-Modem-Cable-DB9-FM~SCNM9FM>`__)
* Serial-to-USB adapter per FDM (`example
<http://trendnet.com/products/proddetail.asp?prod=265_TU-S9>`__)
* A registered IoT Box per POS configuration
Setup
=====
IoT Box
-------
In order to use a Fiscal Data Module, you will need a registered
IoT Box. These IoT Boxes are similar to the regular IoT Boxes we sell,
but they are registered with the Belgian government. This is required
by law. Attempting to use a Fiscal Data Module on a non-registered
IoT Box will not work. You can verify that the Fiscal Data Module is
recognized by the IoT Box by going to the *Hardware status page* via
the IoT Box homepage.
.. image:: setup/posbox_fdm_hardware_status.png
:align: center
Odoo
----
An Odoo POS app can be given certified POS capabilities by installing
the **Belgian Registered Cash Register** app (technical name:
``pos_blackbox_be``). Because of government restrictions imposed on
us, this installation cannot be undone. After this, you will have to
ensure that each POS configuration has a unique registered IoT Box
associated with it (:menuselection:`Point of Sale --> Configuration
--> Point of Sale` and ensure Hardware Proxy / IoT Box and the serial
number of your IoT Box is set). The first time you open the Point of
Sale and attempt to do a transaction, you will be asked to input the
PIN that you received with your VAT signing card.
.. image:: setup/vat_signing_card_pin.png
:align: center
Certification & On-premise
==========================
The certification granted by the government is restricted to the use on odoo.com
Odoo Online instance. The usage of the module from the source or a modified version
will **not** be certified. For on-premise users, we also support the Fiscal Data
Module in such installations. The main restriction is that this requires an
obfuscated version of the ``pos_blackbox_be`` module we will provide on request
for Enterprise customers.
Restrictions
============
As mentioned before, in order to get certified the POS application
must adhere to strict government guidelines. Because of this, a
certified Odoo POS has some limitations not present in the
non-certified Odoo POS.
* Refunding is disabled
* Modifying orderline prices
* Creating/modifying/deleting POS orders
* Selling products without a valid tax
* Multiple Odoo POS configurations per IoT Box are not allowed
* Using the POS without a connection to the IoT Box (and thus FDM)
* Blacklisted modules: pos_discount, pos_reprint, pos_loyalty

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

View File

@ -35,6 +35,7 @@ applications/finance/accounting/payables/supplier_bills/manage.rst applications/
applications/sales/crm/acquire_leads/generate_from_email.rst applications/sales/crm/acquire_leads/generate_leads.rst # (#986)
applications/sales/crm/acquire_leads/generate_from_website.rst applications/sales/crm/acquire_leads/generate_leads.rst # (#986)
applications/sales/point_of_sale/belgian_fdm/setup.rst applications/finance/fiscal_localizations/belgium.rst
applications/sales/sales/advanced/portal.rst applications/general/users/portal.rst
# developer/howtos