diff --git a/modules/ticket/back/methods/ticket/componentUpdate.js b/modules/ticket/back/methods/ticket/componentUpdate.js
index baa6a0b41b..e33428bf03 100644
--- a/modules/ticket/back/methods/ticket/componentUpdate.js
+++ b/modules/ticket/back/methods/ticket/componentUpdate.js
@@ -137,9 +137,11 @@ module.exports = Self => {
                 const params = [args.id, args.shipped, args.warehouseFk];
                 const [salesMovable] = await Self.rawSql(query, params, myOptions);
 
+                const sales = await models.Sale.find({ticketFk: args.id}, myOptions);
                 const salesNewTicket = salesMovable.filter(sale => (sale.movable ? sale.movable : 0) >= sale.quantity);
 
-                if (salesNewTicket.length) {
+                const salesNewTicketLength = salesNewTicket.length;
+                if (salesNewTicketLength && sales.length != salesNewTicketLength) {
                     const newTicket = await models.Ticket.transferSales(ctx, args.id, null, salesNewTicket, myOptions);
                     args.id = newTicket.id;
                 }
diff --git a/modules/ticket/front/basic-data/step-two/index.js b/modules/ticket/front/basic-data/step-two/index.js
index 32d6b2cd69..4ac9f292e6 100644
--- a/modules/ticket/front/basic-data/step-two/index.js
+++ b/modules/ticket/front/basic-data/step-two/index.js
@@ -67,6 +67,7 @@ class Controller extends Component {
     ticketHaveNegatives() {
         let haveNegatives = false;
         let haveNotNegatives = false;
+        this.ticket.withoutNegatives = false;
         const haveDifferences = this.ticket.sale.haveDifferences;
 
         this.ticket.sale.items.forEach(item => {
@@ -76,8 +77,9 @@ class Controller extends Component {
                 haveNotNegatives = true;
         });
 
-        this.ticket.withoutNegatives = true;
         this.haveNegatives = (haveNegatives && haveNotNegatives && haveDifferences);
+        if (this.haveNegatives)
+            this.ticket.withoutNegatives = true;
     }
 
     onSubmit() {