Coupons multi gift in sales

sale_coupon_multi_gift
REPOSITORY
REPOSITORYOCA/sale-promotion
GIT
GIThttps://github.com/OCA/sale-promotion.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/sale-promotion/tree/15.0/sale_coupon_multi_gift
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYSale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, David, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/sale-promotion
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:30
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/sale-promotion:
    - sale_coupon_order_line_link
    - coupon_multi_gift
odoo/odoo:
    - sale_coupon
    - coupon
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - sale
    - sales_team
    - payment
    - utm
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (0)

No views found for this module.

Models touched (3)

New fields (0)

No new fields.

Public methods (1)
  • action_view_sales_orders(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • multi_gift_reward_line_id Many2one → coupon.reward.product_line
    comodel_name='coupon.reward.product_line' readonly=True
  • multi_gift_reward_line_id_option_product_id Many2one → product.product
    comodel_name='product.product' readonly=True
Public methods (1)
  • unlink(self)
    Avoid unlinking valid multi gift lines since they aren't linked to the discount product of the promotion program
REPOSITORY
REPOSITORYOCA/sale-promotion
GIT
GIThttps://github.com/OCA/sale-promotion.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/sale-promotion/tree/14.0/sale_coupon_multi_gift
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYSale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, David, oca-ci, carol, Carol
WEBSITE
WEBSITEhttps://github.com/OCA/sale-promotion
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:40:50
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/sale-promotion:
    - sale_coupon_order_line_link
odoo/odoo:
    - sale_coupon
    - coupon
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - sale
    - sales_team
    - payment
    - utm
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
coupon_program_view_form_common coupon.program xpath Inherits coupon.coupon_program_view_form_common
Models touched (5)

New fields (0)

No new fields.

Public methods (1)
  • action_view_sales_orders(self)

New fields (2)
  • coupon_multi_gift_ids One2many → coupon.reward.product_line
    comodel_name='coupon.reward.product_line' inverse_name='reward_id' string='Gift list'
  • reward_type Selection
    selection_add=[('multi_gift', 'Multi Gift')]
Public methods (1)
  • name_get(self)
    Add complete description for the multi gift reward type.

New fields (4)
  • reward_default_product_id Many2one → product.product
    comodel_name='product.product' compute='_compute_reward_default_product_id' inverse='_inverse_reward_default_product_id' readonly=False
  • reward_id Many2one → coupon.reward
    comodel_name='coupon.reward'
  • reward_product_ids Many2many → product.product
    comodel_name='product.product' help='Reward Product' string='Gift Options'
  • reward_product_quantity Integer
    help='Reward product quantity' string='Quantity'
Public methods (1)
  • onchange_reward_product_ids(self)
    @api.onchange('reward_product_ids')

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • multi_gift_reward_line_id Many2one → coupon.reward.product_line
    comodel_name='coupon.reward.product_line' readonly=True
  • multi_gift_reward_line_id_option_product_id Many2one → product.product
    comodel_name='product.product' readonly=True
Public methods (1)
  • unlink(self)
    Avoid unlinking valid multi gift lines since they aren't linked to the discount product of the promotion program
REPOSITORY
REPOSITORYOCA/sale-promotion
GIT
GIThttps://github.com/OCA/sale-promotion.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/sale-promotion/tree/13.0/sale_coupon_multi_gift
VERSION
VERSION 3.0.0
CATEGORY
CATEGORYSale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSdavid, oca-travis, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/sale-promotion
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:34:09
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/sale-promotion:
    - sale_coupon_order_line_link
odoo/odoo:
    - sale_coupon
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - payment
    - account
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - utm
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
sale_coupon_program_view_form_common sale.coupon.program xpath Inherits sale_coupon.sale_coupon_program_view_form_common
Models touched (5)

New fields (0)

No new fields.

Public methods (1)
  • action_view_sales_orders(self)

New fields (2)
  • coupon_multi_gift_ids One2many → sale.coupon.reward.product_line
    comodel_name='sale.coupon.reward.product_line' inverse_name='reward_id' string='Gift list'
  • reward_type Selection
    selection_add=[('multi_gift', 'Multi Gift')]
Public methods (1)
  • name_get(self)
    Add complete description for the multi gift reward type.

New fields (4)
  • reward_default_product_id Many2one → product.product
    comodel_name='product.product' compute='_compute_reward_default_product_id' inverse='_inverse_reward_default_product_id' readonly=False
  • reward_id Many2one → sale.coupon.reward
    comodel_name='sale.coupon.reward'
  • reward_product_ids Many2many → product.product
    comodel_name='product.product' help='Reward Product' string='Gift Options'
  • reward_product_quantity Integer
    help='Reward product quantity' string='Quantity'
Public methods (1)
  • onchange_reward_product_ids(self)
    @api.onchange('reward_product_ids')

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • multi_gift_reward_line_id Many2one → sale.coupon.reward.product_line
    comodel_name='sale.coupon.reward.product_line' readonly=True
  • multi_gift_reward_line_id_option_product_id Many2one → product.product
    comodel_name='product.product' readonly=True
Public methods (1)
  • unlink(self)
    Avoid unlinking valid multi gift lines since they aren't linked to the discount product of the promotion program