diff --git a/web/org.openbravo.retail.posterminal/js/pointofsale/view/keyboardorder.js b/web/org.openbravo.retail.posterminal/js/pointofsale/view/keyboardorder.js
--- a/web/org.openbravo.retail.posterminal/js/pointofsale/view/keyboardorder.js
+++ b/web/org.openbravo.retail.posterminal/js/pointofsale/view/keyboardorder.js
@@ -495,8 +495,18 @@
   },
 
   findProductByBarcode: function (code, callback) {
+    var me = this;
     OB.debug('BarcodeActionHandler - id: ' + code);
-    this.searchProduct(code, callback);
+    OB.UTIL.HookManager.executeHooks('OBPOS_PostBarcodeScan', {
+      context: me,
+      code: code,
+      callback: callback
+    }, function (args) {
+      if (args.cancellation) {
+        return;
+      }
+      me.searchProduct(args.code, args.callback);
+    });
   },
 
   searchProduct: function (code, callback) {
