This is likely to be related to your postfix/sendmail configuration, in System > Configuration > Advanced > System
Set the return path to Specified and set a valid email address in the Mail Sending Settings
That should fix it, you can also force it via your vhost config if using Apache e.g
<VirtualHost *:80>
Standard stuff goes here
<Directory /dir/to/your/web/root>
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fuser@domain2.com"
</Directory>
You can also check your mail.log /var/log/mail.log or use the mailq command to see what's happening with the emails.
Some ISP providers like AOL will reject emails if the proper PTR records are not set up for the website/server, so your server IP should resolve to your domain.
My advice would be to install the free MageMonkey plugin and use Mandrill for all your emails.
http://www.magentocommerce.com/magento-connect/ebizmarts-magemonkey-official-mailchimp-and-mandrill-integration.html
In case any one else has this issue:
In our case, the shipment was being created via the API from a third-party. With the Magento API, there's a flag whether or not to send the email on the createShipment call - this flag must be set by the third-party API. However, when done that way, the email doesn't contain the tracking information.
There are two possible solutions to this:
1) Override the Mage_Sales_Model_Order_Shipment_Api file, comment out the sendEmail line in the create function (in Magento 1.7, line 162), then add a line in the addTrack function $shipment->sendEmail(true, ''); after the $track->save() call (in Magento 1.7, line 205). Note this only works if there's only one tracking number per shipment. Also note that this hard-codes to send the email, since the flag doesn't exist on the addTrack call.
2) Instead of relying on the New Shipment email, add an API call. After adding the shipment and tracking number, then add a comment with the sendEmail flag set - then enable and update the New Shipment Comment email template to contain the contents of the New Shipment template.
Hope this makes sense, and hope it helps anyone else who follows.
Best Answer
There is no default option in magento to resend a account creation email. But you can achieve this by:
Rewrite the block class
Mage_Adminhtml_Block_Customer_Edit
and add a new button in the constructor:Create your own custom controller action: