public function processInvoice($invoice, $payment)
 {
     $data = $payment->getAdditionalInformation();
     if (array_key_exists('paymillPreauthId', $data) && !empty($data['paymillPreauthId'])) {
         $params = array();
         $params['amount'] = (int) Mage::helper("paymill/paymentHelper")->getAmount($invoice);
         $params['currency'] = Mage::helper("paymill/paymentHelper")->getCurrency($invoice);
         $params['description'] = Mage::helper('paymill/paymentHelper')->getDescription($payment->getOrder());
         $params['source'] = Mage::helper('paymill')->getSourceString();
         $paymentProcessor = new Services_Paymill_PaymentProcessor(Mage::helper('paymill/optionHelper')->getPrivateKey(), Mage::helper('paymill')->getApiUrl(), null, $params, Mage::helper('paymill/loggingHelper'));
         $paymentProcessor->setPreauthId($data['paymillPreauthId']);
         if (!$paymentProcessor->capture()) {
             Mage::throwException(Mage::helper("paymill/paymentHelper")->getErrorMessage($paymentProcessor->getErrorCode()));
         }
         Mage::helper('paymill/loggingHelper')->log("Capture created", var_export($paymentProcessor->getLastResponse(), true));
         $payment->setAdditionalInformation('paymillTransactionId', $paymentProcessor->getTransactionId());
     }
     parent::processInvoice($invoice, $payment);
 }