PrestaShop domyślnie wysyła maile za pośrednictwem funkcji PHP mail(), która korzysta bezpośrednio z serwera hostingu. W praktyce oznacza to, że Twoje wiadomości — szczególnie transakcyjne (potwierdzenia zamówień, powiadomienia o wysyłce) — trafiają do folderu spam albo w ogóle do nich nie docierają. Polska poczta (WP.pl, Onet, Interia, o2.pl), Gmail czy Outlook stosują coraz bardziej rygorystyczne filtry. Jeśli wysyłasz z niezweryfikowanej domeny bez prawidłowych rekordów SPF, DKIM czy DMARC, systemy antyspazmowe odbiorcy potraktują Twoje maile jako podejrzane lub nawet zablokują je na poziomie serwera.
Dobre wiadomości: problem ma proste rozwiązanie. Wystarczy podłączyć zewnętrzny serwer SMTP (np. GetResponse, Brevo czy Mailjet) i skonfigurować uwierzytelnianie domeny. Poniżej wyjaśniamy, jak to zrobić krok po kroku.
Dlaczego maile z PrestaShopa trafiają do spamu lub wcale się nie wysyłają?
Gdy PrestaShop wysyła mail za pośrednictwem funkcji mail() hosta, wiadomość opuszcza IP-adres serwera, na którym znajduje się Twoja strona. Ten IP często:
- Nie ma ustabilizowanej reputacji (może być wspólny dla setek innych stron);
- Nie jest powiązany z Twoją domeną — filtry widzą „rozbieżność" między headerem From a IP wysyłającym;
- Może figurować na listach spamowych (RBL) ze względu na działalność innego użytkownika tego serwera hosta;
- Brakuje mu rekordów uwierzytelniających SPF, DKIM i DMARC — polska poczta (zwłaszcza WP.pl, Onet) to traktuje jako zagrożenie.
Polska infrastruktura mailowa znana jest z zachowawczego podejścia do raczków spamowych. WP.pl, Onet, Interia czy o2.pl nie lubią zimnych rrassylek od nieznanych nadawców bez zaplanowanego warmingu. Gmail i Outlook od lutego 2024 roku wymagają obowiązkowych SPF i DKIM dla każdego adresu wysyłającego masowo — bez tego wiadomości mogą być automatycznie odrzucane.
Problem z PHP mail() — domyślna konfiguracja PrestaShopa
PrestaShop, podobnie jak inne popularne platformy (WooCommerce, osCommerce), domyślnie konfiguruje wysyłanie maili poprzez php.ini mail() lub narzędzie hosta (sendmail, postfix). To oznacza:
- Brak autentykacji domeny: Mail wysyłany jest „od" Twojej domeny w headerze, ale faktycznie pochodzi z IP serwera hosta — sprzeczność ta znana jest jako „spoofing" i filtry to natychmiast wyławiają.
- Brak ścieżki zwrotnej: Bounce'e i odpowiedzi mogą nie wrócić do Ciebie prawidłowo, co pogarsza reputację domeny.
- Brak obsługi DKIM: Wiadomości nie są cyfrowo podpisane — każdy może sfałszować Twój mail.
- Łatwy do omijania DMARC: Nawet jeśli ustawisz politykę DMARC, host może jej nie przestrzegać, bo wysyłanie odbywa się poza jego kontrolą.
Rezultat: polska poczta (WP.pl, Onet) skategoryzuje Twoje maile jako spam lub podejrzane. Gmail może je zaakceptować, ale tam też będą miały mniejszą szansę na inbox placement, szczególnie jeśli to Twoja pierwsza korespondencja z danym użytkownikiem.
Jak skonfigurować zewnętrzny SMTP w PrestaShopie
Kroki są proste i nie wymagają zmian kodu. Wejdź do panelu administracyjnego:
- Parametry (Settings) > Email — przejdź do karty konfiguracji poczty.
- Zmień typ wysyłania na SMTP: Zamiast domyślnego
mail(), wybierz opcjęUse SMTP serverlub podobną (dokładna nazwa zależy od wersji PrestaShopa). - Wpisz dane serwera SMTP:
- Host SMTP (np.
smtp.brevo.comlubsmtp.mailjet.com) - Port (zwykle 587 dla TLS lub 465 dla SSL)
- Login (adres email lub nazwa użytkownika w serwisie)
- Hasło (API key lub hasło)
- Host SMTP (np.
- Testuj połączenie: PrestaShop najczęściej oferuje przycisk „Test" — kliknij, aby sprawdzić, czy konfiguracja działa.
- Zapisz zmiany.
Jeśli nie masz jeszcze dostawcy SMTP, rozważ polskie rozwiązania: GetResponse (Gdańsk, pełna obsługa polskiej poczty) czy FreshMail. Globalne alternatywy, przyjazne polskiemu rynkowi: Brevo (dawniej Sendinblue), Mailjet czy Mailchimp — wszystkie pozwalają weryfikować domenę i obsługują SPF/DKIM/DMARC. Wybór zależy od budżetu i dodatkowych potrzeb (np. automation czy segmentacja).
SPF, DKIM i DMARC — kluczowe uwierzytelnianie domeny
Po podłączeniu SMTP musisz skonfigurować trzy rekordy w DNS Twojej domeny. To są fundamenty nowoczesnego bezpieczeństwa poczty i filtry spamowe liczą się na nich w 100%.
SPF (Sender Policy Framework): Dodaj rekord TXT w DNS:
v=spf1 include:brevo.com ~all(Zastąp brevo.com domeną Twojego SMTP providera — GetResponse, Mailjet, etc.)
DKIM (DomainKeys Identified Mail): Dostawca SMTP (GetResponse, Brevo) da Ci gotowy rekord DNS do wklejenia. Zawiera klucz publiczny, którym odbiorcy mogą zweryfikować, że mail faktycznie od Ciebie pochodzi.
DMARC (Domain-based Message Authentication, Reporting & Conformance): Ustawienie polityki:
v=DMARC1; p=none; rua=mailto:abuse@twojadomena.plNa początek p=none (monitoruj bez blokowania); później przejdź na p=quarantine (karantanna) lub p=reject (pełne wdrożenie).
Polska poczta (szczególnie WP.pl, Onet) i Gmail/Outlook wymagają co najmniej SPF + DKIM. DMARC zwiększa jeszcze bardziej szanse na inbox placement.
Testowanie dostarczalności maili PrestaShopa
Po konfiguracji SMTP i rekordów DNS możesz testować, czy maile faktycznie trafiają do skrzynek odbiorców — a nie do spamu. Najprostszy sposób: użyj bezpłatnego inbox placement test.
Wyślij testowy mail na adres udostępniony przez narzędzie test (otrzymasz seed-adresy u ponad 20 dostawców poczty, w tym polskich: WP.pl, Onet, Interia). Po kilku minutach zobaczysz:
- Status dostarczenia: Czy mail trafił do Inbox, Spam, Promotions czy Tabbed?
- Weryfikacja rekordów: Czy SPF, DKIM i DMARC są prawidłowo skonfigurowane?
- Werdykty spamowych filtrów: Co mówią SpamAssassin, Barracuda, Proofpoint i inne?
- Renderowanie: Jak mail wygląda w realnym inboxie — w trybie jasnym i ciemnym (bonus dla dark-mode maili).
To narzędzie jest całkowicie darmowe i nie wymaga rejestracji — idealne do szybkiej diagnostyki.
Weryfikacja domeny u dostawcy SMTP
Prawie każdy profesjonalny dostawca SMTP (GetResponse, Brevo, Mailjet, Mailchimp) wymaga, aby Ty zweryfikował(a) swoją domenę. To odbywa się poprzez dodanie rekordu DNS TXT lub CNAME:
- Zaloguj się do panelu SMTP providera (np. GetResponse).
- Przejdź do sekcji „Senders" lub „Domains" — poszukaj opcji „Verify domain".
- Skopiuj kod weryfikacyjny (zwykle rekord TXT).
- Dodaj ten rekord do DNS domeny (panel hostingu, Cloudflare, etc.).
- Czekaj 5–30 minut na propagację DNS.
- Wróć do providera i kliknij „Verify" — system potwierdzi, że jesteś właścicielem domeny.
Po weryfikacji Twoja domena zyskuje „białą flagę" u dostawcy SMTP i filtry spamowe odbiorców traktują maile z większym zaufaniem. To szczególnie ważne w Polsce, gdzie WP.pl i Onet bacznie obserwują reputację domeny.
Czy maile będą wysyłać się natychmiast po zmianie SMTP?
Formalnie — tak, od razu po zapisaniu konfiguracji. Jednak jeśli Twoja domena jest nowa lub nie ma ustabilizowanej reputacji, polska poczta (WP.pl, Onet, Interia) może traktować Twoje maile z podejrzliwością przez pierwsze tygodnie. Rozwiązanie: wysyłaj małe objętości maili na początek (kilkadziesiąt dziennie) i stopniowo zwiększaj — to się nazywa „warming" i jest konieczne dla nowych domen.
Czy GetResponse, Brevo czy Mailjet wystarczą do wysyłania maili?
Tak, ale warunki: po pierwsze, zweryfikuj domenę u wybranego providera (rekord DNS). Po drugie, skonfiguruj SPF, DKIM i DMARC w DNS. Po trzecie, testuj regularnie narzędziem inbox placement test — zobaczysz, czy maile trafiają do Inbox czy Spam. Dodatkowo: wybierz providera, który obsługuje polską pocztę — GetResponse i FreshMail mają lokalne wsparcie i dobrze „siedzi" u polskich dostawców.
Jakie są różnice dostarczalności między WP.pl, Onet, Interia a Gmilem?
Polskie serwery (WP.pl, Onet, Interia, o2.pl) są znane z zachowawczego podejścia do rau spamowego. Jeśli wysyłasz w zimną rassykę bez warmingu lub bez uwierzytelniania domeny, będziesz trafiać w spam. Gmail i Outlook są bardziej elastyczne, ale obowiązkowe SPF + DKIM (od lutego 2024). Podsumowanie: najpierw zaufaj polskiemu rynkowi (warmup + weryfikacja domeny), potem reszta poczty będzie łatwa.