Як автоматично публікувати товари з Google Таблиці в Telegram-канал через n8n

8 хв читанняОновлено

Кейс для Telegram-магазинів: контент-план товарів у Google Таблиці, n8n сам публікує фото з описом за розкладом і позначає опубліковане.

Поділитись:TelegramX

Коротка відповідь

Схема з трьох вузлів n8n: Schedule Trigger (запускається за розкладом) → Google Sheets, операція Get Row(s) (бере рядки зі статусом "не опубліковано") → Telegram, операція Send Photo (публікує фото товару з описом у канал). Останній крок — Google Sheets, операція Update Row, щоб позначити рядок як опублікований і не дублювати пост завтра.

Навіщо це потрібно

Для магазину, що продає через Telegram-канал (типовий формат для одягу, косметики, хендмейду в Україні), контент-план — це таблиця "що і коли постити". Ручна публікація за розкладом означає, що хтось щодня має пам'ятати зайти й натиснути "опублікувати" рівно вчасно. Автоматизація прибирає цей ручний крок повністю — таблиця стає єдиним місцем планування, публікація йде сама.

Що знадобиться

  • Обліковий запис n8n (хмарний або self-hosted)
  • Telegram-бот через @BotFather, доданий як адміністратор каналу з правом публікації постів
  • Google Таблиця з контент-планом

Покрокова інструкція

1. Підготуйте таблицю контент-плану

Колонки: Дата, Фото URL, Опис, Статус.

Дата Фото URL Опис Статус
2026-09-18 drive.google.com/... Светр вовняний, розміри S-L, 1200 грн (порожньо)

Фото зручно тримати на Google Диску з публічним доступом за посиланням — Telegram-нода приймає пряме URL зображення.

2. Додайте Schedule Trigger

  1. Новий workflow → вузол Schedule Trigger
  2. Налаштуйте інтервал — наприклад, щодня о 10:00 (Trigger Interval → Days, Trigger at Hour → 10)

3. Отримайте сьогоднішній рядок з Google Sheets

  1. Додайте вузол Google Sheets, операція — Get Row(s)
  2. Авторизуйте Google-акаунт, оберіть таблицю й аркуш
  3. У Filters вкажіть умову: колонка Статус не дорівнює опубліковано (або порожня) — щоб брати лише неопубліковані рядки
  4. Якщо в таблиці кілька майбутніх дат одразу, додайте другу умову — Дата дорівнює сьогоднішній даті ({{$today}} у форматі, що збігається з форматом дати в таблиці)

4. Опублікуйте пост у Telegram

  1. Додайте вузол Telegram, операція — Send Photo
  2. Chat ID — ID вашого каналу (формат @назва_каналу для публічних каналів, або числовий ID з префіксом -100 для приватних)
  3. Photo — підставте значення з поля Фото URL попереднього вузла
  4. Caption — підставте Опис

5. Позначте рядок як опублікований

  1. Додайте ще один вузол Google Sheets, операція — Update Row
  2. Вкажіть той самий рядок (за номером рядка з попереднього Get Row(s)) і встановіть Статус = опубліковано

6. Активуйте workflow

Увімкніть перемикач Active. Тепер щодня о вказаний час n8n сам перевіряє таблицю й публікує заплановане.

Поширені помилки

Telegram видає помилку "chat not found" чи "not enough rights". Бот має бути доданий у канал саме як адміністратор з правом "Публікація повідомлень" — просто учасник каналу постити не може.

Фото не завантажується. Посилання на Google Диску має бути доступне "будь-кому за посиланням", інакше Telegram не зможе його завантажити напряму — приватні файли Диска для цього не підходять.

Пост публікується двічі. Найчастіше — Filters у Get Row(s) налаштовані неправильно й беруть уже опубліковані рядки повторно. Перевірте, що умова фільтра справді виключає значення "опубліковано" в колонці Статус.

Workflow активний, але нічого не постить. Схожий клас проблем (неактивований workflow, конфлікт налаштувань тригера) детально розібраний у статті чому n8n webhook не спрацьовує — Schedule Trigger має інший механізм за webhook, але діагностика "перевірити, чи workflow реально Active" застосовна так само.

Часті питання

Чи можна публікувати кілька фото одного товару одним постом?

Так, замість Send Photo використайте операцію Send Media Group — вона приймає масив зображень і публікує їх альбомом в одному пості з єдиним підписом під першим фото.

Чи можна автоматично публікувати в кілька каналів одразу?

Так — додайте кілька вузлів Telegram Send Photo з різними Chat ID паралельно, або скористайтесь вузлом Loop, якщо канали перелічені в окремій таблиці.

Що робити, якщо контент-план веде кілька людей одночасно?

Google Таблиці підтримують одночасне редагування кількома людьми з коробки — n8n просто читає стан таблиці в момент запуску тригера, тож координація редагування — задача самих людей, а не воркфлоу.

Чи потрібен self-hosted n8n для цього сценарію?

Ні, хмарний n8n.cloud підтримує Schedule Trigger, Google Sheets і Telegram без додаткового налаштування сервера — так само, як і в підключенні Telegram-бота до Google Sheets.


Дата останньої перевірки актуальності: 20 серпня 2026 р. Назви операцій звірені з офіційною документацією n8n — вузли Telegram і Google Sheets.

Схожі статті