Отправляйте транзакционные письма из HubSpot через свой домен — и вот почему это важно
Почему ваши транзакционные письма могут проваливать проверку, а вы об этом даже не догадываетесь
Вы неделями выстраиваете идеальные воронки в HubSpot. Приветственные цепочки на месяц вперёд. Напоминания о брошенных корзинах. Письма для сброса пароля, которые пользователи реально открывают.
Но есть неприятная правда: когда клиент получает это самое письмо о сбросе пароля, его почтовый клиент может показывать предупреждение — «Gmail не удалось проверить, что yahoo.com действительно отправил это сообщение».
Репутация бренда от этого не выигрывает.
Система транзакционных писем в HubSpot работает неплохо — пока не начнёшь смотреть на заголовки аутентификации. По умолчанию HubSpot подписывает эти письма своими DKIM-ключами, а не вашими. И когда Google запускает проверку, он видит несоответствие: в поле From значится вы@вашакомпания.ru, а подпись DKIM говорит header.d=hubspot.com.
Это провал DMARC-выравнивания. И для транзакционных писем — тех, которые пользователи действительно открывают и на которые реагируют — это серьёзная проблема.
Маркетинговые и транзакционные письма — в чём разница
Прежде чем что-то чинить, разберёмся, с чем имеем дело.
Маркетинговые рассылки HubSpot идут через выделенную инфраструктуру. Там целая команда занимается репутацией IP-адресов, прогревом и оценкой отправителя. Для массовых кампаний это нормально.
Транзакционные письма — совсем другое дело. Это персонализированные коммуникации, которые запускаются действиями пользователя: сброс пароля, подтверждение заказа, уведомление о форме, квитанция об оплате. Клиенты ожидают, что такие письма придут от имени компании. И почтовые клиенты относятся к ним строже — усиленная проверка, потому что транзакционные письма популярны у фишеров.
Когда HubSpot отправляет их через свою инфраструктуру с его подписью, вы пользуетесь чужой репутацией вместо того, чтобы строить свою.
MailKite: почтовый идентификатор вашего домена
MailKite — это SMTP-релей, который стоит между вашим приложением и почтовым сервером получателя. Главная фишка: он подписывает каждое письмо вашим DKIM-ключом, а не своим.
Вот что это даёт:
- DMARC-выравнивание проходит. Ваш домен в From совпадает с DKIM-подписью.
- Растёт репутация вашего домена. Каждое письмо через ваш домен добавляет историю отправки.
- Логи и аналитика. Видите точно, какие письма ушли куда и с каким статусом.
- Повторы и отказоустойчивость. Если сервер получателя временно недоступен, MailKite сам переотправит.
Настраивается всё это удивительно просто.
Пошаговая настройка: как пустить HubSpot через ваш домен
Шаг 1: Привяжите домен в MailKite
Зарегистрируйтесь в MailKite и добавьте домен для отправки. Понадобится доступ к DNS-настройкам (если управляете DNS где-то ещё — займёт пять минут, если через NameOcean — будет ещё быстрее прямо из панели).
MailKite выдаст три DNS-записи для публикации:
- MX-запись для входящей маршрутизации
- TXT-запись для SPF
- DKIM-запись для подписи писем
После распространения (обычно 5–30 минут) домен верифицирован.
Шаг 2: Получите SMTP-credentials
В панели MailKite создайте SMTP-пользователя. Скопируйте адрес сервера, порт и API-ключ. Они понадобятся для HubSpot.
Вот что вы увидите:
Сервер: smtp.mailkite.dev
Порт: 587
Логин: ваше имя пользователя MailKite
Пароль: ваш API-ключ (начинается с mk_live_)
Защита: STARTTLS обязателен
Шаг 3: Настройте SMTP Relay в HubSpot
В HubSpot перейдите в Settings → Transactional Email. Конфигурация SMTP будет в настройках вашего домена отправки.
Вставьте данные из MailKite. HubSpot отправит тестовое письмо — проверьте, что получили.
Шаг 4: Проверьте заголовки аутентификации
Не пропускайте этот шаг. Отправьте тестовое транзакционное письмо через ваш воркфлоу в HubSpot. Потом откройте его в Gmail и посмотрите заголовки.
Ищите это:
Authentication-Results: mx.google.com;
dkim=pass header.d=вашакомпания.ru;
spf=pass;
dmarc=pass
Все три должны показать pass. Если dkim указывает header.d=hubspot.com, где-то ошибка в конфигурации. Убедитесь, что домен отправки в HubSpot точно совпадает с доменом, верифицированным в MailKite.
SMTP или API: что выбрать?
HubSpot предлагает два способа отправки транзакционных писем. Разберём практически:
Используйте SMTP, если:
- Хотите простую настройку, которая работает для всех писем автоматически
- Отправляете из внешних систем — Laravel-приложения, WordPress-плагина, самописной CRM
- Нужны логи и логика повторов от MailKite для каждого письма
- Не полагаетесь на отслеживание открытий и кликов от HubSpot для транзакционных писем
Используйте API, если:
- Нужна нативная аналитика открытий и кликов для транзакционных писем
- Хотите, чтобы каждое письмо автоматически появлялось в таймлайне HubSpot
- Собираете кастомную интеграцию, где почтовые события запускают другие воркфлоу
Честный ответ? SMTP проще в поддержке. Настроил один раз — и все транзакционные письма из HubSpot идут через MailKite без дополнительного кода. API требует обновлять каждый вызов отправки.
Бонус: собираем ответы и направляем в HubSpot
Вот где начинается магия. Когда клиенты отвечают на ваши транзакционные письма, этим ответам нужно куда-то деваться. С входящей маршрутизацией MailKite можно отправлять ответы на вебхук.
Хотите, чтобы ответы прикреплялись к нужному контакту в HubSpot? Вот Cloudflare Worker, который это делает:
export default {
async fetch(request, env) {
if (request.method !== "POST") return new Response("OK");
const { from, subject, text } = await request.json();
// Находим контакт в HubSpot
const searchRes = await fetch(
"https://api.hubapi.com/crm/v3/objects/contacts/search",
{
method: "POST",
headers: {
Authorization: "Bearer " + env.HUBSPOT_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({
filterGroups: [{
filters: [{
propertyName: "email",
operator: "EQ",
value: from,
}]
}],
properties: ["email", "firstname", "lastname"],
}),
}
);
const { results } = await searchRes.json();
if (!results.length) return new Response('{"ok":true}', { status: 200 });
const contactId = results[0].id;
// Прикрепляем ответ как заметку
await fetch(
"https://api.hubapi.com/crm/v3/objects/notes",
{
method: "POST",
headers: {
Authorization: "Bearer " + env.HUBSPOT_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({
properties: {
hs_note_body: `Ответ на: ${subject}\n\n${text}`,
hs_timestamp: Date.now(),
},
associations: [{
to: { id: contactId },
types: [{
associationCategory: "HUBSPOT_DEFINED",
associationTypeId: 202,
}],
}],
}),
}
);
return new Response('{"ok":true}', { status: 200 });
},
};
Теперь каждый ответ клиента превращается в заметку на его карточке в HubSpot — с оригинальной темой письма.
Главное: почта — это часть вашей доменной стратегии
Речь не только о доставляемости писем. Ваш домен — это цифровая личность. Каждое письмо, каждый DNS-запрос, каждая проверка аутентификации либо укрепляют доверие к этой личности, либо разрушают его.
Когда вы пускаете транзакционные письма через собственный DKIM-подписанный домен:
- Gmail и Outlook больше доверяют вашим письмам
- Репутация отправителя растёт независимо от платформы
- Клиенты видят ваш бренд, а не чей-то продукт
- Ваш домен становится ценнее как актив
В NameOcean мы видим клиентов, которые относятся к доменам как к расходникам, и тех, кто понимает их как инфраструктуру. Аутентификация почты — DMARC, DKIM, SPF — так же важна, как работоспособность сайта.
Ваши транзакционные письма часто самые важные коммуникации, которые вы отправляете. Они заслуживают такого же бережного отношения к бренду, как ваши лендинги и сам продукт.