Product Sticker

product_sticker
REPOSITORY
REPOSITORYOCA/product-attribute
GIT
GIThttps://github.com/OCA/product-attribute.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/product-attribute/tree/18.0/product_sticker
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYSales Management
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Moduon
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Moduon
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Eduardo de Miguel, Andrii Kompaniiets
WEBSITE
WEBSITEhttps://github.com/OCA/product-attribute
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:12
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - uom
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
With this module you can add **stickers** (aka Images) to Product
Attributes, Product Attributes Values or Categories. Also you can put a
text below the sticker if you want.

A sticker could be the image of a stamps, certifications or other images
related to a product (but not the image of a product) or an attribute or
a value of an attribute to use for reports o other places in Odoo. For
example: ISO, Ecology, Security, Resistance, etc.

This module by itself does not do anything, it is a base module to be
extended by other modules.

A general use case is: we have the use case than depending of the
attribute of the product or the value of the product it is mandatory
legally print the **sticker** in **Delivery slip** of stock picking.

A specific example of use case: when selling ecological products, the
European Union makes it mandatory to print official [ECO
Logo](https://agriculture.ec.europa.eu/farming/organic-farming/organic-logo_en)
in pickings, and this depends on the product attribute or values. An
apple could be ecologic or not and depending the attribute this should
be printed or not.

Code Analysis

Views touched (9)
XML IDNameModelTypeStatus
product_attribute_view_form product.attribute.sticker.form product.attribute xpath Inherits product.product_attribute_view_form
product_normal_form_view product.product.sticker.form product.product xpath Inherits product.product_normal_form_view
product_sticker_form_view product.sticker.form.view product.sticker form New
product_sticker_kanban_view product.sticker.kanban.view product.sticker kanban New
product_sticker_list_view product.sticker.list.view product.sticker list New
product_sticker_search_view product.sticker.search.view product.sticker search New
product_template_form_view product.template.common.sticker.form product.template xpath Inherits product.product_template_form_view
product_variant_easy_edit_view product.product.view.form.easy product.product xpath Inherits product.product_variant_easy_edit_view
report_sticker_template report_sticker_template ir.ui.view qweb New
Models touched (6)

New fields (1)
  • sticker_ids One2many
    inverse_name='product_attribute_id'
Public methods (0)

No public methods.

New fields (1)
  • sticker_ids One2many
    inverse_name='product_attribute_value_id'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (2)
  • action_view_stickers(self)
    Action to open the Stickers related to this Product
  • get_product_stickers(self, extra_domain=None)
    @api.returns('product.sticker')
    Product Stickers related to this Product Variant and its Template for certain models

New fields (12)
  • available_model_ids Many2many → ir.model
    comodel_name='ir.model' help='Models where this sticker is available. Empty means all models.' string='Available Models'
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> string='Company'
  • image_1920 Image
    required=True
  • image_64 Image
    max_height=64 max_width=64 related='image_1920' store=True string='Small Image'
  • image_size Selection
    default='64' help='Max size of the Sticker. Max Width x Max Height' required=True selection=[('64', '64x64 px'), ('128', '128x128 px'), ('256', '256x256 px'), ('512', '512x512 px'), ('1024', '1024x1024 px'), ('1920', '1920x1920 px')]
  • name Char
    required=True translate=True
  • note Text
    help='Used to display a note with the sticker' translate=True
  • product_attribute_id Many2one → product.attribute
    comodel_name='product.attribute' ondelete='cascade' string='Attribute'
  • product_attribute_value_id Many2one → product.attribute.value
    comodel_name='product.attribute.value' domain="[('attribute_id', '=', product_attribute_id)]" ondelete='cascade' string='Attribute value'
  • product_category_id Many2one → product.category
    comodel_name='product.category' ondelete='cascade' string='Category'
  • sequence Integer
    default=10 index=True
  • show_sticker_note Boolean
    help='If checked, the note will be displayed with the sticker' string='Sticker Note'
Public methods (1)
  • get_image(self)
    Get the image of the sticker

New fields (2)
  • sticker_count Integer
    compute='_compute_sticker_count' store=True
  • sticker_ids One2many → product.sticker
    comodel_name='product.sticker' domain=<expr> string='Product Stickers'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • action_view_stickers(self)
    Action to open the Stickers related to this Product Template
REPOSITORY
REPOSITORYOCA/product-attribute
GIT
GIThttps://github.com/OCA/product-attribute.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/product-attribute/tree/16.0/product_sticker
VERSION
VERSION 3.0.0
CATEGORY
CATEGORYSales Management
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Moduon
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Moduon
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Eduardo De Miguel
WEBSITE
WEBSITEhttps://github.com/OCA/product-attribute
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:48
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
product_attribute_view_form product.attribute.sticker.form product.attribute xpath Inherits product.product_attribute_view_form
product_sticker_form_view product.sticker.form.view product.sticker form New
product_sticker_kanban_view product.sticker.kanban.view product.sticker kanban New
product_sticker_search_view product.sticker.search.view product.sticker search New
product_sticker_tree_view product.sticker.form.view product.sticker tree New
product_template_form_view product.template.common.sticker.form product.template xpath Inherits product.product_template_form_view
report_sticker_template report_sticker_template ir.ui.view qweb New
Models touched (6)

New fields (1)
  • sticker_ids One2many
    inverse_name='product_attribute_id'
Public methods (0)

No public methods.

New fields (1)
  • sticker_ids One2many
    inverse_name='product_attribute_value_id'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (2)
  • action_view_stickers(self)
    Action to open the Stickers related to this Product
  • get_product_stickers(self, extra_domain=None)
    @api.returns('product.sticker')
    Product Stickers related to this Product Variant and its Template for certain models

New fields (12)
  • available_model_ids Many2many → ir.model
    comodel_name='ir.model' help='Models where this sticker is available. Empty means all models.' string='Available Models'
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> string='Company'
  • image_1920 Image
    required=True
  • image_64 Image
    max_height=64 max_width=64 related='image_1920' store=True
  • image_size Selection
    default='64' help='Max size of the Sticker. Max Width x Max Height' required=True selection=[('64', '64x64 px'), ('128', '128x128 px'), ('256', '256x256 px'), ('512', '512x512 px'), ('1024', '1024x1024 px'), ('1920', '1920x1920 px')]
  • name Char
    required=True translate=True
  • note Text
    help='Used to display a note with the sticker' translate=True
  • product_attribute_id Many2one → product.attribute
    comodel_name='product.attribute' ondelete='cascade' string='Attribute'
  • product_attribute_value_id Many2one → product.attribute.value
    comodel_name='product.attribute.value' domain="[('attribute_id', '=', product_attribute_id)]" ondelete='cascade' string='Attribute value'
  • product_category_id Many2one → product.category
    comodel_name='product.category' ondelete='cascade' string='Category'
  • sequence Integer
    default=10 index=True
  • show_sticker_note Boolean
    help='If checked, the note will be displayed with the sticker' string='Sticker Note'
Public methods (1)
  • get_image(self)
    Get the image of the sticker

New fields (2)
  • sticker_count Integer
    compute='_compute_sticker_count' store=True
  • sticker_ids One2many → product.sticker
    comodel_name='product.sticker' domain=<expr> string='Product Stickers'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • action_view_stickers(self)
    Action to open the Stickers related to this Product Template
REPOSITORY
REPOSITORYOCA/product-attribute
GIT
GIThttps://github.com/OCA/product-attribute.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/product-attribute/tree/15.0/product_sticker
VERSION
VERSION 1.1.0
CATEGORY
CATEGORYSales Management
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Moduon
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Moduon
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Eduardo De Miguel
WEBSITE
WEBSITEhttps://github.com/OCA/product-attribute
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:35
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
product_attribute_view_form product.attribute.sticker.form product.attribute xpath Inherits product.product_attribute_view_form
product_sticker_form_view product.sticker.form.view product.sticker form New
product_sticker_kanban_view product.sticker.kanban.view product.sticker kanban New
product_sticker_search_view product.sticker.search.view product.sticker search New
product_sticker_tree_view product.sticker.form.view product.sticker tree New
product_template_form_view product.template.common.sticker.form product.template xpath Inherits product.product_template_form_view
Models touched (6)

New fields (1)
  • sticker_ids One2many
    inverse_name='product_attribute_id'
Public methods (0)

No public methods.

New fields (1)
  • sticker_ids One2many
    inverse_name='product_attribute_value_id'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (2)
  • action_view_stickers(self)
    Action to open the Stickers related to this Product
  • get_product_stickers(self)
    @api.returns('product.sticker')
    Product Stickers related to this Product Variant and its Template

New fields (10)
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> string='Company'
  • image_1920 Image
    required=True
  • image_64 Image
    max_height=64 max_width=64 related='image_1920' store=True
  • name Char
    required=True translate=True
  • note Text
    help='Used to display a note with the sticker' translate=True
  • product_attribute_id Many2one → product.attribute
    comodel_name='product.attribute' ondelete='cascade' string='Attribute'
  • product_attribute_value_id Many2one → product.attribute.value
    comodel_name='product.attribute.value' domain="[('attribute_id', '=', product_attribute_id)]" ondelete='cascade' string='Attribute value'
  • product_category_id Many2one → product.category
    comodel_name='product.category' ondelete='cascade' string='Category'
  • sequence Integer
    default=10 index=True
  • show_sticker_note Boolean
    help='If checked, the note will be displayed with the sticker' string='Sticker Note'
Public methods (0)

No public methods.

New fields (2)
  • sticker_count Integer
    compute='_compute_sticker_count' store=True
  • sticker_ids One2many → product.sticker
    comodel_name='product.sticker' domain=<expr> string='Product Stickers'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (2)
  • action_view_stickers(self)
    Action to open the Stickers related to this Product Template
  • get_product_stickers(self)
    @api.returns('product.sticker')
    Attribute Stickers related to this Product Template and its variants