subjectReader = $subjectReader; } /** * @inheritdoc */ public function handle(array $handlingSubject, array $response): void { $paymentDO = $this->subjectReader->readPayment($handlingSubject); $payment = $paymentDO->getPayment(); $transactionResponse = $response['transactionResponse']; if ($payment instanceof Payment) { if (!$payment->getParentTransactionId() || $transactionResponse['transId'] != $payment->getParentTransactionId() ) { $payment->setTransactionId($transactionResponse['transId']); } $payment->setTransactionAdditionalInfo( 'real_transaction_id', $transactionResponse['transId'] ); } } }