TИнтеграция · через API и вебхуки

Заявки с Tilda в WhatsApp: ответ клиенту и уведомление менеджеру

Обновлено

Сайт на Tilda собирает заявки, но письмо на почту менеджер может открыть через час, а клиент за это время уже найдёт другого исполнителя. Если отправлять заявку в WhatsApp, менеджер получает её на телефон сразу, а клиент через несколько секунд видит сообщение с вашего номера: «Заявку получили, перезвоним в течение 15 минут». Переписка начинается там, где клиенту удобно.

Страница для владельцев сайтов на Tilda и веб-студий. Понадобится небольшой обработчик на PHP — его можно положить на любой хостинг.

Из Tilda в WhatsApp
  1. Клиент отправляет форму на Tilda
  2. Webhook в настройках форм
  3. ваш обработчик
  4. POST /messages/send
  5. клиент и менеджер в WhatsApp

Что можно автоматизировать

  • Подтверждение заявки. Клиент оставил имя и телефон — сразу получает сообщение с именем и сроком ответа.
  • Карточка менеджеру. Менеджеру в WhatsApp приходят поля формы: имя, телефон, услуга, комментарий, страница.
  • Запись на консультацию. Форма с датой и временем — клиенту подтверждение, накануне можно отправить напоминание из вашей системы записи.
  • Квиз или калькулятор. Клиент ответил на вопросы — получает итог расчёта, менеджер видит ответы целиком.
  • Прайс по запросу. Форма «Получить прайс» — клиенту уходит PDF файлом по публичной ссылке (про файлы).
  • Разные формы — разные тексты. По скрытому полю формы обработчик понимает, откуда заявка, и выбирает шаблон ответа.

Как это устроено

Со стороны Tilda: в настройках форм сайта есть сервис приёма данных «Webhook». Вы указываете адрес, и при каждой отправке формы Tilda шлёт на него POST с полями формы. Имена полей — те, что заданы в форме (например, Name и Phone). При подключении Tilda отправляет тестовый запрос — обработчик должен быстро ответить кодом 200.

Со стороны wapi.kz — POST /messages/send (документация): одно сообщение клиенту и одно менеджеру. Своего серверного кода у Tilda нет, поэтому между формой и API нужен обработчик: PHP-файл на хостинге, облачная функция или сценарий в Make.

Чтобы адрес не дёргал кто попало, добавьте в него секрет — ?token=… — и проверяйте его в обработчике.

Настройка по шагам

  1. Подключите номер в wapi.kz (как подключить) и выпустите ключ номера — поле from не понадобится.
  2. Положите обработчик (код ниже) на хостинг с PHP 8 и https, задайте переменные окружения: ключ, секрет, телефон менеджера.
  3. В Tilda откройте настройки сайта → формы, подключите сервис «Webhook» и укажите адрес обработчика на вашем сервере или хостинге (на самой Tilda PHP не выполняется), например https://api.ваш-сайт.kz/tilda-hook.php?token=СЕКРЕТ.
  4. В настройках каждой формы на странице отметьте подключённый Webhook как получателя данных.
  5. Добавьте в форму согласие на сообщения в WhatsApp рядом с полем телефона.
  6. Опубликуйте страницу и отправьте тестовую заявку со своего телефона.

Пример кода

PHP
<?php
// tilda-hook.php — на вашем сервере: https://api.ваш-сайт.kz/tilda-hook.php?token=СЕКРЕТ
if (($_GET['token'] ?? '') !== getenv('TILDA_HOOK_TOKEN')) {
    http_response_code(403);
    exit;
}

function wapi_send(string $to, string $text): void {
    $ch = curl_init('https://wapi.kz/api/v1/messages/send');
    curl_setopt_array($ch, [
        CURLOPT_POST => true,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('WAPI_KEY'), 'Content-Type: application/json'],
        CURLOPT_POSTFIELDS => json_encode(['to' => $to, 'text' => $text], JSON_UNESCAPED_UNICODE),
        CURLOPT_TIMEOUT => 15,
    ]);
    $data = json_decode(curl_exec($ch), true);
    if (curl_getinfo($ch, CURLINFO_HTTP_CODE) !== 200) {
        error_log('wapi: ' . ($data['code'] ?? 'no_response') . ' — ' . ($data['error'] ?? ''));
    }
}

$name  = trim($_POST['Name'] ?? '');
$phone = preg_replace('/\D/', '', $_POST['Phone'] ?? '');
if (strlen($phone) === 11 && $phone[0] === '8') $phone = '7' . substr($phone, 1);
if (strlen($phone) === 10) $phone = '7' . $phone;

echo 'ok'; // быстрый ответ Tilda, в том числе на тестовый запрос
if (strlen($phone) < 11) exit;
if (function_exists('fastcgi_finish_request')) fastcgi_finish_request();

$hello = $name !== '' ? "$name, здравствуйте!" : 'Здравствуйте!';
wapi_send($phone, "$hello Заявку получили, перезвоним в течение 15 минут.");
sleep(1); // не чаще 1 сообщения в секунду с номера
wapi_send(getenv('MANAGER_PHONE'), "Новая заявка с сайта\nИмя: $name\nТелефон: +$phone\nКомментарий: " . ($_POST['Comment'] ?? '—'));

Если поля в вашей форме называются иначе — поправьте Name, Phone и Comment в коде. Проверить, что именно присылает Tilda, проще всего, записав $_POST в лог на первой заявке.

Ограничения

  • Готового сервиса wapi.kz в списке приёма данных Tilda нет — нужен свой обработчик или Make.
  • Боты заполняют формы чужими номерами. Без защиты вы будете писать незнакомым людям — это жалобы и риск блокировки номера. Добавьте в форму капчу или другую защиту от спама и галочку согласия (как не попасть в бан).
  • Каждый новый клиент — это первое сообщение новому человеку: не чаще раза в 5 секунд и до 150 в сутки на уровне «Хороший», в первые 2 недели после подключения — меньше из-за прогрева. Для лендинга с рекламой проверьте, хватит ли лимита, и при пиках ставьте отправку в очередь (лимиты).
  • Ответы клиентов приходят на телефон с номером как обычно. Если их нужно сохранять в CRM или таблицу — настройте вебхук номера.

Не хотите возиться с хостингом? Зарегистрируйтесь, подключите номер и оставьте заявку из кабинета — поможем подключить формы. Номер — 9 900 ₸ в месяц, без платы за сообщения (цены).

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

Можно ли обойтись без своего сервера?

Да: в Tilda подключите вебхук на адрес модуля Custom webhook в Make, а сообщение отправьте модулем HTTP. Логика та же, что в коде выше.

Чем это лучше кнопки WhatsApp на сайте?

Кнопка открывает чат, только если клиент сам захочет написать. Здесь клиент оставляет заявку, а первое сообщение отправляете вы — сразу и с готовым текстом. Сравнение способов — в гайде WhatsApp на сайте.

Почему Tilda пишет, что вебхук не отвечает?

Обработчик должен ответить кодом 200 быстро. Проверьте, что адрес открывается по https, секрет в адресе совпадает с переменной окружения, а ответ отдаётся до отправки сообщений.

Можно ли отправлять заявки в несколько WhatsApp менеджеров?

Да, вызовите отправку для каждого телефона по очереди с паузой в секунду. Или отправляйте в один общий чат — например, в Telegram.

Подключите WhatsApp к Tilda

9 900 ₸ в месяц за номер, без платы за сообщения. Сервер в Казахстане, оплата Kaspi или счётом на ТОО/ИП. Подключение — около 5 минут.

Гайды по теме

Другие интеграции