diff --git a/web/org.openbravo.retail.returns/js/modalReturnLines.js b/web/org.openbravo.retail.returns/js/modalReturnLines.js
--- a/web/org.openbravo.retail.returns/js/modalReturnLines.js
+++ b/web/org.openbravo.retail.returns/js/modalReturnLines.js
@@ -483,10 +483,11 @@
                             'promotions': line.promotions,
                             'shipmentlineId': line.shipmentlineId,
                             'relatedLines': line.relatedLines
+                          }, function () {
+                            me.args.args.cancelOperation = true;
+                            OB.UTIL.HookManager.callbackExecutor(me.args.args, me.args.callbacks);
+                            finishOrder();
                           });
-                          me.args.args.cancelOperation = true;
-                          OB.UTIL.HookManager.callbackExecutor(me.args.args, me.args.callbacks);
-                          finishOrder();
                           };
 
                       _.each(line.promotions, function (promotion) {
