diff --git a/addons/point_of_sale/static/src/js/models.js b/addons/point_of_sale/static/src/js/models.js index a81eb81d235..ed772c2d68b 100644 --- a/addons/point_of_sale/static/src/js/models.js +++ b/addons/point_of_sale/static/src/js/models.js @@ -2629,7 +2629,7 @@ exports.Order = Backbone.Model.extend({ var mapped_included_taxes = []; _(taxes).each(function(tax) { var line_taxes = line._map_tax_fiscal_position(tax); - if(tax.price_include && _.contains(line_taxes, tax)){ + if(tax.price_include && !_.contains(line_taxes, tax)){ mapped_included_taxes.push(tax); } @@ -2655,6 +2655,7 @@ exports.Order = Backbone.Model.extend({ attr.pos = this.pos; attr.order = this; var line = new exports.Orderline({}, {pos: this.pos, order: this, product: product}); + this.fix_tax_included_price(line); if(options.quantity !== undefined){ line.set_quantity(options.quantity); @@ -2662,15 +2663,13 @@ exports.Order = Backbone.Model.extend({ if(options.price !== undefined){ line.set_unit_price(options.price); + this.fix_tax_included_price(line); } if(options.lst_price !== undefined){ line.set_lst_price(options.lst_price); } - //To substract from the unit price the included taxes mapped by the fiscal position - this.fix_tax_included_price(line); - if(options.discount !== undefined){ line.set_discount(options.discount); }