Search code examples
magentoworldpay

Why am I getting a 404 page when being sent back from worldpay?


Im installing WorldPay on a Magento site and Im having an issue with the callback:

A user buys a product, fills out the address and delivery info, pay via WorldPay, get directed to WorldPay, enter card details and then get fired back to the website BUT they are getting fired back to /checkout/worldpay/success/ when I need them to be sent to /checkout/onepage/success I could use a url rewrite for this but questioning if its the correct way to go about this.

Any help would be appreciated.


Solution

  • From what I see in Phonenix Worldpay source there is an success action in processing controller, which in fact should redirect user to /checkout/onepage/success when no exception occurs.

    /**
     * Worldpay return action
     */
    public function successAction()
    {
        try {
            $session = $this->_getCheckout();
            $session->unsWorldpayRealOrderId();
            $session->setQuoteId($session->getWorldpayQuoteId(true));
            $session->setLastSuccessQuoteId($session->getWorldpaySuccessQuoteId(true));
            $this->_redirect('checkout/onepage/success');
            return;
        } catch (Mage_Core_Exception $e) {
            $this->_getCheckout()->addError($e->getMessage());
        } catch(Exception $e) {
            $this->_debug('Worldpay error: ' . $e->getMessage());
            Mage::logException($e);
        }
        $this->_redirect('checkout/cart');
    }
    

    However some people reported problems with redirection in WorldPay after upgrade.

    What magento version, and have you upgraded recently? Any errors in system.log??