I have onetep checkout extension and sagepay extension installed.

1. Add product to cart...
 2. go to checkout page...
 3. select shipping method and payment method(sage pay)...
 4. Then click to 'place order' button...

It opens popup for sage pay detail. I enter sage pay test detail and click to submit, it gives error in js popup 'Please specify a shipping method'.

On file app/code/core/Mage/Sales/Model/Service/Quote.php there is _validate() method which returns $method and $rate blank.

$method= $address->getShippingMethod();
$rate  = $address->getShippingRateByCode($method);
if (!$this->getQuote()->isVirtual() && (!$method || !$rate)) {
    Mage::throwException(Mage::helper('sales')->__('Please specify a shipping method.'));
  • Did you solve the issue?
    – Gem
    May 11, 2018 at 5:18
  • Please share your solution - if it exists ;) We are having the same exact problem
    – snh_nl
    Sep 6, 2018 at 20:41

1 Answer 1


Please check if you have a product that's not virtual.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.