diff --git a/web/org.openbravo.mobile.core/source/model/ob-terminal-model.js b/web/org.openbravo.mobile.core/source/model/ob-terminal-model.js
--- a/web/org.openbravo.mobile.core/source/model/ob-terminal-model.js
+++ b/web/org.openbravo.mobile.core/source/model/ob-terminal-model.js
@@ -1702,7 +1702,8 @@
   },
 
   hasPermission: function (p, checkForAutomaticRoles) {
-    return (!checkForAutomaticRoles && !this.get('context').role.manual) || this.get('permissions')[p];
+    var permission = p.approval ? p.approval : p;
+    return (!checkForAutomaticRoles && !this.get('context').role.manual) || this.get('permissions')[permission];
   },
 
   supportLogClient: function () {
