Форма показывает "Спасибо", а на почте пусто. Половина гайдов ведет в облачную CRM, хотя вам нужна CMS "1С-Битрикс: Управление сайтом" на своем хостинге. Юрист требует чекбокс согласия, на iPhone поле телефона открывает буквы, а в выдаче советуют SmartCaptcha, которую USE_CAPTCHA не включает. Ниже - как выбрать main.feedback или "Веб-формы", подключить FEEDBACK_FORM, userconsent.request, AJAX и type=tel и проверить b_event с компьютера и телефона (30.07.2026).
Форма обратной связи на "1С-Битрикс: Управление сайтом" - это блок сайта, куда посетитель оставляет имя, e-mail и сообщение; CMS отправляет заявку на почту через FEEDBACK_FORM (bitrix:main.feedback) или сохраняет в модуле "Веб-формы". Это не CRM-форма Bitrix24. Сегодня: выберите инструмент по таблице, задайте EVENT_MESSAGE_ID, добавьте userconsent.request и проверьте SUCCESS_EXEC в b_event.
Запрос "форма обратной связи битрикс" часто ведет на CRM, хотя нужна коробочная CMS на вашем сервере. На практике типичный сценарий такой: форма показывает OK_TEXT, а в b_event пусто - EVENT_MESSAGE_ID не совпадает с шаблоном FEEDBACK_FORM для s1, согласие не подключено, на телефоне нет type=tel. Если сайт в планах - гайд по запуску.
Что такое форма обратной связи на 1С-Битрикс
На CMS форма живет на вашем сайте: посетитель заполняет поля, система шлет письмо (main.feedback) или сохраняет заявку в "Результаты" модуля "Веб-формы". Когда нужна: лендинг, "Контакты", заказ звонка. Когда не нужна: заявки только в чате CRM без сайта - не эта статья про CMS.
Сравните main.feedback, "Веб-формы" и кастом: что выбрать
Три пути: почта, архив в админке или своя логика
| Критерий | bitrix:main.feedback | Модуль "Веб-формы" | Инфоблок + кастом |
|---|---|---|---|
| Куда попадает заявка | Только e-mail через CEvent::Send | "Результаты" + e-mail | Элемент инфоблока + e-mail |
| Архив и статусы | Нет | Да: "новая", "в работе" | Через свойства |
| Сложность | 1-2 часа | Полдня | Нужен разработчик |
| CAPTCHA | USE_CAPTCHA => Y | Галка при создании | В своем коде |
| Когда брать | Письмо на лендинге | Учет без CRM | REST, свои поля |
Итоговый вердикт: для "имя, e-mail, текст" начните с main.feedback. Нужен архив в админке - "Веб-формы" (гайд по результатам). Инфоблок - своя логика и API.
Делайте: решите задачу до правок шаблона. Не делайте: не подменяйте CMS-форму виджетом CRM.
Настройте main.feedback: EMAIL_TO, FEEDBACK_FORM и CAPTCHA
IncludeComponent → шаблон → b_event
Компонент bitrix:main.feedback шлет письмо по событию FEEDBACK_FORM. Шаблоны подробно - в статье B56.
- Скопируйте шаблон в
/local/templates/.../components/bitrix/main.feedback/. - На странице контактов задайте EMAIL_TO, REQUIRED_FIELDS, USE_CAPTCHA => Y, EVENT_MESSAGE_ID.
- В "Почтовые события - FEEDBACK_FORM" проверьте: шаблон активен, привязан к s1, поля "От кого"/"Кому" заполнены.
- Отправьте тест. В b_event ищите SUCCESS_EXEC = Y.
- При двойной отправке: AJAX_MODE => Y, AJAX_OPTION_JUMP => N, OK_TEXT без перезагрузки.
"EMAIL_TO" => "manager@company.ru",
"USE_CAPTCHA" => "Y",
"EVENT_MESSAGE_ID" => array(XX),
"AJAX_MODE" => "Y",
"AJAX_OPTION_JUMP" => "N"
EVENT_MESSAGE_ID - номер шаблона, не тип FEEDBACK_FORM. Часто ломается так: шаблон для s2, а сайт на s1 - пользователь видит "Спасибо", письмо не собирается. Например, переименовали поле в HTML - обновите макросы в шаблоне письма. Справка: dev.1c-bitrix.ru.
Делайте: правки в /local/. Не делайте: не трогайте /bitrix/components/.
Подключите модуль "Веб-формы", если нужен архив заявок
Результаты в админке плюс e-mail для менеджера
main.feedback не хранит заявки - только e-mail. Модуль "Веб-формы" (Сервисы - Веб-формы) дает раздел "Результаты", статусы "новая"/"в работе" и несколько форм на одном сайте: заявка, опрос, резюме.
- Активируйте модуль в "Настройки - Модули".
- Создайте форму с CAPTCHA. Упрощенный режим - старт; расширенный - почта и статусы.
- В расширенном режиме на "Дополнительно" включите e-mail и привяжите шаблон - без галки письмо не уйдет.
- Разместите bitrix:form.result.new с WEB_FORM_ID.
- Тест: запись в "Результаты" + письмо. Работа с заявками - в гайде B57.
Делайте: расширенный режим для статусов. Не делайте: не дублируйте main.feedback и веб-форму на одной странице.
Включите AJAX_MODE и type=tel для мобильной формы
AJAX убирает "мигание" и двойные клики - без него заявка уходит дважды.
- AJAX_MODE => Y, AJAX_OPTION_JUMP => N в IncludeComponent.
- OK_TEXT: "Заявка принята, перезвоним в течение часа".
- В template.php:
<input type="tel" name="PHONE">- цифровая клавиатура на iOS/Android. - Добавили телефон - расширьте шаблон макросом #PHONE# и REQUIRED_FIELDS.
- Тест с реального телефона: CAPTCHA, согласие, кнопка на экране.
Не дублируйте свой JS-обработчик submit поверх стандартного AJAX - форма "пропадет" и уйдет второй раз. Скопируйте template.php в /local/ для правок верстки.
Делайте: тест iPhone/Android до рекламы. Не делайте: type="text" на телефоне - конверсия падает из-за неудобного ввода.
Добавьте согласие 152-ФЗ через userconsent.request
Имя, телефон, e-mail - персональные данные. Компонент bitrix:main.userconsent.request показывает галочку и пишет в "Полученные согласия".
- Создайте соглашение: "Настройки - Соглашения", ссылка на политику.
- В template.php перед submit: IncludeComponent userconsent.request, ID соглашения, AUTO_SAVE => Y.
- При AJAX компонент согласия внутри той же <form>; при необходимости SUBMIT_EVENT_NAME.
- После теста проверьте "Полученные согласия": дата, IP, текст.
Документация: docs.1c-bitrix.ru.
Делайте: чекбокс до отправки. Не делайте: не прячьте политику мелким шрифтом.
Выберите штатную CAPTCHA или Yandex SmartCaptcha
USE_CAPTCHA включает встроенную капчу Битрикс. Yandex SmartCaptcha - отдельный сервис: клик "Я не робот". USE_CAPTCHA не подключает SmartCaptcha.
- Для старта USE_CAPTCHA => Y хватит против простого спама.
- При ботах - модуль Marketplace: devbx.smartcaptcha или bxmaker.captcha.
- Ключи ysc1_ и ysc2_ в Yandex Cloud, домен сайта в настройках.
- Тест с телефона: виджет не обрезан, AJAX не сбрасывает капчу.
Делайте: сначала штатная капча. Не делайте: не путайте с CRM-формами облачного портала.
Проверьте b_event, если письмо не приходит
OK_TEXT не доказывает доставку. CMS пишет в b_event, хостинг шлет через mail() или SMTP.
Схема: заявка → b_event → SUCCESS_EXEC (Y/N/F/0) → inbox/спам → при Y без письма - хостинг.
- Тест "Тест формы B15", проверьте "Спам".
- b_event, EVENT_NAME = FEEDBACK_FORM: Y - CMS собрала; N - шаблон; F - отправка; 0 - очередь (агенты/cron).
- Сверьте EVENT_MESSAGE_ID с активным шаблоном для s1.
- Y без письма - mail()/SMTP на хостинге. На shared вроде Beget письма часто в спаме - SMTP-модуль или обращение к хостеру с ID записи b_event.
- Тест с телефона - CAPTCHA и согласие на узком экране ведут себя иначе, чем на десктопе.
- Для веб-формы в расширенном режиме проверьте галку почтового шаблона на "Дополнительно" - после отключения упрощенного режима она сбрасывается.
FAQ: dev.1c-bitrix.ru/faq/8370. Шаблоны - B56. Нужна помощь - обсудите проект.
Делайте: тест с личной почты. Не делайте: при SUCCESS_EXEC = Y не меняйте шаблон CMS.
Автор: Максим Мольков, Senior-разработчик 1С-Битрикс.
Источники: dev.1c-bitrix.ru, user consent, SmartCaptcha (30.07.2026).
Частые вопросы
Почему не приходит письмо с формы обратной связи на Битрикс?
Цепочка: EVENT_MESSAGE_ID → шаблон FEEDBACK_FORM для s1 → b_event → SUCCESS_EXEC. N - шаблон; Y без письма - SMTP/спам. Тест с телефона.
Что такое FEEDBACK_FORM в 1С-Битрикс?
Тип почтового события для bitrix:main.feedback. Шаблон с #NAME#, #EMAIL#, #MESSAGE#. EVENT_MESSAGE_ID - номер активного шаблона; отправка через CEvent::Send.
Чем main.feedback отличается от модуля "Веб-формы"?
main.feedback - только e-mail. "Веб-формы" сохраняют через CFormResult в админке со статусами. Архив без CRM - "Веб-формы"; "Контакты" - main.feedback.
Как включить AJAX для формы обратной связи?
AJAX_MODE => Y, AJAX_OPTION_JUMP => N в IncludeComponent. Для userconsent.request при AJAX - SUBMIT_EVENT_NAME, чтобы галочка ушла с формой.
Как подключить Yandex SmartCaptcha к форме на Битрикс?
USE_CAPTCHA - только встроенная капча. SmartCaptcha: ключи ysc1_/ysc2_ в Yandex Cloud, модуль Marketplace (devbx.smartcaptcha или bxmaker.captcha), проверка с AJAX_MODE.
Форма обратной связи в облачной CRM - это то же самое?
Нет. Bitrix24 - облачная CRM. "Управление сайтом" - CMS на вашем хостинге с bitrix:main.feedback или "Веб-формы". Разные продукты.
Письмо ушло (SUCCESS_EXEC=Y), но в почте нет - что делать?
CMS сделала CEvent::Send - ищите mail()/SMTP на хостинге. Не переписывайте FEEDBACK_FORM. Хостеру - дата и ID b_event. Примеры - портфолио.