How to send instant order
In Magento v1.9, Sales transaction emails are not sent instantly, they are queued. The order emails are sent after an interval time that are queued. Thus Magento transactional emails will be sent after the set cron job interval. If there are many mails in the list then sending procedure decreases and not easy to handle. Therefore, sales order emails should be hit instantly. It sends when Magento cron jobs is initiated.
There are two solutions to this problem.
Solution 1: To set cron job in magento server with 5 minutes of interval.
*/5 * * * * wget -O /dev/null -q http://www.magento-site.com/cron.php
You can also edit app/code/core/Mage/Sales/Model/Order.php
Open Oeder.php file and make the changes. Search for the below line:
And change this line to:
After making these changes save the order.php file. Go to your magento admin panel and then perform cache management and Index management. Cache management can be done by going in System-> Configuration->Cache management. Select all refresh the select list.
After this go to your website page and refresh it.
Try ordering any product by adding it to the cart and fill payment details. Now after ordering the customer will be getting an instant email with order number. Thus, Transactional emails will be sent instantly.