Когда таблицы достаточно
Google Таблица подходит, когда заявок или заказов немного, а нужно, чтобы их видели несколько человек: менеджер, склад, бухгалтерия. В таблице легко отфильтровать, посчитать и выгрузить отчёт. Когда появляются этапы сделки, ответственные, история переписки и напоминания, удобнее CRM — о ней отдельная статья.
Главное правило: таблица — это копия, а не единственное место хранения. Заявка должна сначала сохраниться на сайте или в почте, и только потом — попасть в таблицу. Тогда сбой связи с Google не будет означать потерянного клиента.
Три способа передачи
| Способ | Как работает | Подходит, если |
|---|---|---|
| Встроенная выгрузка | Конструктор или модуль CMS сам добавляет строки после подключения аккаунта Google | Сайт на платформе, где такая функция есть, и нужен простой список заявок |
| Google Apps Script | В таблице создаётся небольшой скрипт с адресом; сайт отправляет на него данные, скрипт дописывает строку | Нужно бесплатно и быстро, заявок немного, структура простая |
| Google Sheets API с сервера | Сервер сайта сам записывает строки через официальный API от имени служебного аккаунта | Важны надёжность, повторы при сбоях, обновление строк и статусов |
Есть и четвёртый вариант — сервисы-посредники, которые связывают сайт и таблицу без программирования. Они удобны, но обычно платные по подписке, и данные клиентов проходят через ещё одну компанию.
Встроенная выгрузка
Самый быстрый вариант: подключили аккаунт, выбрали таблицу — готово. Ограничение — работает так, как задумали авторы платформы: набор полей, формат и поведение при ошибках поменять обычно нельзя.
Google Apps Script
Популярное решение для небольших сайтов. Скрипт публикуется как веб-приложение и принимает данные формы. Подводные камни:
- Скрипт отвечает не мгновенно. Если ждать его ответа в браузере, посетитель смотрит на крутящуюся кнопку. Лучше отправлять данные с сервера сайта после того, как заявка уже принята.
- При одновременных заявках строки могут перезаписывать друг друга, если в скрипте не предусмотрена блокировка.
- У Google есть суточные квоты на работу скриптов. Для обычного сайта их хватает, но о них стоит знать.
- Скрипт привязан к аккаунту сотрудника. Сотрудник ушёл, доступы отключили — передача остановилась.
API с сервера сайта
Самый надёжный и гибкий вариант. Сервер сайта сохраняет заявку, ставит её в очередь на отправку и повторяет попытку, если Google недоступен. Можно не только добавлять строки, но и обновлять их — например, отмечать оплату или смену статуса заказа. Требует программирования и доступа к серверу.
Где такие связки обычно ломаются
- Изменили таблицу. Переименовали лист, переставили или удалили колонку — данные пишутся не туда или не пишутся вовсе.
- Дубли. Посетитель нажал кнопку дважды, или при сбое сайт отправил заявку повторно. Нужна проверка по номеру заявки.
- Сбой без следа. Связь с Google оборвалась, ошибка никуда не записалась, строки нет, и никто об этом не знает.
- Доступы. Отключили аккаунт, через который работала интеграция, или забрали права на таблицу.
- Форматы. Телефон превращается в число и теряет плюс, дата — в непонятную строку, сумма — в текст, который нельзя сложить.
Персональные данные и 152-ФЗ
Имя, телефон и email клиента — персональные данные. Закон о персональных данных требует, чтобы при сборе данных граждан России их запись и хранение велись в базах на территории России, а передача за рубеж — по установленным правилам, включая уведомление Роскомнадзора. Серверы Google находятся за рубежом.
На практике это значит: сначала сохраняйте заявку в базе сайта или в российском сервисе, а в таблицу передавайте только то, что действительно нужно для работы. Как именно оформить обработку в вашем случае, лучше уточнить у юриста — мы не даём юридических консультаций, но учтём требования при настройке.
Что подготовить до начала
- Список полей, которые нужны в таблице, и их порядок.
- Кто будет владельцем таблицы — лучше общий рабочий аккаунт компании, а не личный.
- Что делать с повторными заявками от одного человека.
- Нужно ли обновлять строки после создания: оплата, статус, ответственный.
- Кому и как сообщать, если передача перестала работать.
Частые вопросы
Можно ли передавать в таблицу заказы, а не только заявки?
Да. Заказ — та же строка, только полей больше: состав, сумма, доставка, оплата. Если статус заказа меняется, удобнее способ через API, который умеет обновлять существующую строку.
Таблица перестала заполняться. Где искать причину?
Проверьте, не меняли ли структуру листа и доступы к таблице, работает ли аккаунт, через который настроена связка, и приходят ли заявки на сайт вообще. Если заявки на сайте есть, а в таблице нет — проблема в самой передаче, её видно в журнале ошибок сервера или скрипта.