diff --git a/src/org/openbravo/retail/posterminal/ExternalOrderLoader.java b/src/org/openbravo/retail/posterminal/ExternalOrderLoader.java
index 86a4951bb..fc69a7bbb 100644
--- a/src/org/openbravo/retail/posterminal/ExternalOrderLoader.java
+++ b/src/org/openbravo/retail/posterminal/ExternalOrderLoader.java
@@ -485,7 +485,7 @@ public class ExternalOrderLoader extends OrderLoader {
         }
 
         // In case of cancel layaway, validate and transform canceledorder
-        if (order.has("step") && CANCEL.equals(order.getString("step"))) {
+        if (order.has("step") && (CANCEL.equals(order.getString("step")))) {
           if (order.has("canceledorder")) {
             JSONObject cancelledOrder = order.getJSONObject("canceledorder");
             validateCancelHeader(cancelledOrder);
@@ -505,6 +505,7 @@ public class ExternalOrderLoader extends OrderLoader {
         }
         if (order.has("step") && CANCEL_REPLACE.equals(order.getString("step"))) {
           order.put("doCancelAndReplace", true);
+          order.put("bypassConcurrentModificationCheck", true);
         }
         transformOrder(data.getJSONObject(i));
       }
diff --git a/src/org/openbravo/retail/posterminal/OrderLoader.java b/src/org/openbravo/retail/posterminal/OrderLoader.java
index 68d1ec2f2..8bc9d3b18 100644
--- a/src/org/openbravo/retail/posterminal/OrderLoader.java
+++ b/src/org/openbravo/retail/posterminal/OrderLoader.java
@@ -253,7 +253,9 @@ public class OrderLoader extends POSDataSynchronizationProcess
         }
       }
 
-      if (!isDeleted && (doCancelAndReplace || doCancelLayaway)) {
+      if ((!jsonorder.has("bypassConcurrentModificationCheck")
+          || !jsonorder.getBoolean("bypassConcurrentModificationCheck")) && !isDeleted
+          && (doCancelAndReplace || doCancelLayaway)) {
         // Do not allow to do a C&R in the case that the order was not updated
         final JSONObject canceledOrderJSON = jsonorder.getJSONObject("canceledorder");
         canceledOrder = OBDal.getInstance().get(Order.class, canceledOrderJSON.getString("id"));
