Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
965524f
[ADD] pos_require_product_quantity
robinkeunen Feb 27, 2019
7a6cc34
[ADD] pos_require_product_quantity: readme.rst
robinkeunen Mar 11, 2019
22af398
[MIG] pos_require_product_quantity: v9 to v12
mclaeysb May 13, 2020
02cd31b
Update pos_require_product_quantity/static/src/xml/templates.xml
May 15, 2020
3b54e80
[FIX] fix problem during js file import
houssine78 May 15, 2020
401811b
Added translation using Weblate (Spanish)
danimv5 Jul 27, 2020
8846c2c
[FIX] include returns 'undefined'; which is overwriting the screens.A…
ivantodorovich Feb 10, 2021
6709ce6
[IMP] Rename js file to 'screens', and return original screens
ivantodorovich Feb 10, 2021
8de6c76
[IMP] Simplify code by using underscore methods
ivantodorovich Feb 10, 2021
d8b4394
[IMP] pos_require_product_quantity: isort, black, prettier.
fshah-initos Apr 29, 2021
afd5e5d
[MIG] Migrate module pos_require_product_quantity to v14.
fshah-initos Apr 29, 2021
058893a
Added translation using Weblate (Portuguese)
pedrocs-exo Feb 1, 2022
63a675d
Added translation using Weblate (Italian)
mymage Mar 9, 2023
d5d7176
Update translation files
weblate Oct 9, 2023
a65e638
[MIG] pos_require_product_quantity: Migration to 16.0
mihien Nov 12, 2025
81b971b
[UPD] Update pos_require_product_quantity.pot
Apr 7, 2026
c619c61
[BOT] post-merge updates
OCA-git-bot Apr 7, 2026
676d955
Translated using Weblate (Spanish)
ferdymercury Apr 13, 2026
ae4cc97
[IMP] pos_require_product_quantity: pre-commit auto fixes
P-H-Phuc May 28, 2026
3a4e26c
[MIG] pos_require_product_quantity: Migration to 18.0
P-H-Phuc May 28, 2026
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
96 changes: 96 additions & 0 deletions pos_require_product_quantity/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
===============================
Require Product Quantity in POS
===============================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:bcd7e5bc214d8bc45951305e61c4de51f6069a3f08f07f52c58a36b481c10659
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fpos-lightgray.png?logo=github
:target: https://github.com/OCA/pos/tree/18.0/pos_require_product_quantity
:alt: OCA/pos
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/pos-18-0/pos-18-0-pos_require_product_quantity
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/pos&target_branch=18.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module forbids adding empty order lines on POS orders.

When clicking on the "Payment" button in the Point of Sale, a popup is
shown if product quantity for one or more order lines is set to 0.

**Table of contents**

.. contents::
:local:

Usage
=====

To enable the feature, go to **Point of Sale** → **Configuration** →
**Settings**, select your POS, and enable **Require Product Quantity**
under the *Product Prices* section.

Once enabled, if a cashier clicks the **Payment** button while one or
more order lines have a quantity of 0, an alert dialog is shown listing
the affected products. The payment screen will not open until all
quantities are set to a non-zero value.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/pos/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 <https://github.com/OCA/pos/issues/new?body=module:%20pos_require_product_quantity%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

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

Credits
=======

Authors
-------

* Coop IT Easy SCRLfs

Contributors
------------

- Robin Keunen <robin.keunen@coopiteasy.be>
- Iván Todorovich <ivan.todorovich@gmail.com>
- Foram Shah <foram.shah@initos.com>
- `Trobz <https://www.trobz.com>`__:

- Phan Hong Phuc <phucph@trobz.com>

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

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 <https://github.com/OCA/pos/tree/18.0/pos_require_product_quantity>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions pos_require_product_quantity/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
27 changes: 27 additions & 0 deletions pos_require_product_quantity/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Copyright 2019-2020 Coop IT Easy SCRLfs
# Robin Keunen <robin@coopiteasy.be>
# Simon Hick <simon.hick@coopiteasy.be>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
"name": "Require Product Quantity in POS",
"version": "18.0.1.0.0",
"author": "Coop IT Easy SCRLfs, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/pos",
"license": "AGPL-3",
"category": "Point of Sale",
"summary": """
A popup is shown if product quantity is set to 0 for one or more order
lines when clicking on "Payment" button.
""",
"depends": [
"point_of_sale",
],
"data": [
"views/res_config_settings_views.xml",
],
"assets": {
"point_of_sale._assets_pos": [
"pos_require_product_quantity/static/src/overrides/pos_store.esm.js",
]
},
}
65 changes: 65 additions & 0 deletions pos_require_product_quantity/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * pos_require_product_quantity
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2026-04-13 08:45+0000\n"
"Last-Translator: ferdymercury <fernando.hueso@uv.es>\n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.15.2\n"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config__display_name
msgid "Display Name"
msgstr "Nombre mostrado"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config__id
msgid "ID"
msgstr "ID"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config____last_update
msgid "Last Modified on"
msgstr "Última modificación a"

#. module: pos_require_product_quantity
#. openerp-web
#: code:addons/pos_require_product_quantity/static/src/js/screens.js:0
#, python-format
msgid "Missing quantities"
msgstr "Cantidades faltantes"

#. module: pos_require_product_quantity
#. openerp-web
#: code:addons/pos_require_product_quantity/static/src/js/screens.js:0
#, python-format
msgid "No quantity set for products:"
msgstr "No hay cantidad establecida para productos:"

#. module: pos_require_product_quantity
#: model:ir.model,name:pos_require_product_quantity.model_pos_config
msgid "Point of Sale Configuration"
msgstr "Configuración del punto de venta"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config__require_product_quantity
msgid "Require product quantity in POS"
msgstr "Requerir cantidad de producto en PdV"

#. module: pos_require_product_quantity
#: model_terms:ir.ui.view,arch_db:pos_require_product_quantity.pos_config_view_form
msgid ""
"Show pop-up when product quantity is set to 0 for one or more order lines "
"when clicking on \"Payment\" button."
msgstr ""
"Mostrar ventana emergente cuando la cantidad del producto se establece en 0 "
"para una o más líneas de pedido al hacer clic en el botón \"Pago\"."
54 changes: 54 additions & 0 deletions pos_require_product_quantity/i18n/fr.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * pos_require_product_quantity
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 18.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-07-02 04:17+0000\n"
"PO-Revision-Date: 2026-07-02 04:17+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: pos_require_product_quantity
#: model:ir.model,name:pos_require_product_quantity.model_res_config_settings
msgid "Config Settings"
msgstr "Paramètres de configuration"

#. module: pos_require_product_quantity
#. odoo-javascript
#: code:addons/pos_require_product_quantity/static/src/overrides/pos_store.esm.js:0
msgid "Missing quantities"
msgstr "Attention quantités manquantes"

#. module: pos_require_product_quantity
#. odoo-javascript
#: code:addons/pos_require_product_quantity/static/src/overrides/pos_store.esm.js:0
msgid "No quantity set for products:"
msgstr "Corriger quantité à 0 pour les produits suivants:"

#. module: pos_require_product_quantity
#: model:ir.model,name:pos_require_product_quantity.model_pos_config
msgid "Point of Sale Configuration"
msgstr "Configuration du point de vente"

#. module: pos_require_product_quantity
#: model_terms:ir.ui.view,arch_db:pos_require_product_quantity.res_config_settings_view_form
msgid "Require Product Quantity"
msgstr "Exiger la quantité de produit"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config__require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_res_config_settings__pos_require_product_quantity
msgid "Require product quantity in POS"
msgstr "Exiger la quantité de produit en PDV"

#. module: pos_require_product_quantity
#: model_terms:ir.ui.view,arch_db:pos_require_product_quantity.res_config_settings_view_form
msgid "The products added to the order must have a quantity of more than 0"
msgstr "Les produits ajoutés à la commande doivent avoir une quantité supérieure à 0"
65 changes: 65 additions & 0 deletions pos_require_product_quantity/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * pos_require_product_quantity
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 14.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2023-03-09 22:22+0000\n"
"Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
"Language-Team: none\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.14.1\n"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config__display_name
msgid "Display Name"
msgstr "Nome visualizzato"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config__id
msgid "ID"
msgstr "ID"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config____last_update
msgid "Last Modified on"
msgstr "Ultima modifica il"

#. module: pos_require_product_quantity
#. openerp-web
#: code:addons/pos_require_product_quantity/static/src/js/screens.js:0
#, python-format
msgid "Missing quantities"
msgstr "Quantità mancanti"

#. module: pos_require_product_quantity
#. openerp-web
#: code:addons/pos_require_product_quantity/static/src/js/screens.js:0
#, python-format
msgid "No quantity set for products:"
msgstr "Quantità non impostata per prodotti:"

#. module: pos_require_product_quantity
#: model:ir.model,name:pos_require_product_quantity.model_pos_config
msgid "Point of Sale Configuration"
msgstr "Configurazione punto vendita"

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config__require_product_quantity
msgid "Require product quantity in POS"
msgstr "Richiede quantità prodotto nel POS"

#. module: pos_require_product_quantity
#: model_terms:ir.ui.view,arch_db:pos_require_product_quantity.pos_config_view_form
msgid ""
"Show pop-up when product quantity is set to 0 for one or more order lines "
"when clicking on \"Payment\" button."
msgstr ""
"Visualizza pop-up quando la quantità prodotto è impostata a 0per uno o più "
"righe ordine quando si clicca il pulsante \"Pagamento\"."
54 changes: 54 additions & 0 deletions pos_require_product_quantity/i18n/pos_require_product_quantity.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * pos_require_product_quantity
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 18.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-07-02 04:17+0000\n"
"PO-Revision-Date: 2026-07-02 04:17+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: pos_require_product_quantity
#: model:ir.model,name:pos_require_product_quantity.model_res_config_settings
msgid "Config Settings"
msgstr ""

#. module: pos_require_product_quantity
#. odoo-javascript
#: code:addons/pos_require_product_quantity/static/src/overrides/pos_store.esm.js:0
msgid "Missing quantities"
msgstr ""

#. module: pos_require_product_quantity
#. odoo-javascript
#: code:addons/pos_require_product_quantity/static/src/overrides/pos_store.esm.js:0
msgid "No quantity set for products:"
msgstr ""

#. module: pos_require_product_quantity
#: model:ir.model,name:pos_require_product_quantity.model_pos_config
msgid "Point of Sale Configuration"
msgstr ""

#. module: pos_require_product_quantity
#: model_terms:ir.ui.view,arch_db:pos_require_product_quantity.res_config_settings_view_form
msgid "Require Product Quantity"
msgstr ""

#. module: pos_require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_pos_config__require_product_quantity
#: model:ir.model.fields,field_description:pos_require_product_quantity.field_res_config_settings__pos_require_product_quantity
msgid "Require product quantity in POS"
msgstr ""

#. module: pos_require_product_quantity
#: model_terms:ir.ui.view,arch_db:pos_require_product_quantity.res_config_settings_view_form
msgid "The products added to the order must have a quantity of more than 0"
msgstr ""
Loading
Loading