subjectReader = $subjectReader; } /** * @inheritdoc */ public function build(array $buildSubject) { $paymentDO = $this->subjectReader->readPayment($buildSubject); $payment = $paymentDO->getPayment(); $transactionId = $payment->getCcTransId(); if (!$transactionId) { throw new LocalizedException(__('No authorization transaction to proceed capture.')); } return [ self::TRANSACTION_ID => $transactionId, PaymentDataBuilder::AMOUNT => $this->formatPrice($this->subjectReader->readAmount($buildSubject)) ]; } }