getBaseCurrency()->formatTxt($amount); if ($payment->getIsTransactionPending()) { $message = __( 'An amount of %1 will be captured after being approved at the payment gateway.', $formattedAmount ); $state = SalesOrder::STATE_PAYMENT_REVIEW; if ($payment->getIsFraudDetected()) { $status = SalesOrder::STATUS_FRAUD; } } else { // normal online capture: invoice is marked as "paid" $message = __('Captured amount of %1 online', $formattedAmount); } $this->setOrderStateAndStatus($order, $status, $state); return $message; } /** * @param SalesOrder $order * @param string $status * @param string $state * @return void */ protected function setOrderStateAndStatus(SalesOrder $order, $status, $state) { if (!$status) { $status = $order->getConfig()->getStateDefaultStatus($state); } $order->setState($state)->setStatus($status); } }