Используйте сервисы транзакционной почты. У некоторых есть готовые библиотеки для интеграции, но обычно и без библиотек все достаточно просто интегрируется.
Пример интеграции на bash:
curl 'http://api.mailhandler.ru/message/send/' \
-X POST \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-Secure-Token: <YOUR API KEY>' \
-d '{"from": "from@example.com", "to": ["subscriber@example.com"], "subject": "Hello world!", "html_body": "<html><body>Hello dear user.</body></html>"}'
Многие сервисы так же позволяют создавать шаблоны транзакционных писем и в дальнейшем переиспользовать их при отправке, заменяя только контекстные переменные письма.
Кроме того вам не придется думать о том, как правильно сформировать письмо, чтобы оно не попало в спам, как заинлайнить стили в письме, как отследить дошло письмо до адресата, перешел ли он по ссылке и т.д.