Proč e-maily z WooCommerce, Shoptetu nebo PrestaShopu padají do spamu a jak to opravit přes SMTP relay
Potvrzení objednávek odcházejí, ale zákazníci je nevidí. Nejčastější příčiny u e-shopů na vlastním hostingu i u pronajatých platforem, a postup, jak odesílání přesunout na SMTP relay s ověřenou doménou.
„Objednávku jsem udělal, ale nic mi nepřišlo." Tahle věta z chatu podpory bývá první signál, že e-maily z e-shopu končí ve spamu nebo vůbec nedorazí. Potvrzení přitom e-shop poslal; jen ho po cestě někdo zahodil. V tomhle článku projdeme, proč se to děje, a jak odesílání přesunout na SMTP relay, aniž byste v e-shopu měnili jediný řádek kódu.
Proč e-shop na vlastním hostingu posílá špatně
WooCommerce, PrestaShop i většina PHP aplikací ve výchozím nastavení odesílají poštu funkcí mail() přímo z webového serveru. To má čtyři problémy:
- Server není v SPF vaší domény. Příjemce vidí, že e-mail za
vas-eshop.czposlalweb123.hosting.cz, a SPF selže. - Chybí DKIM podpis. Webový server zprávy nepodepisuje, takže DMARC nemá o co se opřít.
- IP adresa hostingu je sdílená. Na stejném serveru běží desítky dalších webů; stačí jeden hacknutý WordPress rozesílající spam a reputace IP je pryč pro všechny.
- Hosting často blokuje port 25 nebo omezuje počet e-mailů za hodinu. V sezóně se pak potvrzení zpozdí o hodiny.
Výsledek: e-mail buď skončí ve spamu, nebo ho Gmail či Seznam rovnou odmítne. A protože webový server nemá žádnou zpětnou vazbu, e-shop si myslí, že všechno odeslal.
Proč to může být horší i u pronajaté platformy
Shoptet, Upgates a podobné platformy odesílají e-maily ze své infrastruktury. To je zpravidla v pořádku: mají vlastní SPF, DKIM a správce, kteří reputaci hlídají. Problémy vznikají, když:
- jste si nenastavili DNS záznamy, které platforma vyžaduje (typicky
include:v SPF a DKIM CNAME), takže e-maily jdou „jménem" vaší adresy bez ověření; - vaše doména má DMARC na
p=rejecta platforma není zarovnaná; - chcete posílat i z vlastní aplikace (fakturace, věrnostní program, vlastní skripty) a každý systém posílá jinudy, s jinou reputací.
Jestli lze na pronajaté platformě nastavit vlastní odchozí SMTP server, záleží na tarifu a doplňcích; ověřte si to v administraci nebo u podpory platformy. U vlastního hostingu to jde vždy.
Co je SMTP relay a proč to pomůže
SMTP relay je odchozí poštovní server, kterému e-shop zprávu předá, a který ji doručí za vás. Z pohledu e-shopu se nic nemění: pořád vytváří stejné e-maily, jen je místo lokální funkce mail() posílá na smtp.topemail.cz:587 s přihlašovacími údaji. Relay pak zajistí:
- odeslání z IP adres s hlídanou reputací, ne ze sdíleného hostingu;
- DKIM podpis vaší doménou a soulad s vaším SPF a DMARC;
- doručenky: u každého e-mailu vidíte, zda ho cílový server přijal, odložil nebo odmítl, a proč;
- blokovaný seznam: na adresy, které se vrátily nebo si stěžovaly, se přestane posílat automaticky;
- frontu a opakování: když je Seznam na chvíli nedostupný, relay to zkouší znovu, e-shop nic řešit nemusí.
Postup: WooCommerce
WordPress sám SMTP neumí, potřebujete plugin. Osvědčené jsou WP Mail SMTP, FluentSMTP nebo Post SMTP; všechny jsou zdarma v základní verzi a nastavení je stejné:
- Nainstalujte plugin a zvolte „Other SMTP" (vlastní server).
- Vyplňte: server
smtp.topemail.cz, port587, šifrováníTLS(STARTTLS), autentizace zapnutá, uživatel =clientId, heslo =secretz vašeho API klíče. - Adresa odesílatele: něco na vaší ověřené doméně, například
objednavky@vas-eshop.cz. Zapněte „force from address", aby pluginy třetích stran nepřepisovaly odesílatele na něco neověřeného. - Pošlete testovací e-mail z pluginu a zkontrolujte ho na Gmailu přes „Zobrazit originál": SPF, DKIM i DMARC musí být PASS.
Postup: PrestaShop
PrestaShop má SMTP přímo v administraci: Rozšířené parametry → E-mail → „Nastavit vlastní SMTP parametry". Hodnoty jsou stejné jako výše (server, port 587, TLS, uživatel a heslo). Odesílatele nastavíte v Nastavení obchodu → Kontakt. Pak Odeslat testovací e-mail na stejné stránce.
Postup: vlastní aplikace nebo jiný systém
Cokoli, co umí odesílat poštu přes SMTP (Nette, Laravel, Django, fakturační software, helpdesk), nastavíte stejně. Pokud je to vaše aplikace a chcete víc než jen odeslat (idempotence, značky, stav přes API), zvažte místo SMTP REST API; srovnání obou cest je v samostatném článku.
Na co nezapomenout
- Ověřte doménu dřív, než přepnete. Bez DKIM, SPF a DMARC relay nepomůže; jak na to, popisujeme v návodu k SPF, DKIM a DMARC.
- Nepište heslo do kódu. Přihlašovací údaje patří do konfigurace nebo proměnných prostředí; API klíč jde kdykoli zneplatnit a vygenerovat nový.
- Vyměňte odesílatele
noreply@za adresu, na kterou lze odpovědět, nebo aspoň nastavte Reply-To na podporu. Odpovědi zákazníků jsou cenné a „noreply" snižuje důvěru. - Hlídejte doručenky první týden. Pokud uvidíte odmítnutí od konkrétního příjemce (třeba Seznamu), v důvodu bývá přesně napsáno proč.
- Port 25 nepoužívejte. Hostingy ho blokují a relay ho nepotřebuje; 587 se STARTTLS je standard, 2525 záloha, když firewall 587 nepustí.
Shrnutí
E-maily z e-shopu padají do spamu, protože je odesílá webový server bez SPF, DKIM a reputace. SMTP relay to řeší bez změny e-shopu: ověříte doménu, v pluginu nebo administraci zadáte server, port a přihlašovací údaje, a od té chvíle máte u každého e-mailu stav doručení. Nastavení zabere půl hodiny, a většina z ní je čekání na DNS.
Pokud si nejste jistí, jestli váš e-shop vlastní SMTP umí, napište nám, s nastavením pomůžeme.
Transakční e-maily z vaší domény přes API nebo SMTP, od 0,025 do 0,06 Kč za e-mail podle objemu, prvních 1 000 e-mailů měsíčně zdarma. Registrace zdarma, bez platební karty.
Registrovat zdarma →