First of all, Magento 1.9+ relies completely on cron jobs to send transactional emails. If you didn’t have cron jobs set up properly before, you are going to have to do it now.
First of all make sure you have set up cron tasks in the Magento admin under System > Configuration > Advanced > System > Cron. The default settings are:
Generate Schedules Every 15 Schedule Ahead for 20 Missed if Not Run Within 15 History Cleanup Every 10 Success History Lifetime 60 Failure History Lifetime 600
There are people suggesting these settings should be changed, but since they can’t seem to agree on the best combination, I’d rather leave it as it is.
You then need to go into your hosting control panel and set up cron jobs. In cPanel it’s under Advanced > Cron Jobs. Set them up to run every five minutes and use this command:
php -f /home/username/public_html/cron.php
Check that the above path is correct and that the file cron.php is actually there in the root of your Magento installation (if you’ve just upgraded, it should be). Change username to the correct account.
Or simply try a workarround:
CMS > SALES EMAILS Set Order > Sent Emails via seperate Mail (BCC is Buggy)