What SMTPly does — in detail

SMTPly consists of two components: a lean Windows service that accepts and relays mail, and a WPF configuration GUI that handles setup and monitoring for the admin.

The Windows service

Runs as a system service under LocalSystem. No login required, no user desktop, no tray icon in the way. The service starts automatically with Windows and operates in the background.

  • SMTP listener on port 25 or 587, optional STARTTLS
  • In-memory queue with disk persistence for larger backlogs
  • OAuth2 token management via MSAL.NET
  • Microsoft Graph Mail.Send application permission
  • Dedicated named-pipe server for live GUI communication
  • Structured logging via Serilog (file + IPC stream)
Service name: Smtply
Account: LocalSystem
Start type: Automatic
Port: 25 / 587
 
→ SMTP listener
    ↓
→ Relay queue + retry
    ↓
→ Graph /sendMail (OAuth2)

The configuration GUI

Modern WPF application with Fluent Design. Fully localized in English and German, with a guided setup wizard for the initial install.

  • Dashboard — live status, statistics, mail tracker as a DataGrid
  • System log — real-time stream of all Serilog events, with pause/filter/level
  • Settings — Microsoft 365, SMTP, STARTTLS, IP whitelist, privacy, retention
  • License — activation, re-verify, deactivation (hardware release)
  • Backup / Import — export settings as JSON and migrate to a new server
SMTPly Dashboard SMTPly Dashboard

Typical use cases

Any device or application that cannot speak OAuth2 for email delivery can use SMTPly as its SMTP gateway.

🖨️

Printers & scanners

Multifunction printers and document scanners with scan-to-email still often use plain SMTP without any OAuth2 support.

🏭

ERP systems

Many ERP solutions (e.g. Sage, Lexware, Infor, older SAP installations) send invoices, order confirmations and delivery notes via SMTP without OAuth2.

🏨

Hospitality & catering

Hotel management systems such as Oracle Fidelio Suite 8, Opera and other PMS solutions send booking confirmations, invoices and reports via SMTP — without OAuth2 support.

📋

CRM & DMS

CRM software and document management systems that send notifications, reports or workflow emails typically rely on plain SMTP.

📊

Monitoring & alerting

Backup solutions, server monitoring, PRTG, Zabbix, Check_MK and similar tools send alert emails via SMTP by default.

⚙️

Custom applications & scripts

In-house .NET, Python or PowerShell applications, batch processes and automations that use SMTP and cannot easily be rebuilt for OAuth2.

🏥

Vertical software

Industry-specific software for healthcare, legal or trades that is waiting for a vendor update — or will simply never receive OAuth2 support.

Screenshots

The interface in light and dark mode — SMTPly in action.

Dashboard & mail tracker

Dashboard Light Dashboard Dark

Settings – Microsoft 365

Settings Light Settings Dark

System log

System Log Light System Log Dark

License

License Light License Dark

From the field: 1,000+ devices, one relay

Thunderbyte, a twelve-person IT service provider in Switzerland, migrated their own Exchange 2019 to Microsoft 365. Backup tools, firewalls, printers and line-of-business apps had all been sending through that local Exchange — without a relay, more than 1,000 devices would have needed individual reconfiguration. Today around 300 mails a day go through SMTPly. These were the selection criteria:

🔐

Your own STARTTLS certificate

Let's Encrypt, centrally managed with tools like Certify The Web. SMTPly accepts PEM files, PFX bundles or a certificate straight from the Windows certificate store — and ships a self-signed one to get you started.

👤

Short usernames, not addresses

Long-standing device configurations often use short names like ab rather than ab@example.com. SMTP users in SMTPly are free-form and not tied to any email syntax — existing credentials stay exactly as they are.

🚫

Authentication can be mandatory

Optionally every client must authenticate before it may hand over a message. Combine it with the IP allowlist and sender allowlist to rule out open relays inside your own network.

🔌

Any port you need

25, 587, 465 or anything else — several listeners in parallel if you want, each with its own TLS setting. Devices hard-wired to a fixed port never have to be touched.

⚙️

A real Windows service

SMTPly runs as a system service, starts with the server and needs no logged-in session. The configuration GUI is a separate program you can close at any time.

💶

Predictable cost

€149 once per server, yours to keep, no mandatory subscription and no tiering by device count or mail volume. Try it fully functional for 14 days before you decide.

More references →

Core features

📬

Mail tracker

Tabular live view of all mails with time, sender, recipient, subject, size, source IP and status. Click a row to open the full SMTP conversation and Graph response.

🔑

SMTP authentication

Optional AUTH LOGIN / AUTH PLAIN on the listener — senders authenticate with username and password. Passwords are stored as PBKDF2-SHA256 hash with per-user salt (not recoverable). Three modes: off (IP allow-list only), AUTH offered as optional, AUTH required (unauthenticated MAIL FROM → 530).

🌍

Multi-tenant (Business)

Business/Enterprise edition: one SMTPly server relays through up to 5 (Business) or 10+ (Enterprise) Microsoft 365 tenants in parallel. Route by sender domain (classic) or by AUTH-user binding (each authenticated user routes through one specific tenant). The mail tracker shows which tenant relayed each message.

🔄

Smart retries

On HTTP 429 (rate limit), 503 or network errors, the mail is resent with exponential backoff. On 401, the OAuth token is refreshed and retried immediately.

🛡️

STARTTLS & implicit TLS/SSL

Optional for incoming SMTP connections — choose STARTTLS or implicit TLS/SSL (connection encrypted from the very first byte, for older devices such as industrial controllers that don't speak STARTTLS). A self-signed certificate can be generated in the GUI, or bring your own PEM/PFX — including Let's Encrypt combinations. The Business edition can run several listener ports at once, each with its own TLS mode — handy when older and newer devices on the same server need different encryption.

🌐

IP whitelist

Relay only for trusted sources. CIDR ranges like 10.0.0.0/24 supported. In open mode we still log every IP connection for audit purposes.

📧

Sender whitelist

Only defined domains may pass as MAIL FROM. Alternative: override mode — SMTPly replaces the MAIL FROM with your central relay address.

🔐

Client secret safety

The Azure client secret is stored DPAPI-encrypted under %ProgramData%\Smtply\. Only the local service account can decrypt. Warning shown if expiry < 14 days.

📊

Privacy masking

Mail addresses and subjects can be masked in the tracker (m**l@e*****e.com). Body and attachments are never stored — metadata only.

🗃️

Retention control

Log files and mail tracker DB have independently configurable retention (7 / 14 / 30 / 90 days or "Do not store" / "Unlimited"). GDPR-friendly defaults.

🔁

Backup & import

Export the complete configuration as JSON — secrets stay DPAPI-protected. Or passphrase-encrypted via PBKDF2 + AES-256-GCM for migration to another server.

📧

Usage reports by email

Daily, weekly or monthly: compact HTML digest with totals (sent / failed / rejected), average delivery duration, top senders, top recipient domains and the most common error reasons. Recipient configurable, cadence selectable, can be disabled entirely.

🔔

Secret-expiry warning

Azure client secrets expire after 6, 12 or 24 months — SMTPly remembers the expiry date and emails a reminder at 30 / 14 / 7 / 1 days before, once per threshold. Rotate well in time instead of finding out when mail stops flowing.

🧹

Ad-hoc cleanup

Straight from Settings: "Apply retention now", "Delete all log files" and "Empty mail tracker" — quick housekeeping without restarting the service or running manual SQL.

Editions at a glance

One installer, three editions — your license key unlocks the matching feature set. Updates are free in all editions.

Starter Business Enterprise
Price €149
one-time
€249
one-time
from 1 October 2026: €299
On request
Microsoft 365 tenants 1 up to 5 10+
SMTP listener on one Windows server
Multiple SMTP listeners at once (own port & TLS mode each) 1 listener unlimited unlimited
OAuth2 / Microsoft Graph relay
SMTP authentication
Mail tracker / System log / Dashboard
14-day trial
Updates free free free
Monitoring endpoint (HTTP health check as JSON + metrics in Prometheus text format, works with any monitoring/RMM)
Journal BCC (blind copy of every mail to an archive mailbox)
Webhooks (HTTP POST on incidents to Teams, Slack, a ticket system or your automation)
Rate limit per source IP (throttles a single runaway device before it drags the tenant into throttling)
Scheduled configuration export (encrypted backup to a network share and/or by email)
Planned Business extensions (extended REST API — roadmap; monitoring endpoint, webhooks and email reports already shipped)
Planned Enterprise extensions (syslog/SIEM export, central management of multiple installations — roadmap)
Support standard support priority support priority support
Buy Starter Buy Business Buy Enterprise

Polar.sh is the merchant of record (EU vendor, based in Sweden). You pick the edition on the Polar checkout page.
Business will receive additional features over time — existing Business licenses get those for free.

Technical specs

PlatformWindows 10 / 11, Windows Server 2016 / 2019 / 2022 / 2025
Architecturex64 (self-contained, no separate .NET runtime required)
Technology.NET 8, WPF, ModernWpfUI, Serilog, MSAL.NET, Microsoft Graph SDK 5
SMTP portConfigurable, default 25 (internal) / 587 (external)
Bind addressDefault 127.0.0.1, optional 0.0.0.0 for LAN operation
Max message size25 MB default, up to 150 MB (Graph limit)
OAuth2Azure app registration (Phase 1: customer-side), application permission Mail.Send
ConfigurationJSON, secrets DPAPI-encrypted (LocalMachine scope)
LoggingSerilog file + IPC stream to GUI, mail tracker as SQLite
InstallerInno Setup, registers Windows service automatically