Маленькая, но очень нужная заметка - как сделать так, чтобы в корзине автоматом был выбран способ доставки.

В данном примере задаем всем фиксированную стоимость отправления (flatrate):

Способ первый:


if (!Mage::getSingleton('checkout/type_onepage')->getQuote()->getShippingAddress()->getCountryId()) {
    $customerSession = Mage::getSingleton("customer/session");
    if ($customerSession->isLoggedIn()) {
        $customerAddress = $customerSession->getCustomer()->getDefaultShippingAddress();
        if ($customerAddress->getId()) {
            $customerCountry = $customerAddress->getCountryId();
            $shipping = Mage::getSingleton('checkout/type_onepage')->getQuote()->getShippingAddress()
            ->setCountryId($customerCountry)->setShippingMethod('flatrate_flatrate')->save();
        } else {
            $shipping = Mage::getSingleton('checkout/type_onepage')->getQuote()->getShippingAddress()
            ->setCountryId('RU')->setShippingMethod('flatrate_flatrate')->save();
        }
    }
}

Способ второй:


$shippingAddress = $this->getQuote()->getShippingAddress();

if (!$shippingAddress->getCountryId()) {
    $shippingAddress->setCountryId() == 'RU';
}

if ($shippingAddress->getCountryId() == 'RU') {
    if ($shippingAddress->getShippingMethod() == '') {
        $shippingAddress->setShippingMethod('flatrate_flatrate')->save();
        $this->getQuote()->save();
        Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('checkout/cart/'));
    }
} else {
    if ($shippingAddress->getCountryId() != 'RU') {
        if ($shippingAddress->getShippingMethod() == '') {
            $shippingAddress->setShippingMethod('flatrate_flatrate')->save();
            $shippingAddress->save();
            Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('checkout/cart/'));
        }
    }
}