Лаптоп із розмитою таблицею й смартфон із формою поруч, ілюстрація передачі заявок в Google Sheets

Як автоматично передавати заявки із сайту в Google Sheets

Автоматично передавати заявки із сайту в Google Sheets можна через готову інтеграцію CMS або конструктора, сервіс автоматизації чи власний обробник на Google Apps Script. Почніть із готового підключення: якщо воно передає потрібні поля та дає змогу відстежувати помилки, писати код зазвичай немає потреби. Для власної форми зі складнішими правилами обробки підійде Apps Script або сервер сайту з Google Sheets API.

Універсальної кнопки для всіх сайтів немає: налаштування залежать від того, де створена форма і куди вона вже надсилає дані. Нижче — схема вибору, порядок підключення та перевірки перед запуском.

Що обрати для передавання заявок у Google Sheets

Спосіб інтеграції визначають можливості форми, наявність серверної частини та вимоги до надійності. Якщо форма створена засобами CMS — системи керування сайтом — або конструктора, спочатку перевірте панель інтеграцій: там може бути готове підключення Google Sheets.

Ваша ситуація Що обрати Перевага Що перевірити
Форма має готове підключення Google Sheets Вбудовану інтеграцію Мінімум власного коду Доступні поля, тариф, журнал помилок і повторне надсилання
Потрібен ланцюжок: таблиця, сповіщення, інша система Сервіс автоматизації Об’єднання дій без власного серверного коду Ліміти операцій, дозволи та поведінку при збоях
Власна форма потребує спеціальних правил обробки Apps Script як вебзастосунок Керування перевіркою даних і записом Доступ до обробника, квоти, захист від спаму й дублів
Форма вже працює через сервер сайту Сервер і Google Sheets API Перевірки та секрети залишаються на сервері Авторизацію API, доступ до таблиці та обслуговування інтеграції

API — програмний інтерфейс, через який одна система звертається до іншої. Для серверного варіанта потрібно налаштувати авторизацію API та доступи Google Cloud; це завдання розробника, а не лише зміна параметрів форми.

Серед платформ автоматизації можна розглядати Make, Zapier або n8n, але підтримку потрібного сценарію, ціни й обмеження слід перевіряти окремо. Зорієнтуватися допоможе порівняння платформ автоматизації. Наявність конектора Google Sheets ще не означає, що він передає всі поля вашої форми.

Якщо потрібен лише новий рядок із контактами, готова інтеграція передає всі поля, а помилки можна відстежити, власний скрипт не обов’язково покращить результат. Водночас відсутність окремого платного сервісу не означає відсутності витрат: власний код потребує налаштування, перевірок і підтримки.

Що підготувати до підключення форми

Створіть окремий аркуш для вхідних заявок. Базові колонки: час отримання, ім’я, контакт, повідомлення та ідентифікатор заявки. Ідентифікатор допоможе розпізнати повторний запит після мережевого збою: під час повторного надсилання тієї самої заявки він має залишатися незмінним.

  • Збережіть налаштування чинної форми. Зафіксуйте, куди вона зараз надсилає заявки, які поля обов’язкові та які сповіщення використовує.
  • Перевірте права. Переконайтеся, що маєте потрібний доступ до форми, таблиці та налаштувань інтеграції.
  • Визначте формат полів. Наприклад, для телефону й електронної адреси потрібні різні правила перевірки.
  • Підготуйте тестові дані. Не використовуйте справжні контакти клієнтів для перевірки нового підключення.
  • Визначте умови успішного приймання. Повідомлення форми має відповідати фактичному результату обробки, а не лише натисканню кнопки.

Ризик втрати заявок: зміна робочої форми може порушити чинний канал їх отримання. Не вимикайте його до перевірки нового маршруту. Якщо не можете перевірити результат або повернути попередні налаштування, зупиніться й залучіть адміністратора чи розробника.

Як налаштувати готову інтеграцію або сервіс автоматизації

Назви меню залежать від CMS і сервісу. Шукайте в налаштуваннях форми розділ інтеграцій, підключень або зовнішніх дій. Загальний порядок такий:

  1. Виберіть подію отримання нової заявки з потрібної форми.
  2. Підключіть обліковий запис Google, який має доступ до цільової таблиці, способом, передбаченим платформою.
  3. Укажіть таблицю й конкретний аркуш.
  4. Зіставте поля форми з відповідними колонками.
  5. Надішліть тестову заявку, перевірте рядок і доступний журнал виконання.
  6. Увімкніть робочий сценарій, якщо платформа розділяє тестування та активний режим.

У сервісі автоматизації приймання даних може починатися з webhook: після події система надсилає запит на визначену адресу. Не кожна форма підтримує такий спосіб передавання. Докладніше про механізм — у поясненні, як працює webhook і чим він відрізняється від періодичної перевірки даних.

Після приймання заявки додається дія створення рядка в Google Sheets. Загальний порядок роботи в Make описаний в інструкції, як створити перший сценарій автоматизації. Налаштування джерела даних усе одно потрібно звіряти з можливостями вашої форми.

Ризик для конфіденційності: сторонній сервіс стає додатковим учасником обробки заявок. Перевірте, які дані він отримує та які дозволи запитує. Якщо заявки містять чутливу інформацію або призначення дозволів незрозуміле, не підключайте сервіс без відповідальної технічної та правової перевірки.

Як підключити власну форму через Google Apps Script

Apps Script можна опублікувати як вебзастосунок. HTTP-запит POST до нього запускає функцію doPost(e), яка отримує дані, перевіряє їх і записує в таблицю. Нижче — загальна схема за документацією Google, перевіреною 21 жовтня 2026 року, а не готовий код для будь-якого сайту.

Створіть обробник

  1. Відкрийте таблицю та виберіть Extensions → Apps Script або створіть окремий проєкт Apps Script.
  2. Реалізуйте doPost(e). Тіло запиту доступне, зокрема, через e.postData.contents; спосіб розбору залежить від формату, який надсилає сайт.
  3. Додайте перевірку обов’язкових полів, типів даних, довжини тексту та допустимих значень.
  4. Перед записом перевіряйте ідентифікатор заявки, щоб повторний запит не створював новий рядок.
  5. Запишіть перевірені дані та поверніть результат, який сторона сайту зможе відрізнити від помилки.

Параметри запитів і режими виконання описані в документації Google про вебзастосунки.

Опублікуйте вебзастосунок і налаштуйте доступ

У редакторі виберіть Deploy → New deployment → Web app. Укажіть, від чийого імені виконується скрипт і хто може звертатися до нього. Якщо скрипт працює від імені власника, він використовує його повноваження для доступу до таблиці.

Ризик для даних: доступний стороннім обробник із повноваженнями власника може записувати небажані дані. Перевірка формату полів сама собою не захищає від підроблених запитів і спаму. Якщо не можете налаштувати перевірку запитів та захист від зловживань, не відкривайте робочий обробник для публічного доступу без допомоги розробника.

Передайте URL розгортання компоненту, який надсилатиме заявки. Це не обов’язково браузер відвідувача: часто надійніше прийняти форму на сервері сайту, виконати перевірки й переслати дані далі. Секретний ключ у відкритому JavaScript форми не захищає інтеграцію, оскільки цей код доступний відвідувачам.

Перевірте запис і відповідь окремо

Після тестового надсилання перевірте рядок у потрібному аркуші та відкрийте Apps Script → Executions. Успішне повідомлення на сторінці саме по собі не доводить, що дані збережені.

Можлива й зворотна ситуація: запис відбувся, але сайт показав помилку. Content Service перенаправляє відповідь на одноразову адресу script.googleusercontent.com. Клієнт, який читає результат, має коректно обробляти перенаправлення. Тому перевіряйте не лише запис, а й те, як сайт визначає результат запиту.

Як перевірити інтеграцію та знайти причину збою

Спочатку надішліть коротку тестову заявку та звірте всі колонки. Потім перевірте порожнє обов’язкове поле, неправильний формат контакту й надто довге повідомлення. Окремо повторіть запит із тим самим ідентифікатором: це перевірка захисту від дублювання, а не лише блокування кнопки у браузері.

Не спрацювало Можлива причина Наступний крок
Значення потрапили не у свої колонки Помилка зіставлення полів Звірте поля форми, порядок колонок і вибраний аркуш
Після тесту рядка немає Неправильна таблиця чи аркуш або неактивний сценарій Перевірте ціль запису та стан інтеграції, потім журнал помилок
Apps Script не показує запуску Запит не дійшов до потрібного розгортання Звірте URL, налаштування надсилання й доступ до вебзастосунку
Запуск є, але завершується помилкою Невідповідний формат даних, недостатні права або помилка коду Перегляньте помилку в Executions і перевірте зазначений етап
Рядок з’явився, а форма повідомляє про збій Проблема читання відповіді, зокрема обробки перенаправлення Перевірте відповідь до повторного надсилання
Заявки дублюються Повторні запити не перевіряються на унікальність Перевірте незмінність ідентифікатора та логіку перевірки перед записом

Для паралельних запусків в Apps Script є LockService — механізм блокування конкурентного доступу до спільного ресурсу. Його варто розглянути, коли перевірка унікальності та запис мають виконуватися узгоджено. Саме блокування не визначає, чи заявка вже існує: потрібна окрема перевірка.

Які обмеження та правила безпеки врахувати

За документацією Google, перевіреною 21 жовтня 2026 року, один запуск Apps Script обмежений 6 хвилинами, одночасне виконання — 30 запусками на користувача та 1 000 на скрипт. Це не гарантована пропускна здатність форми: результат залежить від коду, тривалості обробки й інших обмежень.

Не переносіть квоти інших механізмів на приймання форм. Наприклад, URL Fetch стосується вихідних викликів скрипту, а не безпосередньо кількості вхідних POST-запитів. Перед запуском звіряйте актуальні квоти Apps Script: Google може змінювати їх без попередження, а перевищення лімітів може зупинити виконання з помилкою.

  • Не робіть таблицю загальнодоступною. Надавайте доступ лише потрібним обліковим записам та інтеграціям.
  • Не довіряйте лише перевіркам браузера. Перевіряйте дані також у скрипті або на сервері.
  • Не передавайте клієнтському коду OAuth-токени скрипту. Вони не мають потрапляти до відвідувачів.
  • Не допускайте інтерпретації довільного вводу як формули. Перевірте спосіб запису значень, що починаються із символів формули, щоб вони зберігалися як текст.
  • Не використовуйте onEdit(e) як приймач HTTP-запитів. Він реагує на редагування таблиці користувачем; для POST до вебзастосунку призначений doPost(e). Скриптовий або API-запис не запускає звичайний тригер редагування.

Для подальшої роботи менеджера можна додати колонку статусу та зробити спадний список із дозволеними значеннями. Це впорядкує обробку, але не замінить контроль доставки заявки.

Коли залучити розробника

Зупиніть самостійні зміни, якщо заявки містять чутливі дані, потік високий або нерівномірний, дублікати чи втрати неприпустимі, потрібне підключення кількох систем або помилки в журналах повторюються. За таких умов помилка в доступах чи обробці може спричинити витік або втрату заявок.

Не змінюйте навмання власника проєкту, права доступу та налаштування робочого розгортання. Зокрема, зміна власника між доменами може вимагати повторного розгортання вебзастосунку.

Рекомендація: почніть із готового конектора, якщо він передає потрібні поля й дає змогу відстежувати помилки. Обирайте сервіс автоматизації для ланцюжка дій, Apps Script — для власної логіки, а серверний варіант — для інтеграції з наявним бекендом і контролю приймання даних. Запускайте підключення лише після перевірки запису, помилок і повторного запиту, не відкриваючи саму таблицю для всіх.

Оновлено 21.10.2026

ChatGPT Perplexity Google (AI)