/** * void * * @access public * @param string $payment Varien_Object object * @return Mage_Payment_Model_Abstract */ public function void(Varien_Object $payment) { $error = false; if ($payment->getVoidTransactionId()) { $api = $this->getApi(); $api->setAuthorizationId($payment->getVoidTransactionId()); if ($api->callDoVoid() !== false) { $payment->setStatus('SUCCESS')->setCcTransId($api->getTransactionId()); } else { $e = $api->getError(); $error = $e['short_message'] . ': ' . $e['long_message']; } } else { $payment->setStatus('ERROR'); $error = AO::helper('paypal')->__('Invalid transaction id'); } if ($error !== false) { AO::throwException($error); } return $this; }
/** * Void the payment transaction * * @param Mage_Sale_Model_Order_Payment $payment * @return Mage_Cybersource_Model_Soap */ public function void(Varien_Object $payment) { $error = false; if ($payment->getVoidTransactionId() && $payment->getVoidCybersourceToken()) { $soapClient = $this->getSoapApi(); $this->iniRequest(); $voidService = new stdClass(); $voidService->run = "true"; $voidService->voidRequestToken = $payment->getVoidCybersourceToken(); $voidService->voidRequestID = $payment->getVoidTransactionId(); $this->_request->voidService = $voidService; try { $result = $soapClient->runTransaction($this->_request); if ($result->reasonCode == self::RESPONSE_CODE_SUCCESS) { $payment->setLastTransId($result->requestID)->setCcTransId($result->requestID)->setCybersourceToken($result->requestToken); } else { $error = Mage::helper('cybersource')->__('There is an error in processing payment. Please try again or contact us.'); } } catch (Exception $e) { Mage::throwException(Mage::helper('cybersource')->__('Gateway request error: %s', $e->getMessage())); } } else { $error = Mage::helper('cybersource')->__('Invalid transaction id or token'); } if ($error !== false) { Mage::throwException($error); } return $this; }
/** * void * * @author Magento Core Team <*****@*****.**> * @access public * @param string $payment Varien_Object object * @return Mage_Payment_Model_Abstract */ public function void(Varien_Object $payment) { $error = false; if ($payment->getVoidTransactionId()) { $payment->setAnetTransType(self::REQUEST_TYPE_VOID); $request = $this->_buildRequest($payment); $request->setXTransId($payment->getVoidTransactionId()); $result = $this->_postRequest($request); if ($result->getResponseCode() == self::RESPONSE_CODE_APPROVED) { $payment->setStatus(self::STATUS_SUCCESS); } else { $payment->setStatus(self::STATUS_ERROR); $error = $result->getResponseReasonText(); } } else { $payment->setStatus(self::STATUS_ERROR); $error = AO::helper('paygate')->__('Invalid transaction id'); } if ($error !== false) { AO::throwException($error); } return $this; }
public function void(Varien_Object $payment) { $error = false; if ($payment->getVoidTransactionId()) { $api = $this->getApi()->setTransactionId($payment->getVoidTransactionId())->setPayment($payment); if ($api->void() !== false) { $payment->setCcTransId($api->getTransactionId()); $payment->setStatus(self::STATUS_VOID); } else { $e = $api->getError(); $error = $e['message']; } } else { $error = Mage::helper('paypalUk')->__('Invalid transaction id'); } if ($error !== false) { Mage::throwException($error); } return $this; }
/** * void * * @access public * @param string $payment Varien_Object object * @return Mage_Payment_Model_Abstract */ public function void(Varien_Object $payment) { $error = false; if ($payment->getVoidTransactionId()) { $payment->setTrxtype(self::TRXTYPE_DELAYED_VOID); $payment->setTransactionId($payment->getVoidTransactionId()); $request = $this->_buildBasicRequest($payment); $result = $this->_postRequest($request); if ($this->getConfigData('debug')) { $payment->setCcDebugRequestBody($result->getRequestBody())->setCcDebugResponseSerialized(serialize($result)); } if ($result->getResultCode() == self::RESPONSE_CODE_APPROVED) { $payment->setStatus(self::STATUS_SUCCESS); $payment->setCcTransId($result->getPnref()); } else { $payment->setStatus(self::STATUS_ERROR); $error = $result->getRespmsg(); } } else { $payment->setStatus(self::STATUS_ERROR); $error = Mage::helper('paygate')->__('Invalid transaction id'); } if ($error !== false) { Mage::throwException($error); } return $this; }