← Назад к блогу

Как автоматизировать заявки с сайта в CRM через n8n

Черновик

# Как автоматизировать заявки с сайта в CRM через n8n ## Введение Классическая проблема: клиент заполняет форму на сайте, заявка падает на почту, менеджер забывает её обработать, клиент уходит к конкуренту. Знакомо? По статистике, до 40% заявок теряются именно из-за человеческого фактора. Автоматизация решает эту проблему раз и навсегда. Заявка с сайта → моментально в CRM → уведомление менеджеру → клиент получает ответ. Без задержек, без потерь. В этом кейсе разберём, как настроить такую цепочку через **n8n** — open-source платформу автоматизации, которую можно развернуть на Aister за минуты. --- ## Что мы строим Архитектура решения: 1. **Форма на сайте** — клиент заполняет заявку 2. **Вебхук n8n** — принимает данные формы 3. **Валидация** — проверяем полноту данных 4. **Дедупликация** — проверяем, нет ли уже такой заявки 5. **Создание в CRM** — отправляем данные 6. **Уведомление** — менеджер получает Telegram-уведомление 7. **Автоответ** — клиенту отправляется подтверждение --- ## Шаг 1: Настройка формы на сайте ### Пример HTML-формы ```html
``` ### Или через AJAX Если не хотите перезагружать страницу: ```javascript document.getElementById('contact-form').addEventListener('submit', async (e) => { e.preventDefault(); const formData = new FormData(e.target); const data = Object.fromEntries(formData); try { await fetch('https://your-n8n.example.com/webhook/contact', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }); alert('Заявка отправлена!'); } catch (err) { alert('Ошибка отправки'); } }); ``` --- ## Шаг 2: Создание workflow в n8n ### Узел 1: Webhook Добавьте узел **Webhook**: - **Method:** POST - **Path:** contact - **Response Mode:** Last Node Проверьте, что вебхук работает, отправив тестовый запрос через curl: ```bash curl -X POST https://your-n8n.example.com/webhook/contact \ -H "Content-Type: application/json" \ -d '{"name":"Иван","email":"ivan@test.com","phone":"+79001234567","message":"Хочу консультацию","service":"consultation"}' ``` ### Узел 2: Валидация данных Добавьте узел **IF** для проверки обязательных полей: ``` Condition: {{$json.email}} is not empty AND {{$json.name}} is not empty ``` Если данные неполные — отправляем ответ с ошибкой через узел **Respond to Webhook**: ```json { "status": "error", "message": "Заполните обязательные поля: имя и email" } ``` ### Узел 3: Дедупликация Прежде чем создавать заявку, проверим, нет ли уже контакта с таким email в CRM. Добавьте узел **HTTP Request** к API вашей CRM. Например, для AmoCRM: ``` GET https://your-domain.amocrm.ru/api/v4/contacts?query={{$json.email}} Headers: Authorization: Bearer YOUR_TOKEN ``` Затем узел **IF**: ``` Condition: {{$json._embedded.contacts.length}} equals 0 ``` Если контакт существует — обновляем его. Если нет — создаём нового. --- ## Шаг 3: Создание контакта и сделки в CRM ### Создание контакта (AmoCRM пример) Узел **HTTP Request**: ```json { "method": "POST", "url": "https://your-domain.amocrm.ru/api/v4/contacts", "headers": { "Authorization": "Bearer YOUR_TOKEN", "Content-Type": "application/json" }, "body": { "name": "{{$node['Webhook'].json.body.name}}", "custom_fields_values": [ { "field_code": "EMAIL", "values": [{"value": "{{$node['Webhook'].json.body.email}}"}] }, { "field_code": "PHONE", "values": [{"value": "{{$node['Webhook'].json.body.phone}}"}] } ] } } ``` ### Создание сделки Второй **HTTP Request**: ```json { "method": "POST", "url": "https://your-domain.amocrm.ru/api/v4/leads", "body": { "name": "Заявка с сайта: {{$node['Webhook'].json.body.service}}", "contact_id": "{{$json.id}}", "custom_fields_values": [ { "field_code": "UTM_SOURCE", "values": [{"value": "{{$node['Webhook'].json.body.utm_source}}"}] } ] } } ``` --- ## Шаг 4: Уведомление менеджера в Telegram Добавьте узел **Telegram**: - **Chat ID:** ID менеджера или группы - **Text:** ``` 🔔 Новая заявка! 👤 Имя: {{$node['Webhook'].json.body.name}} 📧 Email: {{$node['Webhook'].json.body.email}} 📱 Телефон: {{$node['Webhook'].json.body.phone}} 🛎 Услуга: {{$node['Webhook'].json.body.service}} 💬 Сообщение: {{$node['Webhook'].json.body.message}} 📋 CRM: сделка создана ``` --- ## Шаг 5: Автоответ клиенту ### Email-подтверждение Узел **Send Email** (или SMTP): ``` To: {{$node['Webhook'].json.body.email}} Subject: Ваша заявка принята Body: Здравствуйте, {{$node['Webhook'].json.body.name}}! Спасибо за обращение. Мы получили вашу заявку и свяжемся с вами в течение 30 минут. Тип услуги: {{$node['Webhook'].json.body.service}} С уважением, Команда поддержки ``` --- ## Шаг 6: Обработка ошибок Добавьте узел **Error Trigger** для перехвата ошибок: ```json { "telegram": { "chat_id": "ADMIN_CHAT_ID", "text": "⚠️ Ошибка в workflow заявок: {{$json.execution.error.message}}" } } ``` --- ## Расширенные возможности ### Маршрутизация по услугам Используйте **Switch** узел для маршрутизации: - `consultation` → менеджер по продажам - `support` → служба поддержки - `sales` → отдел продаж Каждая ветка отправляет уведомление нужному менеджеру. ### UTM-метки и аналитика Передавайте UTM-метки из формы в CRM для отслеживания источников: ```html ``` ### Интеграция с OpenClaw Подключите OpenClaw-агента для AI-обработки заявок: - Автоматическая классификация обращений - Генерация персонализированных автоответов - Приоритизация заявок по тональности - Рекомендации менеджеру по обработке --- ## Результаты Типичные результаты после внедрения: - **Скорость реакции:** с часов до секунд - **Потерянные заявки:** с 40% до 0% - **Время менеджера:** экономия 2-3 часа в день - **Конверсия в продажу:** рост на 15-25% --- ## Заключение Автоматизация заявок — это базовая, но критически важная задача. n8n справляется с ней идеально: вебхук принимает данные, workflow валидирует, создаёт сделку в CRM и уведомляет нужных людей. Разверните n8n на Aister, настройте workflow за пару часов — и забудьте о потерянных заявках навсегда. **Нужна помощь с настройкой?** На Aister готовы помочь с развёртыванием и интеграцией.
Как автоматизировать заявки с сайта в CRM через n8n — Aister