diff --git a/web/org.openbravo.retail.posterminal/js/components/businesspartner.js b/web/org.openbravo.retail.posterminal/js/components/businesspartner.js
--- a/web/org.openbravo.retail.posterminal/js/components/businesspartner.js
+++ b/web/org.openbravo.retail.posterminal/js/components/businesspartner.js
@@ -121,7 +121,8 @@
     onClearAction: ''
   },
   handlers: {
-    onSearchActionByKey: 'searchAction'
+    onSearchActionByKey: 'searchAction',
+    onFiltered: 'searchAction'
   },
   components: [{
     style: 'padding: 10px;',
@@ -130,7 +131,7 @@
       components: [{
         style: 'display: table-cell; width: 100%;',
         components: [{
-          kind: 'OB.UI.SearchInput',
+          kind: 'OB.UI.SearchInputAutoFilter',
           name: 'filterText',
           style: 'width: 100%',
           onchange: 'searchAction'
@@ -178,6 +179,7 @@
     this.doSearchAction({
       bpName: this.$.filterText.getValue()
     });
+    return true;
   }
 });
 
diff --git a/web/org.openbravo.retail.posterminal/js/components/commonbuttons.js b/web/org.openbravo.retail.posterminal/js/components/commonbuttons.js
--- a/web/org.openbravo.retail.posterminal/js/components/commonbuttons.js
+++ b/web/org.openbravo.retail.posterminal/js/components/commonbuttons.js
@@ -483,6 +483,28 @@
 });
 
 enyo.kind({
+  name: 'OB.UI.SearchInputAutoFilter',
+  kind: 'enyo.Input',
+  type: 'text',
+  classes: 'input',
+  attributes: {
+    'x-webkit-speech': 'x-webkit-speech'
+  },
+  events: {
+    onFiltered: ''
+  },
+  input: function () {
+    var temp = this.getValue(),
+        me = this;
+    setTimeout(function () {
+      if (temp === me.getValue()) {
+        me.doFiltered();
+      }
+    }, 750);
+  }
+});
+
+enyo.kind({
   name: 'OB.UI.MenuAction',
   permission: null,
   components: [{
diff --git a/web/org.openbravo.retail.posterminal/js/components/modalpaidreceipts.js b/web/org.openbravo.retail.posterminal/js/components/modalpaidreceipts.js
--- a/web/org.openbravo.retail.posterminal/js/components/modalpaidreceipts.js
+++ b/web/org.openbravo.retail.posterminal/js/components/modalpaidreceipts.js
@@ -18,6 +18,9 @@
     onSearchAction: '',
     onClearAction: ''
   },
+  handlers: {
+    onFiltered: 'searchAction'
+  },
   components: [{
     style: 'padding: 10px;',
     components: [{
@@ -25,7 +28,7 @@
       components: [{
         style: 'display: table-cell; width: 100%;',
         components: [{
-          kind: 'OB.UI.SearchInput',
+          kind: 'OB.UI.SearchInputAutoFilter',
           name: 'filterText',
           style: 'width: 100%',
           onchange: 'searchAction'
@@ -166,6 +169,7 @@
     this.doSearchAction({
       filters: this.filters
     });
+    return true;
   }
 });
 
diff --git a/web/org.openbravo.retail.posterminal/js/components/searchproducts.js b/web/org.openbravo.retail.posterminal/js/components/searchproducts.js
--- a/web/org.openbravo.retail.posterminal/js/components/searchproducts.js
+++ b/web/org.openbravo.retail.posterminal/js/components/searchproducts.js
@@ -16,6 +16,9 @@
     onSearchAction: '',
     onClearAction: ''
   },
+  handlers: {
+    onFiltered: 'searchAction'
+  },
   components: [{
     style: 'padding: 10px 10px 5px 10px;',
     components: [{
@@ -23,7 +26,7 @@
       components: [{
         style: 'display: table-cell; width: 100%;',
         components: [{
-          kind: 'OB.UI.SearchInput',
+          kind: 'OB.UI.SearchInputAutoFilter',
           name: 'productname',
           style: 'width: 100%;',
           onchange: 'searchAction'
@@ -80,6 +83,7 @@
       productCat: this.$.productcategory.getValue(),
       productName: this.$.productname.getValue()
     });
+    return true;
   },
   clearAction: function () {
     this.$.productname.setValue('');
diff --git a/web/org.openbravo.retail.posterminal/js/pointofsale/view/subwindows/customers/customersadvancedsearch.js b/web/org.openbravo.retail.posterminal/js/pointofsale/view/subwindows/customers/customersadvancedsearch.js
--- a/web/org.openbravo.retail.posterminal/js/pointofsale/view/subwindows/customers/customersadvancedsearch.js
+++ b/web/org.openbravo.retail.posterminal/js/pointofsale/view/subwindows/customers/customersadvancedsearch.js
@@ -55,6 +55,9 @@
     onSearchAction: '',
     onClearAction: ''
   },
+  handlers: {
+    onFiltered: 'searchAction'
+  },
   components: [{
     style: 'padding: 10px; 10px; 0px; 10px;',
     components: [{
@@ -62,7 +65,7 @@
       components: [{
         style: 'display: table-cell; width: 100%;',
         components: [{
-          kind: 'OB.UI.SearchInput',
+          kind: 'OB.UI.SearchInputAutoFilter',
           name: 'filterText',
           style: 'width: 100%',
           onchange: 'searchAction',
@@ -96,6 +99,7 @@
       bpName: this.$.filterText.getValue(),
       operator: OB.Dal.CONTAINS
     });
+    return true;
   }
 });
 
