本文整理汇总了PHP中Mage_Sales_Model_Order_Payment::getCcCid方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Sales_Model_Order_Payment::getCcCid方法的具体用法?PHP Mage_Sales_Model_Order_Payment::getCcCid怎么用?PHP Mage_Sales_Model_Order_Payment::getCcCid使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Sales_Model_Order_Payment
的用法示例。
在下文中一共展示了Mage_Sales_Model_Order_Payment::getCcCid方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getVaultParams
/**
* @param Mage_Sales_Model_Order_Payment $payment
* @return array
*/
protected function getVaultParams($payment)
{
$params = array();
$params['card_number'] = $payment->getCcNumber();
$params['card_expiry_month'] = $payment->getCcExpMonth() < 10 ? '0' . $payment->getCcExpMonth() : $payment->getCcExpMonth();
$params['card_expiry_year'] = $payment->getCcExpYear();
$params['cvc'] = $payment->getCcCid();
$params['multi_use'] = 1;
//Add card holder
$billing = $payment->getOrder()->getBillingAddress();
$defaultOwner = $billing->getFirstname() && $billing->getLastname() ? $billing->getFirstname() . ' ' . $billing->getLastname() : $billing->getEmail();
$params['card_holder'] = $payment->getCcOwner() ? $payment->getCcOwner() : $defaultOwner;
$this->_debug($params);
return $params;
}
示例2: _placeOrder
/**
* Place an order with authorization or capture action
*
* @param Mage_Sales_Model_Order_Payment $payment
* @param float $amount
* @return Mage_Paypal_Model_Direct
*/
protected function _placeOrder(Mage_Sales_Model_Order_Payment $payment, $amount)
{
$order = $payment->getOrder();
$api = $this->_pro->getApi()->setPaymentAction($this->_pro->getConfig()->paymentAction)->setIpAddress(Mage::app()->getRequest()->getClientIp(false))->setAmount($amount)->setCurrencyCode($order->getBaseCurrencyCode())->setInvNum($order->getIncrementId())->setEmail($order->getCustomerEmail())->setNotifyUrl(Mage::getUrl('paypal/ipn/'))->setCreditCardType($payment->getCcType())->setCreditCardNumber($payment->getCcNumber())->setCreditCardExpirationDate($this->_getFormattedCcExpirationDate($payment->getCcExpMonth(), $payment->getCcExpYear()))->setCreditCardCvv2($payment->getCcCid())->setMaestroSoloIssueNumber($payment->getCcSsIssue());
if ($payment->getCcSsStartMonth() && $payment->getCcSsStartYear()) {
$year = sprintf('%02d', substr($payment->getCcSsStartYear(), -2, 2));
$api->setMaestroSoloIssueDate($this->_getFormattedCcExpirationDate($payment->getCcSsStartMonth(), $year));
}
if ($this->getIsCentinelValidationEnabled()) {
$this->getCentinelValidator()->exportCmpiData($api);
}
// add shipping and billing addresses
if ($order->getIsVirtual()) {
$api->setAddress($order->getBillingAddress())->setSuppressShipping(true);
} else {
$api->setAddress($order->getShippingAddress());
$api->setBillingAddress($order->getBillingAddress());
}
// add line items
$api->setPaypalCart(Mage::getModel('paypal/cart', array($order)))->setIsLineItemsEnabled($this->_pro->getConfig()->lineItemsEnabled);
// call api and import transaction and other payment information
$api->callDoDirectPayment();
$this->_importResultToPayment($api, $payment);
try {
$api->callGetTransactionDetails();
} catch (Mage_Core_Exception $e) {
// if we recieve errors, but DoDirectPayment response is Success, then set Pending status for transaction
$payment->setIsTransactionPending(true);
}
$this->_importResultToPayment($api, $payment);
return $this;
}
示例3: _placeOrder
/**
* Place an order with authorization or capture action
*
* @param Mage_Sales_Model_Order_Payment $payment
* @param float $amount
* @return Mage_Paypal_Model_Direct
*/
protected function _placeOrder(Mage_Sales_Model_Order_Payment $payment, $amount)
{
$order = $payment->getOrder();
$api = $this->_pro->getApi()->setPaymentAction($this->_pro->getConfig()->paymentAction)->setIpAddress(Mage::app()->getRequest()->getClientIp(false))->setAmount($amount)->setCurrencyCode($order->getBaseCurrencyCode())->setInvNum($order->getIncrementId())->setEmail($order->getCustomerEmail())->setNotifyUrl(Mage::getUrl('paypal/ipn/direct'))->setCreditCardType($payment->getCcType())->setCreditCardNumber($payment->getCcNumber())->setCreditCardExpirationDate(sprintf('%02d%02d', $payment->getCcExpMonth(), $payment->getCcExpYear()))->setCreditCardCvv2($payment->getCcCid());
// add shipping address
if ($order->getIsVirtual()) {
$api->setAddress($order->getBillingAddress())->setSuppressShipping(true);
} else {
$api->setAddress($order->getShippingAddress());
}
// add line items
if ($this->_pro->getConfig()->lineItemsEnabled) {
list($items, $totals) = Mage::helper('paypal')->prepareLineItems($order);
$api->setLineItems($items)->setLineItemTotals($totals);
}
// call api and import transaction and other payment information
$api->callDoDirectPayment();
$payment->setTransactionId($api->getTransactionId())->setIsTransactionClosed(0)->setIsPaid($api->isPaid($api->getPaymentStatus()));
Mage::getModel('paypal/info')->importToPayment($api, $payment);
return $this;
}
示例4: _placeOrder
/**
* Place an order with authorization or capture action
*
* @param Mage_Sales_Model_Order_Payment $payment
* @param float $amount
* @return Mage_Paypal_Model_Direct
*/
protected function _placeOrder(Mage_Sales_Model_Order_Payment $payment, $amount)
{
$order = $payment->getOrder();
$api = $this->_pro->getApi()->setPaymentAction($this->_pro->getConfig()->paymentAction)->setIpAddress(Mage::app()->getRequest()->getClientIp(false))->setAmount($amount)->setCurrencyCode($order->getBaseCurrencyCode())->setInvNum($order->getIncrementId())->setEmail($order->getCustomerEmail())->setNotifyUrl(Mage::getUrl($this->_notifyAction))->setCreditCardType($payment->getCcType())->setCreditCardNumber($payment->getCcNumber())->setCreditCardExpirationDate(sprintf('%02d%02d', $payment->getCcExpMonth(), $payment->getCcExpYear()))->setCreditCardCvv2($payment->getCcCid())->setMaestroSoloIssueNumber($payment->getCcSsIssue());
if ($payment->getCcSsStartMonth() && $payment->getCcSsStartYear()) {
$api->setMaestroSoloIssueDate(sprintf('%02d%02d', $payment->getCcSsStartMonth(), preg_replace('~\\d\\d(\\d\\d)~', '$1', $payment->getCcSsStartYear())));
}
if ($this->getIsCentinelValidationEnabled()) {
$this->getCentinelValidator()->exportCmpiData($api);
}
// add shipping address
if ($order->getIsVirtual()) {
$api->setAddress($order->getBillingAddress())->setSuppressShipping(true);
} else {
$api->setAddress($order->getShippingAddress());
}
// add line items
if ($this->_pro->getConfig()->lineItemsEnabled && Mage::helper('paypal')->doLineItemsMatchAmount($order, $amount)) {
//For transfering line items order amount must be equal to cart total amount
list($items, $totals) = Mage::helper('paypal')->prepareLineItems($order);
$api->setLineItems($items)->setLineItemTotals($totals);
}
// call api and import transaction and other payment information
$api->callDoDirectPayment();
$this->_importResultToPayment($api, $payment);
return $this;
}
示例5: _sale3d
/**
* Genesis Sale (Auth/Capture) Payment Method with 3D-Secure
*
* @param Varien_Object|Mage_Sales_Model_Order_Payment $payment
* @param String $amount
*
* @return EMerchantPay_Genesis_Model_Direct
*/
private function _sale3d($payment, $amount)
{
Mage::log('Sale 3D-Secure transaction for order #' . $payment->getOrder()->getIncrementId());
try {
$this->getHelper()->initClient($this->getCode());
$order = $payment->getOrder();
$billing = $order->getBillingAddress();
$shipping = $order->getShippingAddress();
$genesis = new \Genesis\Genesis('Financial\\Cards\\Sale3D');
$genesis->request()->setTransactionId($this->getHelper()->genTransactionId($order->getIncrementId()))->setRemoteIp($this->getHelper('core/http')->getRemoteAddr(false))->setUsage($this->getHelper()->getItemList($order))->setCurrency($order->getBaseCurrencyCode())->setAmount($amount)->setCardHolder($payment->getCcOwner())->setCardNumber($payment->getCcNumber())->setExpirationYear($payment->getCcExpYear())->setExpirationMonth($payment->getCcExpMonth())->setCvv($payment->getCcCid())->setCustomerEmail($order->getCustomerEmail())->setCustomerPhone($billing->getTelephone())->setBillingFirstName($billing->getData('firstname'))->setBillingLastName($billing->getData('lastname'))->setBillingAddress1($billing->getStreet(1))->setBillingAddress2($billing->getStreet(2))->setBillingZipCode($billing->getPostcode())->setBillingCity($billing->getCity())->setBillingState($billing->getRegion())->setBillingCountry($billing->getCountry())->setShippingFirstName($shipping->getData('firstname'))->setShippingLastName($shipping->getData('lastname'))->setShippingAddress1($shipping->getStreet(1))->setShippingAddress2($shipping->getStreet(2))->setShippingZipCode($shipping->getPostcode())->setShippingCity($shipping->getCity())->setShippingState($shipping->getRegion())->setShippinCountry($shipping->getCountry())->setNotificationUrl($this->getHelper()->getNotifyURL('direct'))->setReturnSuccessUrl($this->getHelper()->getSuccessURL('direct'))->setReturnFailureUrl($this->getHelper()->getFailureURL('direct'));
$genesis->execute();
$this->setGenesisResponse($genesis->response()->getResponseObject());
// Hold transaction creation
$payment->setTransactionId($this->getGenesisResponse()->unique_id)->setIsTransactionClosed(false)->setIsTransactionPending(true)->setPreparedMessage($this->getHelper()->__('3D-Secure: Redirecting customer to a verification page.'))->setTransactionAdditionalInfo(array(Mage_Sales_Model_Order_Payment_Transaction::RAW_DETAILS => $this->getHelper()->getArrayFromGatewayResponse($this->getGenesisResponse())), null);
$payment->save();
if ($this->getGenesisResponse()->status == \Genesis\API\Constants\Transaction\States::DECLINED) {
throw new \Genesis\Exceptions\ErrorAPI($this->getGenesisResponse()->message);
}
// Save the redirect url with our
$this->getHelper()->getCheckoutSession()->setEmerchantPayDirectRedirectUrl($this->getGenesisResponse()->redirect_url);
} catch (Exception $exception) {
Mage::logException($exception);
Mage::throwException($this->getHelper()->__($exception->getMessage()));
}
return $this;
}
示例6: getPaymentXmlObject
/**
* Get the Simple XML objected used for pre-auth and capture payment transactions.
*
* @param Mage_Sales_Model_Order_Payment $payment
* @param float $amount
* @return SimpleXMLElement
*/
protected function getPaymentXmlObject($payment, $amount)
{
$order = $payment->getOrder();
$billing = $order->getBillingAddress();
$formattedAddress = $this->getEwayHelper()->getOrderAddressString($billing);
$invoiceDesc = $this->getEwayHelper()->getInvoiceDescription($order);
// Build the XML request
$xml = new SimpleXMLElement('<ewaygateway></ewaygateway>');
$xml->addChild('ewayCustomerID', $this->getCustomerId());
$xml->addChild('ewayTotalAmount', $this->getFormattedAmount($amount));
$xml->addChild('ewayCustomerFirstName', str_replace('&', '&', trim($billing->getFirstname())));
$xml->addChild('ewayCustomerLastName', str_replace('&', '&', trim($billing->getLastname())));
$xml->addChild('ewayCustomerEmail', str_replace('&', '&', trim($order->getCustomerEmail())));
$xml->addChild('ewayCustomerAddress', str_replace('&', '&', trim($formattedAddress)));
$xml->addChild('ewayCustomerPostcode', str_replace('&', '&', trim($billing->getPostcode())));
$xml->addChild('ewayCustomerInvoiceDescription', str_replace('&', '&', trim($invoiceDesc)));
$xml->addChild('ewayCustomerInvoiceRef', $order->getIncrementId());
$xml->addChild('ewayCardHoldersName', str_replace('&', '&', $payment->getCcOwner()));
$xml->addChild('ewayCardNumber', $payment->getCcNumber());
$xml->addChild('ewayCardExpiryMonth', $payment->getCcExpMonth());
$xml->addChild('ewayCardExpiryYear', substr($payment->getCcExpYear(), 2, 2));
$xml->addChild('ewayTrxnNumber', '');
$xml->addChild('ewayOption1', '');
$xml->addChild('ewayOption2', '');
$xml->addChild('ewayOption3', '');
if ($this->hasVerification()) {
$xml->addChild('ewayCVN', $payment->getCcCid());
}
return $xml;
}