The Magento “place order” step can take up to a minute. With thanks to this site I figured out how to fix slow checkouts.
Step 1
Find the file app/code/core/Mage/Rss/etc/config.xml and uncomment/remove:
<sales_order_save_after>
<observers>
<notifystock>
<class>rss/observer</class>
<method>salesOrderItemSaveAfterNotifyStock</method>
</notifystock>
</observers>
</sales_order_save_after>
<sales_order_save_after>
<observers>
<ordernew>
<class>rss/observer</class>
<method>salesOrderItemSaveAfterOrderNew</method>
</ordernew>
</observers>
</sales_order_save_after>
Step 2
Find the file app/code/core/Mage/Downloadable/etc/config.xml and uncomment/remove:
<!–sales_order_item_save_commit_after>
<observers>
<downloadable_observer>
<class>downloadable/observer</class>
<method>saveDownloadableOrderItem</method>
</downloadable_observer>
</observers>
</sales_order_item_save_commit_after–>
Step 1 is exactly what I needed for Princessly which suddenly started taking 30 – 120 seconds after customers clicking Place Order. Thank you so much!
Hi our site uses downloadable products is it okay just to do step 1?
Pingback: Magento 1.9.1.0 check out not directing to payment gateway - gomagento2
Pingback: Magento 1.9.1.0 check out not directing to payment gateway - MageTechWeb
Thanks for this worthy piece of content, I was having an issue with the cart but I moved my hosting to Cloudways and their support team fixed the issue. and Admin page & Cart is working very fast through CDN and FPC.
Nice find, you make a good point. These two pieces can be commented out without losing anything of value. Unfortunately, the performance gain is not a lot.
I had to dig deeper and had additional performance gains from disabling loadChildProductImagesOnMediaLoad in /app/code/core/Mage/ConfigurableSwatches/Model/Observer.php:
public function loadChildProductImagesOnMediaLoad(Varien_Event_Observer $observer) {
+ if(Mage::app()->getRequest()->getRouteName() == ‘checkout’) return;
if (!Mage::helper(‘configurableswatches’)->isEnabled()) { // functionality disabled
return; // exit without loading swatch functionality
Found the tip here: https://onilab.com/blog/magento-checkout-slow-fix-it-in-8-simple-steps/