Вопрос или проблема
Я пишу расширение Paypal Pro для WooCommerce, чтобы оно могло принимать кредитные карты напрямую на моих сайтах. Когда я тестирую, все работает хорошо. Единственное, чего я не понимаю, так это уведомления по электронной почте.
Я хотел бы узнать, должна ли мой класс шлюза отправлять квитанцию по электронной почте или это должен заботиться о внутренностях WooCommerce для успешного заказа?
WooCommerce отправляет электронные письма – это инициируется методом payment_complete класса заказа.
Кстати, у WC есть официальное расширение PayPal Pro: http://www.woothemes.com/extension/paypal-pro/, написанное мной.
Я (я) никто не имеет эго, которое можно сравнить с моим!
Ответ или решение
В WooCommerce ответственность за отправку электронных писем с чеком (или уведомлением о заказе) лежит на самой системе WooCommerce, а не на вашем шлюзе платежей. Когда заказ успешно обрабатывается, WooCommerce автоматически генерирует и отправляет электронное письмо клиенту. Это происходит при вызове метода payment_complete()
класса заказа.
Если ваш шлюз PayPal Pro реализует правильное взаимодействие с WooCommerce и корректно обновляет статус заказа, то система сама позаботится о том, чтобы отправить уведомление о заказе на указанный клиентом адрес электронной почты.
Для того чтобы удостовериться, что уведомление об отправке счета срабатывает, вам нужно проверить несколько ключевых моментов:
-
Статус заказа: Убедитесь, что ваш код меняет статус заказа на ‘completed’ или ‘processing’ после успешной обработки платежа. Это необходимо для того, чтобы WooCommerce триггерил отправку электронной почты.
-
Настройки почты: Проверьте настройки электронной почты в WooCommerce. Убедитесь, что электронные письма включены и правильно настроены в разделе "WooCommerce > Настройки > Электронная почта".
-
Логи ошибок: Обратите внимание на логи ошибок HTTP и WooCommerce. Возможно, есть проблемы с отправкой писем, которые вы сможете отследить.
-
Тестирование: Проведите тестовые транзакции, чтобы удостовериться, что все проходит корректно. Иногда письма могут не доходить, если на сайте установлен плагин, блокирующий отправку почты, или если используемый вами SMTP-сервер имеет проблемы.
-
Кастомизация и хуки: Если вам необходимо что-то специфическое в процессе отправки сообщений, вы можете использовать хуки WooCommerce, чтобы добавить собственную логику, но это не обязательно, если стандартный функционал вас устраивает.
Таким образом, ваша задача как разработчика шлюза заключается в том, чтобы правильно интегрировать оставшуюся функциональность с WooCommerce и обеспечить корректное изменение статуса заказов. Сам процесс отправки писем будет обрабатываться системой автоматически, когда вы выполните условия, описанные выше.