_initOrder(); $resultRedirect = $this->resultRedirectFactory->create(); if ($order) { try { // workaround for backwards compatibility $order->getPayment()->void(new \Magento\Framework\DataObject()); $order->save(); $this->messageManager->addSuccessMessage(__('The payment has been voided.')); } catch (\Magento\Framework\Exception\LocalizedException $e) { $this->messageManager->addErrorMessage($e->getMessage()); } catch (\Exception $e) { $this->messageManager->addErrorMessage(__('We can\'t void the payment right now.')); $this->_objectManager->get(\Psr\Log\LoggerInterface::class)->critical($e); } $resultRedirect->setPath('sales/*/view', ['order_id' => $order->getId()]); return $resultRedirect; } $resultRedirect->setPath('sales/*/'); return $resultRedirect; } }