Как настроить почту на 1С-Битрикс: SMTP, события и доставка писем с сайта

Как настроить почту на 1С-Битрикс: SMTP, события и доставка писем с сайта

Форма на сайте показывает "Спасибо, заявка отправлена", а письма нет ни во входящих, ни в спаме. По запросу «битрикс настройка почты» (около 249 показов в месяц по Яндекс Вордстат) половина статей ведёт в Bitrix24 и IMAP-ящики сотрудников. Вам нужна другая задача — исходящая почта CMS «1С-Битрикс: Управление сайтом». Ниже — как включить SMTP, настроить профиль в админке, проверить очередь b_event и SPF/DKIM, чтобы заявки доходили на Gmail или Mail.ru.

Исходящие письма с сайта на CMS идут через почтовые события и шаблоны (FEEDBACK_FORM, SALE_NEW_ORDER), а не через модуль "Почта" для входящих. С версии main 21.900.0 сначала включите секцию smtp в /bitrix/.settings.php, затем добавьте профиль в "Настройки SMTP". Для порта 465 укажите ssl://smtp.yandex.ru в поле сервера - иначе админка может вернуть 504. Проверка: тестовое письмо во входящие и SUCCESS_EXEC = Y в b_event.

Bitrix24 — это CRM в облаке, не наш продукт; «Управление сайтом» — коробочная CMS на вашем хостинге. Если настраивали почту по статьям про облачную CRM, заявки с сайта все равно не придут. На практике маркетологи подключают IMAP в CRM — а FEEDBACK_FORM на сайте шлёт через почтовые события CMS. Если сайт ещё не запущен, начните с гайда по созданию сайта для бизнеса.

SMTP (Simple Mail Transfer Protocol) - это "официальный канал" отправки писем через логин и пароль на почтовом сервере, как в Outlook или Thunderbird. PHP mail() - устаревший способ "кинуть письмо с сервера без авторизации"; shared-хостинг часто его режет, и письма не доходят. Ниже - пять блоков: зачем SMTP, диагностика, настройка, DNS и финальный чек-лист.

Настройте SMTP вместо PHP mail() на CMS

Сравнение PHP mail(), SMTP и msmtp для почты на Битрикс

На shared-хостинге PHP mail() часто отключен или уходит в спам: сервер не "знаком" получателю. SMTP через Яндекс 360, Mail.ru для бизнеса или корпоративный ящик дает авторизованную отправку с вашего домена. На виртуальной машине VMBitrix иногда используют msmtp - системную утилиту, которая подменяет mail() на уровне ОС; на обычном тарифе у Beget проще встроенный UI "Настройки SMTP".

Способ Где работает Доставляемость Когда брать
PHP mail() Shared-хостинг Низкая, часто в спам Не рекомендуем для заявок
SMTP в админке CMS main 21.900.0+, любой хостинг Высокая при SPF/DKIM Основной путь для бизнеса
msmtp на VMBitrix Виртуальная машина Bitrix Высокая при настройке .msmtprc Когда нет UI или нужен системный уровень

Делайте: переходите на SMTP до запуска рекламы. Не делайте: не полагайтесь на mail(), если форма "молчит" - проверьте disable_functions у хостера. Подробнее про выбор сервера - в материале про хостинг для сайта на Битрикс.

Проверьте, почему письмо с сайта не дошло до inbox

Чеклист диагностики: почему письмо с Битрикс не дошло до inbox

CMS складывает исходящие письма в очередь b_event. Поле SUCCESS_EXEC показывает судьбу записи: Y — отправлено, F — ошибка, 0 или N — ждёт агента cron. Откройте «Настройки → Почтовые и СМС события → Журнал» или выполните SQL-запрос к таблице b_event (последние 10 записей по ID).

SELECT ID, EVENT_NAME, SUCCESS_EXEC, DATE_INSERT
FROM b_event
ORDER BY ID DESC
LIMIT 10;

Типичная ошибка — «тишина» без записи в журнале: нет активного шаблона для EVENT_NAME или шаблон не привязан к SITE_ID. Ещё варианты: в dbconn.php включён custom_mail, агенты не отрабатывают без cron. Для отладки разработчик может вызвать Event::sendImmediate() — немедленная отправка без очереди.

Схема цепочки:
Форма на странице → почтовое событие (тип FEEDBACK_FORM) → почтовый шаблон (текст письма) → очередь b_event → SMTP → inbox получателя

Делайте: после каждой тестовой заявки смотрите последнюю строку b_event. Не делайте: не путайте модуль «Сервисы → Почта» (входящие POP3/IMAP) с исходящими уведомлениями — это разные разделы админки.

Включите SMTP в .settings.php и добавьте профиль в админке

Схема: включить SMTP в .settings.php и профиль в админке Битрикс

С main 21.900.0 UI "Настройки SMTP" появляется только после секции smtp в /bitrix/.settings.php. Без этого шага сохранение профиля может зависнуть и вернуть 504 Gateway Time-out.

  1. Откройте /bitrix/.settings.php. В массиве value добавьте секцию smtp с enabled = true (подробности в документации по настройкам ядра).
  2. В админке: "Настройки - Настройки продукта - Почтовые и СМС события - Настройки SMTP - Добавить".
  3. Для Яндекс 360: сервер ssl://smtp.yandex.ru, порт 465, логин - полный e-mail, пароль - пароль приложения (не основной пароль аккаунта).
  4. Заполните "E-mail отправителя" и "Имя отправителя". Нажмите "Проверить" - тест должно прийти на указанный ящик.
  5. Убедитесь, что активен почтовый шаблон для FEEDBACK_FORM: поля "От кого" и "Кому", привязка к вашему сайту (s1, s2...). Связка формы и шаблона - в гайде по форме обратной связи.
  6. Отправьте заявку с сайта. В b_event ищите SUCCESS_EXEC = Y в течение 1-2 минут.

Ошибка 535 Authentication failed — типичная ошибка при неверном пароле: создайте пароль приложения в настройках Яндекс ID и вставьте его в профиль SMTP. После сохранения профиля вы получите тестовое письмо и сможете запустить проверку формы с внешней почты.

Делайте: для порта 465 всегда пишите ssl:// перед адресом сервера. Не делайте: не сохраняйте профиль без предварительного enabled в .settings.php - это главный источник 504 на форумах 1С-Битрикс.

Если DNS, cron и шаблоны уже проверены, а правки в .settings.php не ваш профиль - напишите нам: настроим SMTP и доставляемость под ваш домен.

Настройте SPF, DKIM и From домена, чтобы письма не уходили в спам

SMTP "работает", но письмо в спаме - классика. Причина: в шаблоне From = noreply@gmail.com, а отправка идет с smtp.yandex.ru и вашего домена. Почтовые сервисы видят несовпадение и понижают репутацию.

SPF (TXT-запись в DNS) говорит: "этому серверу можно слать от имени домена". DKIM - цифровая подпись письма; DMARC - политика "что делать, если SPF/DKIM не сошлись". Для Яндекс 360 DKIM включают в панели почты для домена; SPF часто выглядит как v=spf1 include:_spf.yandex.net ~all.

  • From в шаблоне = тот же ящик, что логин SMTP (например info@yourdomain.ru).
  • Добавьте SPF и DKIM в DNS у регистратора или хостинга.
  • Отправьте тест на внешний Gmail, откройте "Показать оригинал" - ищите spf=pass и dkim=pass.
  • Дополнительно прогоните письмо через сервис mail-tester.com - он покажет слабые места до запуска трафика.

Делайте: совмещайте From, SMTP-логин и домен в DNS. Не делайте: не меняйте From на чужой домен "для красоты" - это прямой путь в спам.

Пройдите чек-лист: b_event, форма и тест с внешней почты

Перед включением рекламы пройдите короткий контрольный список. Он перекликается с чек-листом после запуска сайта, но сфокусирован на почте.

  1. Тестовая заявка с компьютера - письмо во входящих (не только "отправлено" на экране).
  2. Повтор с мобильного браузера - те же поля и тот же шаблон.
  3. b_event: последняя запись SUCCESS_EXEC = Y.
  4. Заголовки письма: spf=pass, dkim=pass.
  5. Повторная заявка через 5 минут - стабильная доставка без задержки больше 2 минут.
  6. Проверка спам-папки на стороне получателя - один раз, до правок DNS.

После запуска следите за журналом событий раз в неделю: смена пароля приложения Яндекс ломает SMTP до обновления профиля в админке.

Примеры настроенных проектов с рабочей почтой и формами - в портфолио. Нужна помощь с msmtp на VMBitrix или миграцией с mail() - снова обсудим задачу.

Экспертная проверка: Елена Ковалева, главный эксперт по SEO/GEO.
Источники цифр: Wordstat «битрикс настройка почты» — 249 показов/мес (июнь 2026); параметры SMTP — dev.1c-bitrix.ru и docs.1c-bitrix.ru.

Частые вопросы

Куда вставить SMTP в Битрикс CMS?

Сначала включите секцию smtp (enabled true) в /bitrix/.settings.php для main 21.900.0+. Затем в админке: "Настройки - Почтовые и СМС события - Настройки SMTP - Добавить". Поля: сервер с ssl:// для порта 465, логин, пароль приложения, e-mail и имя отправителя.

Почему письма с сайта уходят в спам при рабочем SMTP?

Чаще всего From в шаблоне не совпадает с доменом SMTP-логина или нет SPF/DKIM в DNS. Выровняйте From, логин и TXT-записи, отправьте тест на Gmail и проверьте spf=pass и dkim=pass в заголовках.

Чем почтовое событие отличается от почтового шаблона?

Событие - тип письма (FEEDBACK_FORM, SALE_NEW_ORDER): CMS знает, какое "имя" передать в очередь. Шаблон - конкретный текст с полями #NAME#, "От кого", "Кому" и привязкой к SITE_ID. Без активного шаблона для типа события b_event может остаться пустым.

Нужен ли SMTP для формы обратной связи?

Форма создает почтовое событие; доставка идет через bxmail, который учитывает SMTP-профиль из админки. На shared-хостинге без SMTP письма часто не доходят. Настройте SMTP до теста формы с внешней почты.

Что значит 504 при сохранении профиля SMTP?

Обычно админка не может установить SSL-соединение с сервером: для порта 465 укажите ssl://smtp.yandex.ru в поле сервера, не просто smtp.yandex.ru. Убедитесь, что smtp enabled в .settings.php до работы в UI.

Где смотреть, отправилось ли письмо?

В "Почтовые и СМС события - Журнал" или SQL по таблице b_event: SUCCESS_EXEC = Y означает успех. F - ошибка на этапе отправки; 0 или N - ждет cron-агента.

Можно ли использовать обычный пароль Яндекс вместо пароля приложения?

Нет. Для SMTP в Битрикс нужен пароль приложения из настроек Яндекс ID. Основной пароль аккаунта даст ошибку 535 Authentication failed даже при верном логине.

Читайте также