Компонент VirtueMart использует свой класс для отправки почты, который использует библиотеку phpmailer с классом PHPMailer.
Joomla настроена на отправку почты через php функцию mail. Все работает в штатном режиме, но когда дело уже доходит до фактической отправки, функция mail выполняется с ошибкой, и возвращает результат false. Но, самое интересное, что VirtueMart не проверяет результат выполнения функции, а сообщает о том, что все замечательно.
Всё дело в 5 параметре функции mail «$additional_parameters», этот параметр используется для передачи дополнительных параметров программе, которая производит непосредственную отправку почты.
bool mail ( string $to, string $subject, string $message [, string $additional_headers [, string $additional_parameters]] )
В PHPMailer туда присваивается такое значение:
$params = sprintf("-oi -f %s", $this->Sender);
Не в даваясь в подробности, скажу, что это правильно, так и нужно делать, но не 
на всех хостингах это разрешено. Здесь фактически и возникает сама проблема: на хостинге запрещено использование некоторых дополнительных параметров для почтовой программы, функция mail не может отправить письмо, о чем честно сообщает в возвращаемом результате, а VirtueMart безразлично ушло письмо или нет.
Для решения этой проблемы достаточно изменить вышеуказанную строчку в файле «libraries/phpmailer/phpmailer.php» на
//    $params = sprintf("-oi -f %s", $this->Sender);
      $params = '';