in Magento, Programming

Skip review step magento 1.9 UK PayPal

I’m not sure if i’m missing a setting somewhere but it appears to me that in the UK version e.g if you have Website Payments Pro Payflow Edition (Includes Express Checkout) enabled, this does not skip the review step as per the 1.9 update suggests.

You can find the setting in /app/code/core/Mage/Paypal/etc/config.xml

By default it is set to 1


<skip_order_review_step>1</skip_order_review_step>

and in  /app/code/core/Mage/Paypal/Controller/Express/Abstract.php around lines 194 it checks for this parameter.


if ($this->_checkout->canSkipOrderReviewStep()) {
$this->_forward('placeOrder');
} else {
$this->_forward('placeOrder'); // skip review steps for all checkouts
// $this->_redirect('*/*/review'); // default
}

The only possible thought is that I am using the crius skip step 1 and that is changing the name of the checkout. I haven’t the time to debug fully at the moment.

 public function canSkipOrderReviewStep()
    {
        $isOnepageCheckout = !$this->_quote->getPayment()
            ->getAdditionalInformation(Mage_Paypal_Model_Express_Checkout::PAYMENT_INFO_BUTTON);
        return $this->_config->isOrderReviewStepDisabled() && $isOnepageCheckout;
    }

As the functions only check is for the config.php function isOrderReviewStepDisabled() which in turn checks the configuration value, which we hope is set to 1. So as a quick hack I commented out the review and changed it to placeorder as above.

Kind of annoying that they didn’t include this as a configurable option from the admin area and that it does not seem to work in the UK versions. Anyways that’s how to get rid of the place order/review step in 1.9.

If your using 3ds centinel then you also need this:

in review/info.phtml to auto place the order after the customer successfully completes the 3ds secure authentication


<?php
$centinel = Mage::getSingleton('centinel/service');

if($centinel->isAuthenticateSuccessful()==1) {?>
review.save();
<? }
?>

Write a Comment

Comment

  1. Just hit this same issue with the NZ version! Thank you! Basically commented this block:

    if ($this->_checkout->canSkipOrderReviewStep()) {
    $this->_forward(‘placeOrder’);
    } else {
    $this->_redirect(‘*/*/review’);
    }

    replacing with $this->_forward(‘placeOrder’); Magento Bug ? Am on 1.9.2.4

  2. Oops – Was just using the Standard “Paypal” (i.e. not PaypalUK – and there’s no PaypalNZ). However, still hit this issue, and used the above as a workaround…… :-/