diff --git a/addons/sale_loyalty/i18n/sale_loyalty.pot b/addons/sale_loyalty/i18n/sale_loyalty.pot index 04ac3088d51..a3a0b52ac30 100644 --- a/addons/sale_loyalty/i18n/sale_loyalty.pot +++ b/addons/sale_loyalty/i18n/sale_loyalty.pot @@ -182,6 +182,12 @@ msgstr "" msgid "ID" msgstr "" +#. module: sale_loyalty +#: code:addons/sale_loyalty/models/sale_order.py:0 +#, python-format +msgid "Invalid partner." +msgstr "" + #. module: sale_loyalty #: code:addons/sale_loyalty/models/sale_order.py:0 #, python-format diff --git a/addons/sale_loyalty/models/sale_order.py b/addons/sale_loyalty/models/sale_order.py index b2b6d2fe679..0a08a4e6a3f 100644 --- a/addons/sale_loyalty/models/sale_order.py +++ b/addons/sale_loyalty/models/sale_order.py @@ -947,6 +947,8 @@ class SaleOrder(models.Model): not coupon.program_id.reward_ids or\ not coupon.program_id.filtered_domain(self._get_program_domain()): return {'error': _('This code is invalid (%s).', code), 'not_found': True} + elif coupon.partner_id and coupon.partner_id != self.partner_id: + return {'error': _('Invalid partner.')} elif coupon.expiration_date and coupon.expiration_date < fields.Date.today(): return {'error': _('This coupon is expired.')} elif coupon.points < min(coupon.program_id.reward_ids.mapped('required_points')):