protected function _placeTransaction($payment, $amount, $requestType)
 {
     $payment->setAnetTransType($requestType);
     $payment->setAmount($amount);
     $this->_initCardsStorage($payment);
     switch ($requestType) {
         case parent::REQUEST_TYPE_AUTH_ONLY:
             $newTransactionType = Mage_Sales_Model_Order_Payment_Transaction::TYPE_AUTH;
             break;
         case parent::REQUEST_TYPE_AUTH_CAPTURE:
             $newTransactionType = Mage_Sales_Model_Order_Payment_Transaction::TYPE_CAPTURE;
             break;
     }
     $this->getCardsStorage($payment)->flushCards();
     $result = new Varien_Object();
     $result->setRequestedAmount($amount);
     $result->setTransactionId($payment->getTransactionId());
     $result->setAmount($amount);
     $card = $this->_registerCard($result, $payment);
     parent::_addTransaction($payment, $card->getLastTransId(), $newTransactionType, array('is_transaction_closed' => 0), array($this->_realTransactionIdKey => $card->getLastTransId()), Mage::helper('paygate')->getTransactionMessage($payment, $requestType, $card->getLastTransId(), $card, $amount));
     if ($requestType == parent::REQUEST_TYPE_AUTH_CAPTURE) {
         $card->setCapturedAmount($card->getProcessedAmount());
         $this->getCardsStorage($payment)->updateCard($card);
     }
     return $this;
 }