Odoo Community Association

Self-Service Product Weighing

Beta License: AGPL-3 OCA/pos Translate me on Weblate Try me on Runboat

Configure a PoS to be a self-service product weighing station.

This module allows customers to weigh products and print labels with a barcode identifying the product and containing its weight or its price.

Table of contents

Usage

This module allows to generate 2 types of barcodes, depending on type of the barcode nomenclature corresponding to the barcode of the selected product:

  1. Weight barcodes (type weight)
  2. Price barcodes (type price or price_to_weight (see pos_price_to_weight module))

Please note that the weight encoded in weight barcodes is always expressed in kilograms, independently of any configuration. The number of decimal places is defined by the barcode nomenclature corresponding to the barcode of the product.

Depending on the type of the barcode, the value string below the barcode expresses either:

  • The encoded weight in the unit of measure of the product
  • The price (in the currency used by the PoS), followed by the weight in the unit of measure of the product (between parentheses)

For price barcodes, the price encoded in the barcode includes taxes or not, depending on the type of tax used (price_include field) on the product. This is to ensure that the value is correctly interpreted when the barcode is scanned (it is computed in the same way). The value string below the barcode expresses the price with or without taxes depending on the PoS configuration (iface_tax_included field).

Known issues / Roadmap

  • For weight barcodes, if the weight read from the scale has a greater precision than the barcode nomenclature, and the barcode nomenclature a greater precision than the unit of measure rounding, there can be a difference between the price displayed on the scale screen and the price computed when the barcode is scanned, because the value will be rounded once in the scale screen, but twice when using the barcode. For example: the scale returns 1.2345: the scale screen displays 1.23, the barcode encodes 1.235 and when scanned it becomes 1.24.
  • This module has been tested using the kilogram unit of measure. It will probably not work completely correctly using other units of measure, even derived from the kilogram. The scale screen itself (from the point_of_sale module) doesn’t handle units of measure correctly: it considers that the value returned by the scale is in the same unit of measure as the product. For example: with a product using the gram unit of measure, if the scale returns 0.1, the scale screen considers that it is 0.1 gram and displays it like this; however, the weight displayed in the barcode value string will be 100 g and the price will be computed from this, because this module always assumes that the weight returned by the scale is in kilograms.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Coop IT Easy SC

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/pos project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.