How it works
Transactional email is triggered by an event in the app and expected by the person receiving it, so people look out for it. Marketing or bulk email goes to many people at once and needs consent and an unsubscribe link. Keeping the two apart, on separate streams, IP addresses or subdomains, stops a badly received campaign from dragging password resets into spam.
Apps build these emails from templates (React Email, MJML or the provider's own editor) and send them through an API such as Resend, Postmark, Amazon SES or SendGrid, often from a background job so a slow send never holds up the page. Good habits: a real reply-to address, a plain-text version alongside the HTML, and short-lived links for resets and logins.