public function authorize(Varien_Object $payment, $amount) { parent::authorize($payment, $amount); $this->setAmount($amount)->setPayment($payment); if ($this->callDoDirectPayment() !== false) { $payment->setStatus(self::STATUS_APPROVED)->setLastTransId($this->getTransactionId())->setPayboxRequestNumber($this->getRequestNumber())->setPayboxQuestionNumber($this->getQuestionNumber()); } else { $e = $this->getError(); if (isset($e['message'])) { $message = Mage::helper('paybox')->__('There has been an error processing your payment. ') . $e['message']; } else { $message = Mage::helper('paybox')->__('There has been an error processing your payment. Please try later or contact us for help.'); } Mage::throwException($message); } return $this; }