Я столкнулся с подобной проблемой: новому заказу присваивается статус "в ожидании" (pending). При этом уведомления ни владельцу, ни клиенту не приходят. Но если поменять статус заказа, то уведомления приходят всем.
на это влияют настройки VirtueMart "настройки-настройки-электронная почта". Там есть пункты:
"Статус заказа по умолчанию для отправки эл.письма покупателю"
"Статус заказа по умолчанию для отправки эл.письма продавцу"
Решение 1
Из коробки VirtueMart не позволяет туда добавить статус "в ожидании" (pending). Для того, чтобы это исправить, можно применить следующий хак:
заходим в administrator/components/com_virtuemart/views/config/tmpl/ открываем default_email.php
находим примерно такую строку:
echo VmHTML::row('genericlist', 'COM_VIRTUEMART_CFG_OSTATUS_EMAILS_SHOPPER', $this->osWoP_Options, 'email_os_s[]', $attrlist, 'order_status_code', 'order_status_name', VmConfig::get('email_os_s', array('U', 'C', 'S', 'R', 'X')), 'email_os_s', true);
Заменяем $this->osWoP_Options на $this->os_Options
В опциях появляется возможность выбрать состояние "в ожидании" (pending) для отправки клиенту/владельцу. Меняем опции, profit!
Решение 2
Прописываем во всех способах оплаты, чтобы после "оплаты" статус заказа менялся на "подтверждён покупателем". В этом случае и без хака письма начнут приходить.
Разумеется, все эти способы сработают только если система отправки писем настроена и работает, адрес отправителя совпадает с доменом сайта, и письма не складируются в спам.