/** * @param Mage_Payment_Model_Method_Abstract $payment * @param Mage_Sales_Model_Order $order * @param int $customerId * * @return bool * @throws \Mage_Core_Exception */ protected function processSubscription($payment, $order, $customerId) { $subscription = $this->createSubscription($order, $customerId); if ($subscription === false) { Mage::throwException('Erro ao criar a assinatura. Verifique os dados e tente novamente!'); return false; } $payment->setAmount($order->getTotalDue()); $this->setStore($order->getStoreId()); $payment->setStatus(Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW, Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW, 'Assinatura criada', true); return true; }