Учёт расходов в Telegram с Google Sheets: создаём бота

Piotr Grudzień
Опубликовано Время чтения: 12 мин
Реальный разговор Pocket Ledger в Telegram рядом со сводкой Google Sheets с суммами 12,20 EUR и 6,00 USD

Кофе, билет на автобус, блокнот. О небольших покупках легко забыть, пока доберёшься до таблицы. А что, если для записи хватит одного сообщения в Telegram, а для проверки итогов месяца ещё одного?

В этом руководстве вы создадите Pocket Ledger, трекер расходов в Telegram с Google Sheets. Отправьте покупку, подтвердите предложенные данные и спросите сумму за месяц. Таблица хранит строки и выполняет расчёты, а бот ведёт разговор. Вот готовый результат.

Первый результат: одна сохранённая покупка кофе. Второй: итог, который можно проверить в таблице. Вы также узнаете, почему ответ «сохранено» в чате подтверждает лишь половину процесса.

Скачайте комплект настройки Pocket Ledger: оформленную начальную книгу, аватар, промпт, настройки Actions и таблицу тестов. Импортируйте книгу в таблицу, созданную Quickchat AI, и следуйте шагам ниже. Все примеры для копирования используют английский язык и ноябрь 2026 года, чтобы вы могли сравнивать результаты со скриншотами.

Что нужно для создания учёта расходов в Telegram?

Вам понадобятся Telegram, аккаунт Google и аккаунт Quickchat AI. Используются настройки панели и формула таблицы; размещать программу на сервере не нужно.

  1. Создайте аккаунт Quickchat AI, завершите проверку и создайте Agent с именем Pocket Ledger.
  2. Подготовьте аккаунт Google для новой таблицы. Начните с вымышленных записей ниже.
  3. Для упражнения используйте нового Telegram-бота. Подготовьте второй доверенный аккаунт Telegram для заключительной проверки доступа.

План Free в Quickchat AI предназначен для личного некоммерческого обучения и включает ограниченную квоту. Разговоры с AI и Simulation Testing расходуют кредиты. Перед выбором плана для постоянного использования проверьте актуальные планы и лимиты.

Схема с одной Action для записи строк расходов и отдельной Action для чтения сводки Два направления, две Actions. Возможность сохранить строку не даёт Agent возможности читать предыдущие итоги.

Шаг 1: как подключить личного Telegram-бота?

BotFather создаёт личность бота. Quickchat AI предоставляет Agent, который отвечает на его сообщения.

Откройте официального @BotFather, отправьте /newbot, назовите бота Pocket Ledger и выберите свободное имя пользователя, оканчивающееся на bot. Загрузите аватар из комплекта командой /setuserpic. Не раскрывайте токен: вы вставите его непосредственно в Quickchat AI.

BotFather создаёт бота Pocket Ledger; токен скрыт

Выберите отображаемое имя и уникальное имя пользователя. Токен BotFather скрыт.

В Quickchat AI откройте External Apps → Telegram → Your own bot. В окне Connect to Telegram вставьте учётные данные в Bot Token. Включите Enable your own bot и нажмите Save. Руководство по BotFather подробно описывает эти экраны.

Quickchat AI показывает подключённого Pocket Ledger с включённым Enable your own bot У подключённого бота то же имя Pocket Ledger, которое вы увидите в Telegram.

Откройте ссылку нового бота в Telegram, отправьте /start, затем Hello в личном чате. /start отправляет приветственное сообщение; обычное сообщение создаёт диалог в Inbox и метаданные отправителя, необходимые для следующих шагов. Во время настройки оставляйте Actions для личных данных неактивными.

Pocket Ledger отвечает на start и Hello в реальном личном чате Telegram

Ответ на Hello подтверждает, что Telegram обращается к вашему Agent. Обмен сообщениями Hello также появляется в Quickchat Inbox.

Откройте этот разговор в Quickchat AI через Inbox → Details → Visitor. Найдите Telegram User Id и Telegram Chat Type (ключи метаданных: telegram_user_id и telegram_chat_type). Скопируйте числовой ID через элемент управления, появляющийся при наведении, и убедитесь, что тип чата равен private.

Данные посетителя в Inbox с полем Telegram User Id и Telegram Chat Type равным private; личные значения скрыты Возьмите идентификатор отправителя из этого поля. На скриншоте личные идентификаторы скрыты; используйте своё настоящее значение.

ID поступает из метаданных отправителя Telegram. Имя пользователя, число, введённое в сообщении, и ID самого бота являются другими значениями. На следующих шагах вы ограничите обе Actions с помощью ID отправителя.

Шаг 2: как подготовить таблицу Google Sheets?

Интеграция Google Sheets создаёт таблицу и начальную Action. Используйте этот файл, чтобы Action и разрешение Google относились к одному ресурсу.

  1. Откройте Actions & MCPs → Add Action → Google Sheets и авторизуйте аккаунт Google. Руководство по подключению Google Sheets объясняет согласие и начальную конфигурацию.
  2. Сразу отключите начальную Action. Она создаётся активной. Сохраните имя log_lead_to_google_sheet: повторное подключение использует его для поиска. Мы изменим назначение Action на запись расходов.
  3. Откройте созданную таблицу и назовите её Pocket Ledger demo. В этом новом демонстрационном файле выберите File → Import → Upload, укажите pocket-ledger-starter.xlsx из комплекта выберите Replace spreadsheet, затем нажмите Import data. Так в файле, доступном Quickchat AI, появятся подготовленные листы Expenses и Summary. Используйте эту возможность только в новой демонстрационной таблице.
  4. Проверьте три начальные строки ниже. В Summary исходные суммы должны составлять 7,70 EUR и 6,00 USD. Шаг 6 объясняет формулу и подключает Action чтения.

Диалог подключения Google Sheets в Quickchat AI с описанием создаваемой таблицы и начальной Action Начните с подключения Google Sheets. Авторизация создаёт таблицу, используемую обеими Actions.

Хотите создать листы вручную? Переименуйте начальный лист в Expenses. Для этих английских примеров установите File → Settings → Locale → United States. Задайте A:D и F:H формат Plain text, а E формат Number с двумя знаками после запятой, затем вставьте блок ниже в A1. Закрепите строку заголовков и расширьте столбцы. Добавьте Summary по шагу 6. Google также описывает импорт книги Excel в существующую таблицу.

Скопировать три начальных расхода
date	month	item	category	amount	currency	note	conversation_url
2026-11-01	2026-11	coffee	food	4.50	EUR	synthetic example
2026-11-02	2026-11	bus ticket	transport	3.20	EUR	synthetic example
2026-11-03	2026-11	notebook	stationery	6.00	USD	synthetic example

Реальный лист Expenses до сохранения из Telegram с тремя вымышленными начальными покупками Три начальных расхода готовы к четвёртому. Суммы хранятся числами в E, а коды валют отдельным текстом в F.

Столбец conversation_url свяжет каждый новый расход с разговором. Для трёх примеров, введённых вручную, оставьте его пустым. Разрешение Google drive.file охватывает файлы, созданные приложением или явно ему предоставленные; здесь используется созданная интеграцией таблица без доступа ко всему вашему Drive.

Шаг 3: как ограничить расходы своим чатом?

Задайте Run only when для каждой Action, читающей или изменяющей журнал. Оба условия должны выполняться, поэтому одного вашего ID в групповом чате недостаточно.

Ключ метаданныхСравнениеЗначение
telegram_user_idequalsВаш настоящий числовой ID отправителя из шага 1
telegram_chat_typeequalsprivate
  1. Откройте неактивную Action log_lead_to_google_sheet и найдите Run only when.
  2. Добавьте оба условия выше. Используйте точные ключи метаданных и цифры ID без имени пользователя и префикса @.
  3. Сохраните Action, оставив её неактивной. При создании читающей Action в шаге 6 примените те же условия.

Редактор Action расходов с условиями выполнения по ID владельца и личному чату Условия записывающей Action в локальной демонстрации. Замените вымышленный ID настоящим ID отправителя и повторите оба условия в читающей Action.

Концептуальная схема, требующая личность владельца и личный Telegram-чат до запуска любой Action с личными данными Оба условия нужны в обеих Actions. Другой отправитель или групповой чат должны получить отказ до отправки HTTP-запроса в Google Sheets.

Это условия Actions, проверяемые сервером. Фраза «отвечай только мне» в промпте не является проверкой доступа. Ограничьте также общий доступ к таблице и доступ к аккаунту Quickchat AI.

Шаг 4: как научить бота сохранять подтверждённый расход?

Измените начальную Action так, чтобы она добавляла строку в порядке столбцов таблицы. Установите When to run → AI decides, чтобы она могла дождаться подтверждения. Затем перед включением дайте Agent правило подтверждения.

Настройте поля расхода

В What to ask the user first замените поля потенциальных клиентов этими параметрами. Сохраните имена параметров в точности.

ПараметрФорматОбязателенОписание для ввода
dateTextДаДата расхода в YYYY-MM-DD, подтверждённая владельцем. Спросить, если отсутствует.
monthTextДаYYYY-MM из подтверждённой даты.
itemTextДаКраткое название покупки.
categoryTextДаПростая категория, согласованная с владельцем, например еда или транспорт.
amountDecimal NumberДаПоложительная числовая сумма без знака валюты.
currencyTextДаПодтверждённый ISO-код валюты, например EUR или USD. Уточнять неоднозначные символы.
noteTextНетНеобязательная заметка. Оставить пустой, если не указана.

Сохраните настоящий ID таблицы из существующего API Endpoint. Замените диапазон на Expenses!A:H, оставьте метод POST и задайте Query Params как valueInputOption=RAW и insertDataOption=INSERT_ROWS. Удалите повторяющиеся параметры, если они уже есть в URL.

Скопировать образец запроса append
POST https://sheets.googleapis.com/v4/spreadsheets/YOUR_CREATED_SHEET_ID/values/Expenses!A:H:append
Query Params:
valueInputOption = RAW
insertDataOption = INSERT_ROWS
Headers:
Authorization = Bearer {{google_sheets_access_token}}
Content-Type = application/json

YOUR_CREATED_SHEET_ID служит поясняющим заполнителем. Сохраните настоящий ID, уже находящийся в исходном URL; не заменяйте его заполнителем. В значении Authorization выберите существующий Google Sheets System Token, а в теле запроса используйте встроенную переменную URL разговора.

На вкладке Body введите:

{"values":[["{{date}}","{{month}}","{{item}}","{{category}}","{{amount}}","{{currency}}","{{note}}","{{conversation_url}}"]]}

Настоящий редактор Body для API Endpoint со строкой расхода и элементами параметров Локальная конфигурация Action расходов. Тело задаёт порядок ячеек; формат параметра суммы задаёт его числовой тип.

Сохраните кавычки вокруг {{amount}} в редакторе. Этот точный заполнитель ссылается на параметр Decimal Number, поэтому подстановка создаёт JSON-число, например 4.5. Без кавычек JSON в редакторе станет невалидным. В итоговой таблице проверьте, что E содержит число и учитывается формулой.

API append Google добавляет строку. RAW сохраняет текст, например заметку с начальным =, буквально, не вычисляя его как формулу. Числовой параметр определяет тип суммы.

Скопировать описание записывающей Action
Save one personal expense to the configured Google Sheet. Call only after the owner explicitly confirms the proposed date, item, category, amount and currency. Ask for missing or ambiguous fields before saving. After confirmation, append one row once. Report success only after a successful API response. If the outcome is uncertain, tell the owner to inspect the Sheet before submitting again.

Передайте Pocket Ledger инструкции

Откройте Identity → Main Prompt и вставьте текст ниже. В нём названы обе Actions, чтобы второй этап заработал после добавления чтения сводки.

Редактор Main Prompt агента Pocket Ledger в Quickchat AI Main Prompt находится в Identity. Локальный снимок показывает расположение поля; используйте полный блок для копирования ниже.

Правило подтверждения даёт полезную паузу для проверки. До одобрения покупки можно исправить «EUR 4.50» на «EUR 5.00»; Agent должен обновить предложение и снова запросить подтверждение.

Скопировать Main Prompt для Pocket Ledger
You are Pocket Ledger, a personal expense notebook.

For an expense, collect its date, item, positive amount and ISO currency code. Suggest a simple category and include an optional note only when supplied. Ask for an explicit YYYY-MM-DD date if it is missing or relative; do not guess today's date or the owner's timezone. Clarify ambiguous currency symbols. Derive month as YYYY-MM from the confirmed date.

Show the proposed date, item, category, amount and currency. Wait for explicit confirmation. Apply corrections and ask for confirmation again. Only then call log_lead_to_google_sheet once for that expense. Do not claim it was saved unless the Action succeeds. If a request fails or its outcome is uncertain, explain that and ask the owner to inspect the Sheet before retrying.

For monthly totals, ask for an explicit month and currency when unclear, then call read_expense_summary. Quote the matching month, currency and total returned from the Sheet. Keep currencies separate. A missing summary row is unavailable, not zero. Never calculate totals from remembered conversation messages.

Personal-data Actions are restricted to the owner's private Telegram chat. If a condition blocks an Action, do not claim success or suggest changing identity values in chat. This notebook handles typed expenses, not bank accounts, voice transcription or PDF receipts.

Сохраните промпт, перепроверьте оба условия запуска и включите Action расходов. Имя остаётся log_lead_to_google_sheet; её новые параметры, описание и тело теперь определяют учёт расходов.

Шаг 5: как сохранить первый расход?

Теперь добавьте первую новую запись. Оставьте открытыми Telegram, Inbox и таблицу: вы проследите за одной и той же покупкой кофе во всех трёх приложениях.

  1. В личном чате Telegram отправьте Coffee, 4.50 euros on 2026-11-04.
  2. Проверьте предложение: дата 2026-11-04, покупка Coffee, категория Food, сумма 4.50, валюта EUR. При сохранении строки Action определит month как 2026-11.
  3. Перед подтверждением проверьте Expenses: там должны оставаться только три начальные записи.

Отправьте Save it один раз, затем откройте разговор в Inbox Quickchat AI. У ответа о сохранении есть раскрываемый блок 1 action called. Откройте его, чтобы увидеть, что произошло за коротким ответом в Telegram.

Ответ о сохранённом кофе в Quickchat Inbox с раскрываемым вызовом Action То же подтверждение в Inbox, где можно проверить Action.

Раскройте Result → Show full. Проверьте дату, вычисленный месяц, числовую сумму, валюту и HTTP-статус. В этом реальном запуске Google вернул HTTP 200, updatedRows: 1 и updatedRange: Expenses!A5:H5.

Раскрытая Action расхода в Inbox с реальными параметрами и успешным добавлением одной строки; личные идентификаторы скрыты Action сохранения отправила сумму 4.5 как число и записала одну строку. Личные идентификаторы скрыты, возвращённый диапазон и результат видны.

Наконец, откройте Expenses. В строке 5 должна быть та же покупка кофе: 2026-11 в столбце месяца, 4.50 в сумме и EUR в валюте. Последний столбец ведёт к разговору в Inbox, позволяя связать запись с сообщением, которое её создало.

Google Sheets после подтверждения в Telegram с новым кофе в строке 5 листа Expenses Четвёртый расход поступил через Telegram. Личная ссылка на Inbox скрыта на опубликованном изображении.

Теперь у вас есть полезная ежедневная привычка: отправить, подтвердить, проверить. Далее дадим боту надёжный источник для ответа на вопрос, куда ушли деньги за месяц.

Шаг 6: как запросить месячный итог?

Пусть Google Sheets рассчитает итог, а читающая Action получит его. Хранение расчётов в таблице позволяет проверить ответ даже после завершения разговора.

Добавьте вкладку Summary

Если вы импортировали начальную книгу, лист Summary и его формулы уже готовы. Исходные значения составляют 7,70 EUR и 6,00 USD; сохранение кофе меняет только строку EUR. Если вы создаёте таблицу вручную, выполните шаги ниже.

Начальный лист Summary с суммами 7,70 EUR и 6,00 USD до сохранения кофе Начальная точка: две валюты, две независимые суммы.

  1. Создайте вкладку Summary. Задайте A:B формат Plain text, затем введите month, currency, total в A1:C1.
  2. Введите 2026-11 и EUR в A2:B2, затем 2026-11 и USD в A3:B3.
  3. Введите эту формулу в C2 и протяните до C3. Форматируйте C как число с двумя десятичными знаками.
=SUMIFS(Expenses!$E$2:$E$501,Expenses!$B$2:$B$501,A2,Expenses!$F$2:$F$501,B2)

Функция SUMIFS складывает суммы, у которых месяц и валюта совпадают со строкой сводки. Если региональные настройки требуют точку с запятой между аргументами, замените запятые формулы на точки с запятой. Числа в JSON-запросах по-прежнему используют десятичную точку.

Реальная формула Summary и обновлённые ноябрьские суммы после сохранения кофе Выберите C2, чтобы увидеть формулу для 12,20 EUR. В строке USD остаётся 6,00.

Пример расчёта с отдельными ноябрьскими итогами 12,20 EUR и 6,00 USD Начальные 7,70 EUR плюс новый кофе за 4,50 EUR дают 12,20 EUR. Блокнот за 6,00 USD входит в отдельную сумму.

Начальная формула охватывает строки со 2 по 501. В показанном запуске после вставки новой строки все три диапазона заканчиваются на 502. Sheets может изменять ссылки при вставке; проверяйте согласованность всех трёх диапазонов Expenses и расширяйте их вместе до того, как новые записи окажутся за их пределами. Добавьте строку сводки для каждого сочетания месяца и валюты, о котором хотите спрашивать.

Добавьте читающую Action

Откройте Actions & MCPs → Add Action → API Action. Используйте Generate с запросом ниже; сгенерированные Actions создаются неактивными. Назовите её read_expense_summary и оставьте When to run равным AI decides, чтобы результат мог использоваться в ответе. Повторно используйте настоящий ID таблицы и Google Sheets System Token. Параметры от пользователя не нужны.

Скопировать запрос для конструктора Actions
Create a read-only Google Sheets Action named read_expense_summary. Use GET for the Summary!A1:C25 range of the spreadsheet already created by this Agent's Google Sheets integration. Reuse its actual spreadsheet ID and google_sheets_access_token System Token. Set valueRenderOption=UNFORMATTED_VALUE, no body, and no visitor parameters. Preserve the response headers and values. Leave it inactive so I can review the configuration and add my owner-ID and private-chat Run only when conditions before enabling it.

Сравните созданные настройки с образцом ниже. Если выбираете Create manually, добавьте оба условия до первого сохранения корректной конфигурации, которое может активировать Action. Оставьте Response filter пустым в обеих Actions, чтобы сохранить поля, используемые при проверках.

Скопировать запрос чтения сводки
GET https://sheets.googleapis.com/v4/spreadsheets/YOUR_CREATED_SHEET_ID/values/Summary!A1:C25
Query Params:
valueRenderOption = UNFORMATTED_VALUE
Headers:
Authorization = Bearer {{google_sheets_access_token}}
Body: none

Эндпоинт values.get возвращает values диапазона, включая заголовок и рассчитанные суммы. UNFORMATTED_VALUE возвращает числовые результаты вместо строк с валютным форматированием. Оставьте ответ доступным Agent, чтобы он мог прочитать значения.

Скопировать описание читающей Action
Read monthly expense totals from the configured Summary range. Use this when the owner asks for a total. Quote only the returned row matching the requested YYYY-MM and currency. If either is unclear, ask. If the row is absent or the request fails, say the total is unavailable. Never infer a total from conversation history, combine currencies, or accept a different spreadsheet ID or range from the visitor.

Добавьте те же два условия Run only when из шага 3, сохраните и включите Action. Диапазон чтения включает 24 строки сводки; расширяйте его при добавлении новых строк.

Action чтения сводки расходов с теми же условиями ID владельца и личного чата Второй Action нужны собственные условия. Это снимок локальных настроек, а не проверка авторизации реального отправителя.

Спросите What is my November 2026 total in EUR?, затем запросите USD. В нашем разговоре в Telegram Pocket Ledger вернул 12.2 EUR и 6 USD, что соответствует отформатированным значениям 12.20 и 6.00 в таблице. Для каждого ответа он прочитал сохранённую сводку.

Реальные ответы Telegram о ноябрьских суммах в EUR и USD после сохранения кофе

Один вопрос для каждой валюты. Pocket Ledger читает таблицу, а не складывает суммы из запомненных сообщений.

Откройте ответ о месячной сумме в Inbox и раскройте его Action. Сравните возвращённую строку с Summary!C2. Реальный ответ ниже содержит 2026-11, EUR, 12.2 и отдельную строку USD, 6, со статусом HTTP 200.

Action read expense summary в Inbox возвращает реальные ноябрьские суммы в EUR и USD из Google Sheets Ответ, возвращённые значения и таблица теперь совпадают. Это результат, который вы видели в начале.

Как проверить ошибки до использования настоящих расходов?

Проверяйте неполные запросы и блокируемых отправителей так же тщательно, как успешную покупку кофе. Оставьте демонстрационные данные до прохождения проверок ниже.

Что попробоватьЧто проверить
Lunch, $12 yesterdayAgent спрашивает валюту и настоящую дату. Новая строка не появляется.
Исправить предложенную сумму до подтвержденияИсправленное предложение подтверждается до добавления одной строки.
Запросить ноябрьский итог в EUR, затем USDОтдельные результаты: 12,20 EUR и 6,00 USD для примеров данных.
Запросить декабрь 2026 без декабрьской строки сводкиAgent сообщает, что итог недоступен, а не придумывает ноль.
Второй отправитель запрашивает итог и пытается сохранить расходОбе Actions отклоняются, личные значения не раскрываются.
Владелец отправляет те же запросы в группеОбе Actions отклоняются, поскольку чат не личный.
Сохранение завершается ошибкой или тайм-аутомОтвет сообщает об ошибке или неопределённости. До повторной попытки проверить таблицу.

Для повторяемых языковых тестов откройте Testing → Create Dataset → Paste messages и используйте сообщения и критерии оценки из комплекта. Последовательность подтверждения отдельно проверьте в полном разговоре. Метаданные Preview или Simulation являются тестовыми данными и не доказывают блокировку настоящего второго отправителя Telegram.

Тестовый набор Pocket Ledger в настоящем интерфейсе Testing Quickchat AI Локальный набор подготовлен для тестирования. Его наличие не означает завершённый запуск Simulation и не доказывает запись в Google Sheets.

Если поведение неверно, измените одну соответствующую инструкцию, повторите тот же ввод и снова проверьте вызов и таблицу. Например, преждевременное добавление требует изучить формулировку подтверждения в записывающей Action. Подтверждение является инструкцией, а не гарантией уникальности в базе данных. После тайм-аута важнее проверить таблицу, чем отправлять запрос снова.

Когда весь путь заработает, удалите вымышленные расходы, сохраните заголовки и формулы и добавьте строки сводки для своих месяцев и валют. Первая настоящая покупка может пройти ту же простую процедуру, что и кофе.

Может ли AI-ассистент помочь настроить Pocket Ledger?

Подключённый ассистент управления аккаунтом может подготовить Agent и проверить настройки Actions. Следуйте Manage with AI, используя страницу Quickchat AI в ChatGPT или страницу в Claude. Передайте ему комплект настройки и этот запрос:

Help me configure Pocket Ledger from this setup kit. Inspect the available Quickchat AI tools first. Prepare the Main Prompt and the two HTTP Actions using the exact field names, numeric amount type and fixed ranges. Keep log_lead_to_google_sheet as the starter name. Ask me to complete Google OAuth and Telegram Bot Token setup in the dashboard. Apply both owner/private run conditions before enabling either Action. Do not run credit-consuming tests or append expenses until I ask. Report any setting your tools cannot configure so I can complete it in the dashboard.

Владелец завершает согласие Google и подключение Telegram. Проверьте настройки и выполните те же проверки независимо от того, кто их ввёл.

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

Как учитывать расходы в Telegram с Google Sheets?

Подключите Telegram-бота к Quickchat AI Agent и авторизуйте Google Sheets. Настройте одну Action для добавления расхода после подтверждения и вторую для чтения месячной сводки на основе формул. Ограничьте обе Actions своим ID пользователя Telegram и личным чатом.

Может ли бот сказать, сколько я потратил в этом месяце?

Да, если запрошенным месяцу и валюте соответствует строка в настроенном диапазоне Summary. Google Sheets считает итог через SUMIFS, а читающая Action получает его. Action только для добавления строк не умеет читать итоги, а отсутствие строки сводки не означает ноль.

Может ли другой человек прочитать мои расходы через Telegram-бота?

Обе Actions для личных данных должны требовать ваш проверенный telegram_user_id и telegram_chat_type со значением private. Эти условия блокируют вызовы других отправителей и групп. До добавления личных данных проверьте оба случая и ограничьте также доступ к таблице и аккаунту Quickchat AI.

Этот Telegram-бот для расходов бесплатный?

Создание Telegram-бота бесплатно. План Free Quickchat AI поддерживает личное некоммерческое обучение с ограниченной квотой AI-кредитов. Ответы AI и Simulation Testing расходуют кредиты; постоянное использование зависит от доступной квоты и плана.

Нужны ли Apps Script, Python или сервер автоматизации?

Этот рецепт использует Quickchat AI Actions и формулу Google Sheets. Вы вставляете настройки запросов, JSON-тело и промпт в панель; разворачивать Apps Script, Python-бота или сервер автоматизации не нужно.

Можно использовать мою существующую таблицу расходов?

Здесь используется таблица, созданная интеграцией Google Sheets в Quickchat AI. Авторизация drive.file не даёт неограниченный доступ к вашему Drive. Не заменяйте ID таблицы произвольным существующим файлом, предполагая, что он доступен.

Умеет ли бот читать фотографии чеков или голосовые заметки?

Этот урок охватывает расходы, введённые текстом. Прежде чем полагаться на распознавание чеков, отдельно проверьте доставку изображения и подтверждение в Telegram. Расшифровка голоса и разбор PDF-чеков не входят в эту настройку.

Как обрабатываются разные валюты и повторные записи?

Каждая валюта получает отдельный месячный итог; конвертация здесь не выполняется. Подтверждение уменьшает число случайных записей, но не обеспечивает атомарную защиту от дубликатов. Если сохранение завершилось тайм-аутом, проверьте таблицу перед повторной отправкой.

Quickchat AI Quickchat AI Ask Quickchat AI a question