subjectReader = $subjectReader; } /** * @inheritdoc */ public function handle(array $handlingSubject, array $response): void { $paymentDO = $this->subjectReader->readPayment($handlingSubject); $payment = $paymentDO->getPayment(); if ($payment instanceof Payment) { $paymentDO = $this->subjectReader->readPayment($handlingSubject); $payment = $paymentDO->getPayment(); $status = $response['transaction']['transactionStatus']; // This data is only used when updating the order payment via Get Payment Update if (!in_array($status, self::REVIEW_PENDING_STATUSES)) { $denied = in_array($status, self::REVIEW_DECLINED_STATUSES); $payment->setData('is_transaction_denied', $denied); $payment->setData('is_transaction_approved', !$denied); } } } }