Все очень просто.
Отправка писем может не работать по 3 причинам:
1. Отключена функция mail(); на сервере у хостера;
2. Не со всей почтой корректно работает opencart. По порядку любит Gmail.com, yandex.ru, mail.ru
3. Вы не правильно указали порт и протокол передачи данных.
Решение:
По 1 пункту:
Создайте файлик с расширением .php внутрь впишите:
<?php
$mail="ваша почта@ляляля.ru";
$title="PROVERKA RABOTI mail";
$mess.="<b>Func mail() rabotaet NORM<br>";
$headers.="From: URA!!ZARABOTALA!!";
$ok_mail = mail($mail, $title, $mess, $headers); // Гоу
if ($ok_mail==true) {echo "Отправлено!";} else {echo "НЕ ОТПРАВЛЕННО";}
?>
Загрузите потом этот файлик в корень вашего сайта.
Запустите через браузер "набрав имя вашего сайта.ru/имя файлика.php"
Если функция не отключена хостером , то к вам на почту "ваша почта@ляляля.ru" прийдет письмо. И вы увидите на экране сообщение "Отправлено !" (тогда переходите к пункту 2).
Иначе "НЕ ОТПРАВЛЕННО".(звоните хостеру и ругаете его :) или он вас за спам с вашей стороны :) )
По 2 пункту:
Забейте и переходите к пункту 3 :)
По 3 пункту:
Самое главное следите за почтовиками, чтобы соответствовали протоколы и порты. А то они любят менять это.