Prerequisites
- Node.js 18 or later
- Your mySMTP username and password from the setup email
- Your mySMTP hostname from the setup email (shown as
relayxx.mysmtp.comin these examples)
Install Nodemailer
Basic send example
Replace
relayxx.mysmtp.com with your real hostname from the mySMTP setup email. Load credentials from environment variables, never hardcode them in source files.Verify the connection before sending
HTML email with attachment
Common errors
535 Authentication failed
535 Authentication failed
Your username or password is incorrect, or your account is not yet activated. Re-enter credentials exactly as shown in the setup email. See Setting up SMTP credentials.
Connection timeout or refused
Connection timeout or refused
Your network or host may block port 587. Try port 2525 with the same settings, or port 465 with
secure: true. See Supported SMTP ports and encryption.TLS handshake failure
TLS handshake failure
The
secure and requireTLS settings do not match the port. For port 587, use secure: false and requireTLS: true. For port 465, use secure: true and remove requireTLS..png?fit=max&auto=format&n=-Uw4rR8wfyv_xkzc&q=85&s=898bb0b43b6c9dce61441f46ac9ac860)