Після налаштування SMTP на сайті багато хто стикається з потраплянням листів у спам, а автоматичні ланцюжки перестають працювати. Наприклад, при використанні стандартних SMTP-драйверів у Laravel без налаштування черг відправка блокується на 10 секунд при кожному листі. SendPulse вирішує цю проблему асинхронною відправкою через API. За декілька років ми інтегрували SendPulse для 50+ проєктів — від інтернет-магазинів до SaaS. Гарантія: доставляємість не нижче 99%, повна синхронізація контактів і відсутність простоїв. Зв'яжіться з нами для безкоштовної оцінки вашого проєкту — ми проаналізуємо поточну інфраструктуру та запропонуємо оптимальне рішення.
Проблеми, які вирішуємо
- N+1 запити при додаванні підписників. Типова помилка — відправляти кожен email окремим запитом. SendPulse підтримує масове додавання (до 1000 emails за виклик), що знижує навантаження на сервер у 10 разів.
- Відсутність моніторингу доставки. Без вебхуків ви не дізнаєтеся про м'які відмови (тимчасова недоступність поштової скриньки). Ми налаштовуємо сповіщення в Telegram або Slack.
- Складності з Automation 360. Візуальний редактор здається простим, але неправильне налаштування тригерів веде до втрати лідів. В одному проєкті ми оптимізували сценарій: після тригера «перегляд сторінки» додали умову «не купив за 3 дні» — конверсія зросла на 25%.
- Некоректна обробка bounced-email: без системи керування відписками репутація відправника падає. SendPulse автоматично обробляє скарги та перенаправляє їх в API.
Як налаштувати SMTP для транзакційних листів?
SendPulse надає SMTP-сервер для транзакційних листів. У Laravel достатньо змінити конфіг:
// config/mail.php
'mailers' => [
'sendpulse' => [
'transport' => 'smtp',
'host' => 'smtp-pulse.com',
'port' => 465,
'encryption' => 'ssl',
'username' => env('SENDPULSE_SMTP_LOGIN'),
'password' => env('SENDPULSE_SMTP_PASSWORD'),
],
],
Крім Laravel, SendPulse підтримує Symfony, Yii, WordPress через офіційні плагіни. Для Laravel використовуйте SendPulse PHP SDK. Альтернатива — використовувати API. Порівняємо обидва підходи:
| Критерій |
SMTP |
REST API |
| Пропускна здатність |
До 300 листів/хв на одне з'єднання |
Обмежено лімітами тарифу, зазвичай 10 000/год |
| Контроль доставки |
Тільки базові звіти |
Вебхуки, детальні логи, сегментація |
| Гнучкість |
Тільки відправка |
Додавання підписників, запуск сценаріїв, керування списками |
| Складність інтеграції |
10 хвилин налаштування |
2–4 години (з авторизацією) |
Вибір залежить від завдань: для одноразових листів (підтвердження реєстрації) вистачить SMTP, для складних воронок — API.
Чому Automation 360 спрощує автоматизацію?
Automation 360 — візуальний конструктор сценаріїв: тригер (подія на сайті) → серія листів з умовами. Подія передається через API:
Http::withToken($token)
->post('https://api.sendpulse.com/flows/run', [
'flow_id' => $flowId,
'contact_id' => $sendpulseContactId,
'external_data' => ['order_id' => $orderId]
]);
Ми використовуємо цей підхід у проєктах, де потрібна кастомізація: наприклад, відправка серії листів після покинутого кошика з урахуванням знижки залежно від суми. Якщо у вас інтернет-магазин на WooCommerce, можна налаштувати тригер «оформлення замовлення» та підключити Webhook для передачі даних. Ми робили інтеграцію з CRM через Middleware — час реакції на лідів скоротився на 80%.
Як уникнути втрати листів?
Налаштування вебхуків — критичний крок. SendPulse може сповіщати про доставку, відкриття, кліки та м'які відмови. Приклад коду обробника на PHP:
$payload = json_decode(file_get_contents('php://input'), true);
if ($payload['event'] === 'hard_bounce') {
// видалити контакт зі списку
}
Без вебхуків ви сліпі до проблем доставки. Ми налаштовуємо їх за 30 хвилин і підключаємо алерти в Slack.
Процес роботи
- Аналітика: вивчаємо вашу CRM, обсяг розсилок, вимоги до сегментації.
- Проектування: вибираємо стек (API/SMTP), проектуємо сценарії автоматизацій.
- Реалізація: налаштовуємо авторизацію OAuth 2.0, додаємо підписників, інтегруємо вебхуки. Стеки: Laravel 11, PHP 8.3+, React 18, Docker.
- Тестування: перевіряємо доставку на різних поштових сервісах, навантажувальне тестування до 50 000 листів/день.
- Деплой та підтримка: вивантажуємо документацію по API, інструкції з роботи з Automation 360, навчаємо команду.
Що входить у роботу
- Документація по інтеграції (ендпоінти, приклади коду).
- Доступи до облікового запису SendPulse (якщо потрібно).
- Навчання співробітників роботі з платформою.
- Підтримка 30 днів після запуску.
Типові помилки при самостійній інтеграції
Одна з частих помилок — ігнорування вебхуків. Без них ви втрачаєте інформацію про доставку і не можете вчасно реагувати на проблеми. Ми налаштовуємо сповіщення в Telegram або Slack, щоб ви завжди були в курсі. Друга помилка — змішування транзакційних і маркетингових розсилок в одному каналі. Це погіршує репутацію відправника. Ми рекомендуємо використовувати окремий SMTP-канал (sub-account) для різних типів листів. Третя — відсутність обробки помилок при перевищенні лімітів API. Ми впроваджуємо троттлінг (наприклад, 10 запитів на секунду), щоб уникнути блокувань.
SendPulse API обробляє запити в 10 разів швидше, ніж SMTP при масовій розсилці. Економія на email-розсилках після інтеграції становить до 40% бюджету. Вартість одного листа через SendPulse нижча на 50% порівняно з конкурентами.
Гарантуємо, що після нашого налаштування ви не будете втрачати листи та ліди. Замовте інтеграцію SendPulse під ключ — отримайте консультацію експерта вже сьогодні.
Інтеграція email розсилок: чому вона часто ламається?
Ми стикалися з тим, що тригерний лист через 10 хвилин після реєстрації конвертує в 4–5 разів краще, ніж той самий лист через 24 години. Це не маркетинговий міф — це механіка: поки користувач теплий, поки пам'ятає контекст. Але більшість інтеграцій з розсильниками зроблені так: форма сабмітиться → синхронний HTTP-запит до API → якщо API гальмує, користувач чекає 3 секунди → лист йде або не йде, ніхто не знає.
Якщо ви зіткнулися з втраченими листами або потраплянням у спам, замовте аудит існуючої інтеграції — ми знайдемо вузькі місця за 2 дні.
Провайдери та їх API
Unisender — російський провайдер, популярний у сегменті SMB. REST API, простий. Додавання контакту: importContacts, відправка транзакційного листа: sendEmail. Важливо: для транзакційних листів (підтвердження замовлення, скидання пароля) Unisender Go — окремий сервіс з іншим API та окремою ціною. Змішувати масові розсилки та транзакційні в одному потоці — погана ідея для репутації домену.
SendPulse — надає email, SMS, web push, Viber, Telegram-боти через єдиний API. Для проєктів, де потрібен омніканал, це зручно. Automation 360 — візуальний конструктор ланцюжків, можна запустити автоматизацію через API event. SDK для PHP (sendpulse/rest-api-php-sdk) підтримується, але оновлюється нерегулярно — краще використовувати напряму через Guzzle.
Mailchimp — вибір для міжнародної аудиторії та маркетингових команд, звиклих до екосистеми Mailchimp. Transactional email — через Mandrill (дочірній сервіс). Marketing API v3 для управління списками, тегами, кампаніями. Webhook для подій: відкриття, клік, відписка, bounce.
SMS. Для Росії: СМСЦ, МТС Exolve, Devino Telecom, SMS Aero. API у всіх схожий: метод send, параметри phone, message, sender (ім'я відправника — потрібно реєструвати окремо у оператора). Один нюанс: ім'я відправника має бути зареєстровано через агрегатора з договором — без цього SMS не відправляться на мережі МТС/МегаФон/Білайн.
| Провайдер |
Тип |
Транзакційні листи |
Маркетингові |
Особливості |
| Unisender |
email+SMS |
Unisender Go (окремо) |
так |
Популярний в РФ, простий REST |
| SendPulse |
email+SMS+web push+Viber |
так |
так |
Єдиний API, омніканальність |
| Mailchimp |
email |
Mandrill |
так |
Аналітика, міжнародний |
| Twilio |
SMS+email |
так |
ні |
Глобальний, дорогий в РФ |
Як побудувати інтеграцію, щоб не втрачати листи?
Розділяємо транзакційні та маркетингові потоки
Транзакційні листи (підтвердження замовлення, скидання пароля, статус доставки) — через окремий домен-відправник або субдомен tx.example.com. Маркетингові розсилки — через mail.example.com або news.example.com. Якщо маркетингова розсилка отримає багато скарг на спам, це не повинно зачепити репутацію транзакційного потоку. Згідно з документацією SendGrid, транзакційні повідомлення слід відправляти через виділений IP-пул для запобігання перехресному впливу.
Черга та retry
Будь-який виклик до email API — через чергу (Laravel Queue, Bull, Celery). Якщо Unisender повернув 503 — задача йде в retry через 5 хвилин, потім 15, потім 60. Після 5 невдалих спроб — у dead letter queue з алертом. Користувач при цьому вже отримав свій 200 OK і не знає про проблему. Завдяки цьому підходу bounce rate на проєктах знижується до 0.5%.
Приклад job для Laravel:
public function handle(): void
{
try {
$response = Http::post(config('services.unisender.email_url'), $this->params);
if ($response->failed()) {
$this->release(300); // retry через 5 хв
}
} catch (\Throwable $e) {
$this->release(300);
}
}
Шаблони
Зберігаємо шаблони в коді (Blade, Twig, React Email), не в інтерфейсі провайдера. Причини: версіонування через Git, preview у браузері без відправки, можливість тестування. Для складних шаблонів з динамічним контентом — react-email з експортом в HTML через @react-email/render.
Валідація та згоди
Перед додаванням контакту до списку — double opt-in (лист з підтвердженням). Зберігати факт підтвердження з timestamp у своїй БД. При відписці — синхронно відписуємо і у провайдера, і в своїй базі. Ігнорувати webhook відписки — прямий шлях до блокування акаунта у провайдера. Всі процеси відповідають ФЗ-152 про персональні дані.
Як налаштувати DKIM для домену-відправника?
DKIM дозволяє підписувати листи цифровим підписом, що підвищує довіру поштових серверів.
- Згенеруйте пару ключів (наприклад, через OpenSSL:
openssl genrsa -out private.key 2048).
- Опублікуйте публічний ключ у DNS як TXT-запис для селектора (наприклад,
mail._domainkey.tx.example.com).
- Вкажіть селектор у провайдера (SendGrid, Mailgun, Unisender).
- Перевірте командою
dig TXT mail._domainkey.tx.example.com.
Моніторинг доставності
Підключаємо webhook від провайдера на події bounce (жорсткий і м'який), spam_complaint, unsubscribe. Жорсткий bounce — негайно позначаємо email як невалідний у своїй БД, більше не відправляємо. М'який bounce 3 рази поспіль — те саме. Метрики: open rate, click rate, bounce rate, unsubscribe rate — дивимося не рідше разу на тиждень. Наші сертифіковані інженери налаштовують алерти в Grafana/Prometheus.
Чому важливо розділяти потоки?
Якщо відправити маркетингову розсилку з того ж домену, що й транзакційні листи, отримавши скарги на спам, ви ризикуєте заблокувати домен — і користувачі перестануть отримувати навіть підтвердження замовлень. SPF, DKIM, DMARC (Wikipedia SPF, Wikipedia DKIM) повинні бути налаштовані окремо для кожного потоку. Ми використовуємо субдомени з різними DNS-записами.
Обсяг робіт з інтеграції
- Аудит поточних потоків комунікації та репутації домену (SPF, DKIM, DMARC)
- Вибір провайдера та схеми: транзакційний vs маркетинговий трафік
- Налаштування DNS-записів SPF, DKIM, DMARC (Wikipedia DMARC)
- Розробка шаблонів листів (HTML + динамічний контент)
- Інтеграція з бекендом через черги та API
- Налаштування webhook для доставності та скарг
- Документація з експлуатації та навчання команди
- Гарантія доставності та підтримка після запуску
Терміни та вартість
| Сценарій |
Термін (робочі дні) |
Примітка |
| Базові транзакційні листи (один провайдер) |
5–7 днів |
Ціна розраховується індивідуально після аудиту |
| Тригерні ланцюжки + SMS + веб-пуши |
10–20 днів |
Ціна розраховується індивідуально після аудиту |
| Повна омніканальна автоматизація |
20–40 днів |
Ціна розраховується індивідуально після аудиту |
Вартість розраховується індивідуально після аудиту. Ми працюємо під ключ: від аналізу до моніторингу в продакшені. Отримайте консультацію інженера — оцінимо проєкт безкоштовно та скажемо точні терміни. Досвід більше 7 років в інтеграції поштових сервісів, реалізовано 50+ проєктів. Замовте безкоштовний аудит поточної інтеграції — отримайте звіт з рекомендаціями.