How to Set Up SMTP on XFile Ultra
SMTP sends mail through an external mail provider (or your host’s mail server) instead of local Sendmail. For most production sites, SMTP is the easiest path to good deliverability.
Where to find it
Admin → Settings → Main (Settings tab) → Email delivery
1. Set Email delivery mode to SMTP
2. Fill the SMTP fields below
3. Set Email from address to an address your provider allows (example: support@example.com)
4. Set Site contact e-mail (test emails go here)
5. Save settings
6. Click Send test email
Fields explained
| Field | What it is | Typical value |
|---|---|---|
| SMTP server | Hostname of the mail server | smtp.example.com or email-smtp.us-east-1.amazonaws.com |
| SMTP port | Network port | 587 (STARTTLS) or 465 (SSL) |
| SMTP username | Login for the provider | Often the full mailbox, or an API SMTP user |
| SMTP password | Password or SMTP/API secret | Leave blank on later saves to keep the stored password |
| Encrypt connection (TLS) | Use an encrypted SMTP session | Usually on for port 587 |
Server
The hostname only — no https://, no path. Copy it from your provider’s SMTP docs.
Port
Common patterns:
| Port | Encrypt connection (TLS) | What the script does |
|---|---|---|
| 587 | On (recommended) | STARTTLS / require TLS (TLS 1.2+) |
| 465 | Often off in the UI | Port 465 uses implicit SSL automatically |
| 25 | Depends on host | Often blocked on VPS networks — avoid if you can |
If the provider says “587 + STARTTLS”, use port 587 and turn Encrypt connection (TLS) on.
If the provider says “465 + SSL”, use port 465. The script treats 465 as secure SSL even when the TLS toggle is off.
Username and password
Use the SMTP credentials from the provider dashboard (not always your normal website login).
- Username is often
you@example.com - Some providers use a separate SMTP user + API key / app password as the password
- Leaving password empty on save usually keeps the password already stored
Encrypt connection (TLS)
This toggle means: encrypt the connection to the SMTP server.
- On + port 587 → normal modern SMTP (STARTTLS)
- Port 465 → SSL is used because of the port (see table above)
- Wrong combo (for example 465 with settings meant for 587) is a common cause of handshake errors
Send test email
After you save, Send test email tries the SMTP settings and sends a message to Site contact e-mail.
- Success → transport works (still check spam)
- Auth failed → wrong user/password or app password required
- Timeout → firewall blocking outbound 587/465, or wrong host
Recommended SMTP providers
Any real SMTP/API provider works. These are common, reliable choices for transactional mail (signup, password reset, tickets):
| Provider | Notes |
|---|---|
| Amazon SES | Cheap at scale; verify your domain; use SMTP credentials from SES |
| Mailgun | Simple SMTP + domain DNS (SPF/DKIM) |
| Postmark | Strong deliverability for transactional mail |
| Brevo (Sendinblue) | Easy SMTP; free tier for low volume |
| Resend | Modern API; SMTP available depending on plan |
| Your host / cPanel mail | Fine for low volume if they give SMTP host + mailbox |
Whatever you pick:
1. Create/verify the sending domain in the provider
2. Add the SPF / DKIM DNS records they show you
3. Create SMTP credentials
4. Paste them into XFile Ultra
5. Set Email from address to a verified address on that domain
6. Send a test
Step-by-step checklist
1. Choose a provider and verify example.com
2. Copy SMTP host, port, user, password
3. In XFile Ultra: mode SMTP → fill fields → TLS as above → Save
4. Set From to support@example.com (or your real address)
5. Put your inbox in Site contact e-mail
6. Send test email
7. Optional: score with https://www.mail-tester.com/ (paste their address into Contact email, save, send test)
Common problems
Authentication failed
Wrong password, or the provider requires an app password / SMTP-specific secret. Re-copy from the dashboard.
Connection timeout
VPS firewall or host blocking outbound 587/465. Test from the server, or ask the host to allow SMTP outbound.
TLS / certificate errors
Port and Encrypt connection (TLS) do not match the provider. Start with 587 + TLS on.
Mail sends but goes to spam
Domain not verified, or SPF/DKIM DNS from the provider missing. Fix DNS at your DNS host (Cloudflare or registrar — same records either way).
Password “disappears” after save
Normal. The field stays blank; the server keeps the saved secret unless you type a new one.