Apertura de la tienda: código promocional LAUNCH20 — 20 % de descuento en todo hasta finales de septiembre
El catálogo/Blog/The order email your customer never got

The order email your customer never got

2026-09-29 · Yodsira

From the shop's side, everything worked: payment confirmed, order in the admin, receipt queued. From the customer's side, nothing happened — no confirmation, no receipt, no tracking number. If your product is digital, the customer may have paid and received nothing at all. And the worst part: WordPress will not tell you. A failed email is not an error on any screen; the send attempt is made, the result is discarded, and the day continues.

Where order emails actually die

  1. The send never happened. PHP mail() failed, the SMTP server rejected the connection, or a plugin conflict broke the mail queue. WordPress often swallows the failure silently.
  2. The send happened once, and failed once. SMTP servers hiccup — a greylisting server asks you to retry in a few minutes, a timeout hits. One attempt, no retry, message lost.
  3. The send succeeded and landed in spam. A different problem with different fixes (SPF/DKIM/DMARC, sending reputation) — but from the customer's chair it looks identical.

The first two are the silent ones, and they are more common than shop owners assume — a busy store sending hundreds of transactional letters through a shared hosting mail server loses a percentage every single day.

The three-layer fix

First: send through real SMTP instead of PHP mail(), with proper authentication. That alone removes a large share of silent failures. Second: log every outgoing letter — who, to whom, when, with what result. "We think it sent" is not a status; a log is. Third: retry with a schedule. Most transient failures clear within minutes; a letter retried at 1, 5 and 30 minutes effectively cannot be lost to a hiccup — and when every retry has failed, someone must be told, because at that point it is not a hiccup anymore.

That third layer is exactly what our Mail Watchdog adds: automatic retries at configurable intervals, an alert only after all of them are exhausted (no noise for every hiccup), a preview of every logged email, resend with a corrected recipient for the typo cases, and a weekly digest of sent, failed and retried. But the architecture matters more than the tool: SMTP, a log, and retries. Any shop that has ever had a customer say "I paid but got nothing" — and every shop eventually does — already knows why.

← Todos los artículos