Recently I had an issue with Magento emails. While searching for a solution I came across loads of people wanting to know why new order confirmation emails were not being sent to customers or to the shop owner.
Some of the confusion around this issue is a misunderstanding about the order workflow. From 1.4.0, Magento only sends an order email once payment has been received from the payment gateway such as Paypal.
A second cause of confusion is that you have to configure Magento to actually send out emails. By default, email notifications are turned off. To turn emails on you need to do the following:
1) Log into the Admin UI, and select Configuration/Advanced/System.
2) In this tab you’ll find ‘Mail Sending Settings’. Make sure that the ‘Disable Email Communications’ drop down is set to ‘No’.
So, before you start to hack at core files to make new order confirmation emails work in Magento, make sure that you are aware of the order workflow & the need to enable emails within Magento.