diff --git a/web/org.openbravo.retail.posterminal/js/closecash/model/closecash-model.js b/web/org.openbravo.retail.posterminal/js/closecash/model/closecash-model.js
index e905649da..53b7369db 100644
--- a/web/org.openbravo.retail.posterminal/js/closecash/model/closecash-model.js
+++ b/web/org.openbravo.retail.posterminal/js/closecash/model/closecash-model.js
@@ -70,7 +70,13 @@ OB.OBPOSCloseCash.Model.CloseCash = OB.Model.TerminalWindowModel.extend({
     this.finishLoad();
   },
   loadModels: function(loadModelsCallback) {
-    loadModelsCallback();
+    if (OB && OB.Taxes && OB.Taxes.Pos && !OB.Taxes.Pos.ruleImpls) {
+      OB.Taxes.Pos.initCache(function() {
+        loadModelsCallback();
+      });
+    } else {
+      loadModelsCallback();
+    }
   },
   finishLoad: function() {
     let finish = true;
diff --git a/web/org.openbravo.retail.posterminal/js/data/dataordertaxes.js b/web/org.openbravo.retail.posterminal/js/data/dataordertaxes.js
index 125e681a6..4805eeec1 100644
--- a/web/org.openbravo.retail.posterminal/js/data/dataordertaxes.js
+++ b/web/org.openbravo.retail.posterminal/js/data/dataordertaxes.js
@@ -122,7 +122,7 @@
   const initializeTaxes = function(receipt) {
     receipt.set(
       {
-        taxes: []
+        taxes: {}
       },
       {
         silent: true
