Removing paypal/express/review step in Magento

If you use Paypal express in Magento it has a rather annoying /paypal/express/review page once you have confirmed everything in Paypal. Its quite simple to remove this page

Firstly go to:

/app/code/core/Mage/Paypal/Controller/Express/Abstract.php

Look for  $this->_redirect('*/*/review');

Replace with $this->_redirect('*/*/placeOrder');

Secondly go to:

/app/code/core/Mage/Paypal/Model/Config.php

Look for

public function getExpressCheckoutStartUrl($token)
{
return $this->getPaypalUrl(array(
'cmd' => '_express-checkout',
'token' => $token,
));
}

Replace with

public function getExpressCheckoutStartUrl($token)
{
return $this->getPaypalUrl(array(
'cmd' => '_express-checkout',
'useraction' => 'commit',
'token' => $token,
));
}

Finally still in /app/code/core/Mage/Paypal/Model/Config.php

Do the same as above and look for

public function getExpressCheckoutEditUrl($token)
{
return $this->getPaypalUrl(array(
'cmd' => '_express-checkout',
'token' => $token,
));
}

Replace with

public function getExpressCheckoutEditUrl($token)
{
return $this->getPaypalUrl(array(
'cmd' => '_express-checkout',
'useraction' => 'commit',
'token' => $token,
));
}

This method worked correctly for me in Magento 1.9 CE

Join the Conversation

4 Comments

    1. @Casey me too. Seems like it’s not working in 1.9.3.7. It’s really frustrating.
      Please let me know if you have any news

      1. In that version of Magento is it an option in the Paypal configuration in the Magento admin?

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.


Notice: ob_end_flush(): failed to send buffer of zlib output compression (0) in /home/wwwwebam/public_html/blog/wp-includes/functions.php on line 4339