Skip to content

Все для WordPress, веб-розробки — і не тільки

💌 Не відправляються листи WooCommerce: повний розбір причин і рішень

💌 Не відправляються листи WooCommerce: повний розбір причин і рішень

Покупець оформив замовлення, гроші списані, а лист із підтвердженням не прийшов. Клієнт у паніці: магазин узяв оплату і зник. Знайома картина для власника магазину на WooCommerce?

Проблема «листи не надсилаються» входить до топ-3 технічного головного болю після запуску інтернет-магазину. Може не доходити email адміністратору про нове замовлення, клієнту, сповіщення про покупку, а то й усі листи разом зникають у нікуди. Причини зазвичай не в самому WooCommerce, а в тому, як WordPress обробляє пошту за замовчуванням.

Розберемо ланцюжок причин по порядку, від тривіального налаштування «Від кого» до підключення SMTP через Brevo. Після цього листи перестануть губитися.

💡 Швидкий огляд:

  • Перевірити ім’я та адресу відправника в налаштуваннях WooCommerce (найчастіше проблема тут)
  • Протестувати поштовий сервер WordPress плагіном Check Email
  • Переглянути журнал надсилання через WP Mail Logging, чи був лист узагалі відправлений
  • Виключити спам-фільтри та конфлікт однакових доменів у відправника й одержувача
  • Підключити SMTP через Brevo (колишній Sendinblue), щоб листи надходили надійно

1. Перевірте ім’я та адресу відправника в WooCommerce

Половина звернень «листи не йдуть» вирішується на цьому кроці. WooCommerce за замовчуванням підставляє в поле «Від кого» те, що вказано в загальних налаштуваннях WordPress, а там часто стоїть щось на кшталт [email protected] або навіть ім’я користувача без домену.

Перейдіть у WooCommerce → Налаштування → вкладка Email. Прогортайте до блоку «Параметри відправника»:

Налаштування відправника листів WooCommerce

Що перевірити:

  • Ім’я «Від»: має бути назвою магазину латиницею, без спецсимволів. Формат MyStore працює, а MyStore@2024, ні. Поштові сервери не люблять спецсимволи в імені відправника: знаки @, # та &.
  • Адреса «Від», реальний email на вашому домені. Адреса виду [email protected] на домені магазину myshop.ru викличе підозру в спам-фільтрів: лист прийшов із домену myshop.ru, а зворотна адреса, gmail.com. Поштові сервери бачать невідповідність і блокують доставку.
  • Після правок натисніть Зберегти зміни й одразу надішліть тестове замовлення.

2. Протестуйте поштовий сервер WordPress

Якщо налаштування відправника в порядку, наступний крок, перевірка самого поштового сервера. WordPress за замовчуванням використовує функцію wp_mail(), яка смикає mail() PHP на хостингу. Цей механізм працює нестабільно: багато хостинг-провайдерів блокують вихідні листи через PHP mail() для боротьби зі спамом із віртуальних серверів.

Плагін Check Email дає простий спосіб перевірити, чи здатен ваш сервер узагалі надсилати листи. Після встановлення зайдіть в Інструменти → Check Email, введіть будь-яку зовнішню адресу (наприклад, вашу особисту Gmail) і натисніть «Надіслати тестовий лист».

Тест поштового сервера плагіном Check Email

Результат:

  • Лист прийшов, поштовий сервер працює, проблема на стороні WooCommerce або конкретного типу сповіщень. Перевірте, чи ввімкнено потрібне сповіщення в WooCommerce → Налаштування → Email.
  • Лист не прийшов (навіть у спамі), сервер не надсилає. Переходьте до кроку 6: потрібен SMTP.

3. Перевірте журнал надсилання

Навіть якщо тестовий лист не дійшов, він міг бути відправлений сервером, а потім заблокований на стороні одержувача. Плагін WP Mail Logging показує, що відбувається з кожним листом після виклику wp_mail().

Встановіть плагін, надішліть тестове замовлення в WooCommerce та зайдіть у WP Mail Log в адмінці:

Журнал відправки листів WP Mail Logging

На що дивитися:

  • Лист у лозі є, але не дійшов, сервер відправив, спам-фільтр одержувача заблокував. Переходьте до кроку 5.
  • Листа в лозі немає, WordPress навіть не намагався відправити. Або вимкнено сповіщення в WooCommerce → Email, або PHP mail() заблокований хостингом. Потрібен SMTP (крок 6).
  • Помилка в стовпці Error, читайте текст помилки, часто там пряма відповідь (неправильний заголовок, відмова SMTP-сервера хостингу).

4. Змініть поштовий сервіс одержувача

Специфічна, але часта ситуація: клієнти й адміністратор магазину використовують пошту на одному домені. Наприклад, і ви, і покупець зареєстровані з адресами @yourdomain.com. Лист іде з [email protected] на [email protected], і поштовий сервер іноді «кидає» такі листи, бо бачить адресовану самому собі пошту із зовнішнього джерела.

Рішення просте: для адміністративних сповіщень вкажіть адресу на сторонньому сервісі, Gmail, Яндекс.Пошта, Proton Mail. У WooCommerce → Налаштування → Email знайдіть потрібне сповіщення та змініть адресу одержувача на зовнішню.

5. Виключіть потрапляння в спам

Якщо листи надсилаються, але потрапляють у теку «Спам», проблема в репутації IP вашого хостингу. Загальні сервери дешевого хостингу регулярно потрапляють у чорні списки (DNSBL) через сусідів-спамерів. Результат: Gmail і Outlook відкидають усе, що приходить із цього IP.

Що можна зробити:

  • Зв’язатися з хостинг-провайдером, повідомити про проблему. Великі хостери (SiteGround, Cloudways, Kinsta) вирішують це швидко; дрібні можуть розвести руками.
  • Змінити хостинг-провайдера, радикально, але іноді єдиний спосіб, якщо IP у чорних списках місяцями.
  • Підключити SMTP-сервер Brevo, найнадійніший шлях без зміни хостингу. Листи йдуть через інфраструктуру Brevo з чистою репутацією, а не через поштовий сервер хостингу.

Третій варіант, саме те, заради чого написаний наступний розділ.

6. Що таке SMTP і чому він закриває проблему

SMTP (Simple Mail Transfer Protocol), протокол, за яким працює професійне надсилання пошти. Коли ви натискаєте «надіслати» в Gmail, лист іде через SMTP-сервер Google. Коли WooCommerce викликає wp_mail(), лист іде через mail() PHP на хостингу, а цей механізм не використовує автентифікацію, шифрування і часто не має DKIM/SPF-записів.

SMTP-сервер, навпаки:

  • Автентифікує кожен лист логіном і паролем, спам-фільтри довіряють.
  • Шифрує з’єднання TLS, лист не читається дорогою.
  • Має репутацію чистого відправника, не в чорних списках.

Найдоступніший спосіб підключити SMTP до WordPress у 2026 році, сервіс Brevo (до травня 2023, Sendinblue). Безплатний тариф Brevo дозволяє надсилати до 300 листів на день, достатньо для більшості магазинів на WooCommerce. Платні тарифи починаються з 9000 листів на місяць.

Краще зрозуміти тему допоможе відео, налаштування Brevo на WordPress від встановлення до тестового листа:

7. Налаштуйте Brevo для надсилання листів WooCommerce

Brevo замінює wp_mail() власним SMTP-сервером, після налаштування всі листи WooCommerce (замовлення, скидання пароля, сповіщення адміну) йдуть через інфраструктуру Brevo з гарантованою доставкою.

Встановлення плагіна

Перейдіть у Плагіни → Додати новий, знайдіть «Brevo» (або «Sendinblue», плагін досі індексується під старою назвою). Встановіть та активуйте плагін Brevo for WooCommerce:

Встановлення плагіна Brevo для WooCommerce

Отримання API-ключа

Зареєструйтеся на brevo.com та підтвердьте email. В особистому кабінеті перейдіть до розділу SMTP & API → API Keys, створіть ключ і скопіюйте його:

API-ключ Brevo в особистому кабінеті

Поверніться до адмінки WordPress, відкрийте Brevo → Home і вставте ключ у поле API Key. Плагін під'єднається до акаунта:

Плагін Brevo після активації API-ключа

Що відбувається після активації

Плагін автоматично:

  • Перенаправляє всі виклики wp_mail() через SMTP-сервер Brevo
  • Додає DKIM-підпис і надсилає листи через TLS
  • Показує статистику доставки в особистому кабінеті Brevo

Після активації надішліть тестове замовлення в WooCommerce. Лист має дійти до отримувача за 10-30 секунд. Якщо ні, перевірте вкладку Transactional → Logs у кабінеті Brevo: там видно долю кожного листа з точним статусом доставки.

Для магазинів із великим потоком замовлень або тих, кому Brevo з якоїсь причини не підходить, у нас є добірка з 5 найкращих SMTP-плагінів для WordPress.

⁉️🤔 Часті запитання

Чому листи WooCommerce потрапляють у спам, хоча SMTP налаштовано?

SMTP-сервер Brevo має високу репутацію, але спам-фільтри аналізують і вміст листа. Тема «ЗАМОВЛЕННЯ ПІДТВЕРДЖЕНО!!!» із трьома знаками оклику швидше опиниться в спамі, ніж «Замовлення №1047 підтверджено». У WooCommerce → Налаштування → Email відредагуйте тему кожного листа: залиште змінні {order_number} і {site_title}, приберіть крикливі формулювання. Також перевірте, чи немає в тексті посилань на домени з чорних списків.

Чи можна використовувати Gmail SMTP замість Brevo?

Можна, але з обмеженнями. Gmail SMTP через плагін WP Mail SMTP дає до 500 листів на день для звичайного акаунта й до 2000 для Google Workspace. Однак Google сканує вихідну пошту й може заблокувати акаунт у разі «підозрілої активності», а масові транзакційні листи під цей критерій потрапляють. Для магазину з 5-10 замовленнями на день Gmail підійде, але для проєкту, що зростає, Brevo надійніший: немає ризику блокування, є детальна статистика доставки й open-tracking.

Листи приходять із затримкою в кілька хвилин — це нормально?

Транзакційні листи через Brevo доставляються в середньому за 2-5 секунд. Затримки в кілька хвилин — це сигнал до діагностики. Перевірте вкладку Transactional → Logs у Brevo: статус queued довше хвилини свідчить про перевантаження сервера Brevo або проблеми з приймальним сервером (корпоративний Exchange виконує ланцюжок перевірок SPF → DKIM → DMARC). Це не проблема магазину, але якщо клієнти скаржаться, попросіть їх додати адресу магазину до білого списку.

Sendinblue перейменувався, мої старі налаштування зламаються?

Ні. Brevo провів ребрендинг у травні 2023 року з повною зворотною сумісністю API. Усі старі ключі Sendinblue працюють, плагін у репозиторії WordPress оновлюється під slug-ом woocommerce-sendinblue-newsletter-subscription. Єдина візуальна відмінність, логотип і назва в адмінці. Жодних дій із міграції не потрібно: налаштування SMTP, ліміти й шаблони зберігаються в акаунті автоматично.

Що робити, якщо не хочу використовувати сторонній SMTP-сервіс?

Власний SMTP-сервер на VPS (Postfix + Dovecot) виправданий за обсягів від 100 000 листів на місяць: десятки годин налаштування й постійний моніторинг репутації IP. Альтернатива: підключити Amazon SES через WP Mail SMTP, частки цента за тисячу листів, але потрібне ручне налаштування DKIM/SPF/DMARC у DNS і немає візуальної статистики доставки без зовнішньої панелі. До 100 000 листів Brevo й аналоги дешевші та простіші.

Яке рішення обрати для вашого магазину

Проблема листів WooCommerce — це не магія, а ланцюжок із трьох ланок: налаштування відправника, поштовий сервер хостингу і механізм доставки. Якщо після цієї статті пройти ланцюжком згори донизу, листи перестануть губитися того самого дня.

Короткий підсумок за сценаріями:

  • Листи іноді доходять, іноді ні: почніть із кроку 1, перевірте ім’я «Від» та адресу відправника. Найчастіше проблема саме там.
  • Листи не доходять узагалі, тест Check Email мовчить, переходьте до кроку 6: налаштуйте Brevo SMTP. Це рішення з найнижчою ціною помилки.
  • Листи потрапляють у спам, SPF/DKIM/DMARC + Brevo. Без SMTP репутацію хостинг-IP не вилікувати.

Якщо обсяг листів перевалив за 300 на день, оновлюйте тариф Brevo або дивіться альтернативні SMTP-плагіни. І пам’ятайте: кожен недоставлений лист із підтвердженням замовлення — це клієнт, який більше не повернеться.