diff --git a/web/com.openbravo.decathlon.retail.scancustomizations/js/barcodeScanHook.js b/web/com.openbravo.decathlon.retail.scancustomizations/js/barcodeScanHook.js
index 5fbda49..8e8c80d 100644
--- a/web/com.openbravo.decathlon.retail.scancustomizations/js/barcodeScanHook.js
+++ b/web/com.openbravo.decathlon.retail.scancustomizations/js/barcodeScanHook.js
@@ -97,11 +97,20 @@ OB.UTIL.HookManager.registerHook('OBPOS_BarcodeScan', function(
               const existingAddedProduct = OB.MobileApp.model.receipt.get(
                 'DECSCAddedProduct'
               );
-              const existingSerial = !!existingAddedProduct.find(
-                e =>
-                  e.obposSerialNumber === sNumber &&
-                  e.searchkey === data.models[0].get('searchkey')
-              );
+              const existingSerial =
+                !!existingAddedProduct.find(
+                  e =>
+                    e.obposSerialNumber === sNumber &&
+                    e.searchkey === data.models[0].get('searchkey')
+                ) ||
+                OB.MobileApp.model.receipt
+                  .get('lines')
+                  .models.find(
+                    l =>
+                      l.get('obposSerialNumber') === sNumber &&
+                      l.get('product').get('searchkey') ===
+                        data.models[0].get('searchkey')
+                  );
 
               if (!existingSerial) {
                 existingAddedProduct.push({
@@ -175,11 +184,20 @@ OB.UTIL.HookManager.registerHook('OBPOS_BarcodeScan', function(
                           const existingAddedProduct = OB.MobileApp.model.receipt.get(
                             'DECSCAddedProduct'
                           );
-                          const existingSerial = !!existingAddedProduct.find(
-                            e =>
-                              e.obposSerialNumber === sNumber &&
-                              e.searchkey === data.models[0].get('searchkey')
-                          );
+                          const existingSerial =
+                            !!existingAddedProduct.find(
+                              e =>
+                                e.obposSerialNumber === sNumber &&
+                                e.searchkey === data.models[0].get('searchkey')
+                            ) ||
+                            OB.MobileApp.model.receipt
+                              .get('lines')
+                              .models.find(
+                                l =>
+                                  l.get('obposSerialNumber') === sNumber &&
+                                  l.get('product').get('searchkey') ===
+                                    data.models[0].get('searchkey')
+                              );
 
                           if (!existingSerial) {
                             existingAddedProduct.push({
@@ -234,12 +252,22 @@ OB.UTIL.HookManager.registerHook('OBPOS_BarcodeScan', function(
                                 const existingAddedProduct = OB.MobileApp.model.receipt.get(
                                   'DECSCAddedProduct'
                                 );
-                                const existingSerial = !!existingAddedProduct.find(
-                                  e =>
-                                    e.obposSerialNumber === sNumber &&
-                                    e.searchkey ===
-                                      found.models[0].get('searchkey')
-                                );
+                                const existingSerial =
+                                  !!existingAddedProduct.find(
+                                    e =>
+                                      e.obposSerialNumber === sNumber &&
+                                      e.searchkey ===
+                                        found.models[0].get('searchkey')
+                                  ) ||
+                                  OB.MobileApp.model.receipt
+                                    .get('lines')
+                                    .models.find(
+                                      l =>
+                                        l.get('obposSerialNumber') ===
+                                          sNumber &&
+                                        l.get('product').get('searchkey') ===
+                                          found.models[0].get('searchkey')
+                                    );
                                 if (!existingSerial) {
                                   existingAddedProduct.push({
                                     obposSerialNumber: sNumber,
@@ -308,11 +336,20 @@ OB.UTIL.HookManager.registerHook('OBPOS_BarcodeScan', function(
                           const existingAddedProduct = OB.MobileApp.model.receipt.get(
                             'DECSCAddedProduct'
                           );
-                          const existingSerial = !!existingAddedProduct.find(
-                            e =>
-                              e.obposSerialNumber === sNumber &&
-                              e.searchkey === found.models[0].get('searchkey')
-                          );
+                          const existingSerial =
+                            !!existingAddedProduct.find(
+                              e =>
+                                e.obposSerialNumber === sNumber &&
+                                e.searchkey === found.models[0].get('searchkey')
+                            ) ||
+                            OB.MobileApp.model.receipt
+                              .get('lines')
+                              .models.find(
+                                l =>
+                                  l.get('obposSerialNumber') === sNumber &&
+                                  l.get('product').get('searchkey') ===
+                                    found.models[0].get('searchkey')
+                              );
                           if (!existingSerial) {
                             existingAddedProduct.push({
                               obposSerialNumber: sNumber,
