Exemple #1
0
 /**
  * It sets card`s data into additional information of payment model
  *
  * @param \Magento\Framework\Object $response
  * @param \Magento\Sales\Model\Order\Payment $payment
  * @return string
  */
 protected function _registerCard(\Magento\Framework\Object $response, \Magento\Sales\Model\Order\Payment $payment)
 {
     $cardsStorage = $this->getCardsStorage($payment);
     $card = $cardsStorage->registerCard();
     $card->setRequestedAmount($response->getRequestedAmount())->setBalanceOnCard($response->getBalanceOnCard())->setLastTransId($response->getTransactionId())->setProcessedAmount($response->getAmount())->setCcType($payment->getCcType())->setCcOwner($payment->getCcOwner())->setCcLast4($payment->getCcLast4())->setCcExpMonth($payment->getCcExpMonth())->setCcExpYear($payment->getCcExpYear())->setCcSsIssue($payment->getCcSsIssue())->setCcSsStartMonth($payment->getCcSsStartMonth())->setCcSsStartYear($payment->getCcSsStartYear());
     $cardsStorage->updateCard($card);
     $this->_clearAssignedData($payment);
     return $card;
 }
Exemple #2
0
 /**
  * Call centinel api authentication method
  *
  * @param \Magento\Framework\Object $data
  * @return \Magento\Framework\Object
  */
 public function callAuthentication($data)
 {
     $result = new \Magento\Framework\Object();
     $clientResponse = $this->_call('cmpi_authenticate', ['TransactionId' => $data->getTransactionId(), 'PAResPayload' => $data->getPaResPayload()]);
     $result->setErrorNo($clientResponse->getValue('ErrorNo'));
     $result->setErrorDesc($clientResponse->getValue('ErrorDesc'));
     $result->setPaResStatus($clientResponse->getValue('PAResStatus'));
     $result->setSignatureVerification($clientResponse->getValue('SignatureVerification'));
     $result->setCavv($clientResponse->getValue('Cavv'));
     $result->setEciFlag($clientResponse->getValue('EciFlag'));
     $result->setXid($clientResponse->getValue('Xid'));
     return $result;
 }
Exemple #3
0
 /**
  * Process authenticate validation
  *
  * @param \Magento\Framework\Object $data
  * @return void
  * @throws \Exception
  */
 public function authenticate($data)
 {
     $validationState = $this->_getValidationState();
     if (!$validationState || $data->getTransactionId() != $validationState->getLookupTransactionId()) {
         throw new \Exception('Authentication impossible: transaction id or validation state is wrong.');
     }
     $api = $this->_getApi();
     $result = $api->callAuthentication($data);
     $validationState->setAuthenticateResult($result);
     if (!$validationState->isAuthenticateSuccessful()) {
         $this->reset();
     }
 }