Интеграция API Tilda с CRM, эквайрингом, службами доставки и ботами на практике экономит владельцу сайта часы ручной работы каждую неделю - я это вижу на каждом втором проекте, где клиент просит забрать заказы или каталог с Tilda и завести их в свою систему. Разберу, какие данные Tilda реально отдаёт через API, куда их можно подключить и на каких местах разработчики обычно спотыкаются.
Что даёт API Tilda и кому он доступен
Tilda API v1 работает через пару ключей - Public key и Secret key, которые выдаются в разделе настроек аккаунта. Доступ к ним открыт только на тарифах Business и Agency: на Personal и Start кнопки API попросту нет, и это первое, обо что спотыкаются клиенты, которые уже сверстали сайт и только потом решили что-то к нему подключить.
Основные методы API - это не заказы и не лиды, а работа с самим проектом: getprojectslist, getpageslist, getpagefull, getpageexport, gettemplateslist. По сути это экспорт вёрстки страниц, HTML и CSS блоков, список проектов и шаблонов. Полезно для переноса сайта, резервных копий или автоматической публикации по расписанию, но напрямую заказ клиента через эти методы не получить.
Жёсткого лимита запросов в документации нет, но на практике я не превышаю 5-7 запросов в секунду и ставлю паузы 200-300 мс между вызовами при массовой синхронизации - иначе часть ответов начинает приходить с задержкой или пустыми.
Заказы и заявки: вебхуки вместо REST-опроса
Здесь у новичков случается разочарование: Tilda не отдаёт заказы через REST в реальном времени. Вместо этого в настройках формы или корзины включается вебхук - при отправке заявки или оформлении заказа Tilda сама делает POST-запрос с JSON на указанный вами URL.
{
"formname": "order",
"formid": "form123456",
"payment": {
"orderid": "10023",
"amount": "3490.00",
"products": [
{ "name": "Кроссовки Air", "quantity": "1", "amount": "3490.00" }
]
},
"Name": "Иван",
"Phone": "+79261234567"
}
Дальше на своём сервере вы принимаете этот payload и раскладываете его по CRM - amoCRM, Bitrix24, retailCRM. Тут стоит держать в голове требование 152-ФЗ: имена, телефоны и адреса клиентов нужно хранить на серверах в РФ, а не сваливать в Google Sheets или Airtable ради скорости - это создаёт риски по локализации персональных данных, и я в проектах с заказами всегда завожу приём вебхука на свой бэкенд, а не на сторонний иностранный сервис.
Оплата: эквайринг Т‑Банка и нестандартные сценарии
Штатные модули оплаты в Tilda - Т‑Банк (бывший Тинькофф), ЮKassa, CloudPayments - закрывают базовый сценарий «оплатить заказ картой». Но как только нужен сплит платежа между несколькими получателями, отложенный чек по 54-ФЗ с нестандартными реквизитами или сверка статусов между Tilda и внешней учётной системой, штатного виджета уже не хватает и приходится работать с API эквайринга напрямую, обрабатывая уведомления о статусе платежа на своём сервере.
Показательный случай из практики: у клиента часть ассортимента продавалась через Tilda, а часть - через интернет-магазин на WooCommerce. Синхронизацию статусов оплаты я собирал через вебхуки Т‑Банка на обеих площадках плюс общий бэкенд, который сверял заказы по номеру и подтягивал остатки. Без этого склад расходился в течение недели.
Бесплатный материал
🎁 Полезный скрипт в подарок
Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.
Без спама. Отписка в 1 клик.
Доставка: расчёт через API СДЭК на этапе корзины
Из коробки Tilda считает доставку по фиксированной сумме или по региону - точного расчёта стоимости курьером или до пункта выдачи там нет. Чтобы клиент видел реальную цену СДЭК ещё в корзине, я подключаю Zero Block API: JS-скрипт на странице корзины ловит ввод индекса или города, дёргает свой бэкенд-прокси, а тот уже обращается к API СДЭК и возвращает тарифы.
Прокси нужен обязательно - ключи СДЭК нельзя светить в браузере, да и часть их API не отдаёт CORS-заголовки для прямых запросов с фронта. Схема простая: фронт → ваш сервер → СДЭК → расчёт → обратно в блок корзины, стоимость подставляется в поле заказа перед отправкой формы.
| Способ получить данные из Tilda | Что отдаёт | Когда применять |
|---|---|---|
| Tilda API (getpage, getproject) | Вёрстку, HTML/CSS, список страниц | Перенос сайта, бэкапы, автопубликация |
| Вебхук формы/заказа | JSON с данными клиента и заказа в момент отправки | Приём заказов в CRM, уведомления |
| Zero Block JS API | События на фронте: клик, отправка формы, изменение корзины | Кастомная логика на странице - расчёт доставки, скидки, валидация |
Автоматизация: n8n и уведомления через Telegram-бота
Вебхук с Tilda удобно заводить сразу в n8n - там он превращается в узел, из которого данные разлетаются по нужным сервисам: в CRM, в таблицу учёта на своём сервере, в мессенджер. Я собираю такие цепочки, когда клиенту не нужен полноценный бэкенд, а достаточно связать 3-4 сервиса между собой без написания кода с нуля.
Отдельно частый запрос - бот на aiogram, который мгновенно присылает менеджеру уведомление о новом заказе с Tilda: имя, телефон, состав корзины и кнопки «В работу» / «Отклонить». В одном из проектов такая связка сократила время реакции менеджера на заявку с 30-40 минут (когда почту проверяли раз в час) до 3-5 минут.
Кастомные скрипты и доработки на Zero Block
Большая часть того, что клиенты называют «доработать Tilda», не требует API вообще - это JS-скрипты внутри Zero Block: скрыть блок по условию, изменить поведение корзины, добавить валидацию телефона, подтянуть остатки товара из внешнего источника через AJAX. Точка входа обычно - глобальная функция t_onReady или события tilda_project_id/tilda_page_id, которые Tilda прокидывает в window.
t_onReady(function () {
var form = document.querySelector('form[data-tilda-form-id]');
if (!form) return;
form.addEventListener('submit', function () {
// например, подмешать utm-метки перед отправкой заявки
});
});
Готовые куски таких скриптов - расчёт доставки, антиспам на формах, синхронизация с CRM - я собираю в отдельную библиотеку готовых скриптов для Tilda, чтобы не писать однотипные вещи с нуля под каждый проект.
Ограничения API Tilda, о которых редко пишут
Перед тем как закладывать интеграцию в проект, стоит учесть несколько вещей, которые в документации либо не описаны подробно, либо теряются между строк.
- API недоступен на тарифах ниже Business - при апгрейде с Personal придётся ещё и переносить настройки платёжных модулей заново.
- Экспорт страниц через
getpagefullотдаёт готовую вёрстку, а не структурированную модель товара - под каталог интернет-магазина используются отдельные методы Tilda-магазина, и путать их с обычным API страниц не стоит. - Вебхуки не гарантируют повторную отправку при сбое на вашей стороне - если сервер лежал 5 минут, заказ можно потерять, поэтому я всегда добавляю логирование входящих запросов и ручной способ проверить последние заказы в панели Tilda.
- После публикации страницы изменения в экспорте через API появляются не мгновенно - кэш может отставать на несколько минут, это важно для автоматических синхронизаций по расписанию.
Когда стандартных блоков не хватает
Кастомный скрипт
от 3 000 ₽
Подробнее →Частые вопросы
Нужен ли платный тариф Tilda для доступа к API?
Да, ключи API открываются только на тарифах Business и Agency. На Personal и Start раздела с ключами в личном кабинете нет вообще, и переход на нужный тариф - первый шаг перед любой интеграцией.
Можно ли получать заказы с Tilda в реальном времени через API?
Напрямую через REST - нет, Tilda не отдаёт заказы по запросу. Реальное время обеспечивают вебхуки: при отправке формы или оплате заказа Tilda сама присылает POST-запрос с данными на ваш сервер, и обработка идёт от этого события.
Сколько стоит интеграция Tilda с CRM, эквайрингом или СДЭК?
Простая доработка вроде подключения одного вебхука на готовую CRM у меня стоит от 3 000 ₽. Комплексная интеграция с несколькими сервисами - CRM, эквайринг и доставка вместе - от 40 000 ₽, в зависимости от числа сценариев и глубины сверки данных.
Можно ли совместить Tilda с WordPress или WooCommerce в одном проекте?
Да, я так делал: часть каталога и контентные страницы остаются на Tilda, а часть логики - например, сложный магазин - переезжает на WooCommerce, синхронизация заказов и остатков идёт через вебхуки и общий бэкенд. Такая связка оправдана, когда у Tilda не хватает гибкости под конкретный процесс, но переписывать весь сайт нет смысла.