
нейросети · продукт
Задача агенту с критериями приёмки: как ставить, чтобы не переделывать
Одна настоящая задача с постановкой и приёмкой. Шаблон в Markdown и промпт проверки результата.
Читать разборнейросети · продукт
От заявки до отметки об оплате и встречи в календаре. Показываю свой процесс и даю ТЗ, с которым вы поставите задачу агенту и проверите бота до настоящих платежей.
Эта статья для эксперта или малого бизнеса, которому нужен свой бот для записи клиентов в Telegram. На моём примере разберём, как связать заявку, платёж ЮKassa и Google Календарь, а затем проверить их вместе.
Заберите ТЗ для агента и чек-лист платежа. С ними вы опишете условия своей услуги и примете первую версию по конкретным проверкам. Для разработки нужны компьютер и Claude Code или Codex.
01
У меня клиент оставляет заявку, время назначаю я, оплату подтверждает бот. Он принимает деньги через ЮKassa или bePaid, ставит назначенный созвон в Google Календарь и присылает ссылку на встречу. Бот написан на Go, данные хранятся в Postgres.
Заявка, время встречи и оплата учитываются отдельно. Это позволяет назначить созвон до платежа и перенести его, сохранив отметку оплаты. Самостоятельный выбор свободного часа клиентом потребует отдельной логики, которую разберём ниже.
02
Сначала определите условия услуги: продолжительность, цену, валюту, порядок назначения, переноса и возврата. Для студии с несколькими мастерами добавьте исполнителя, рабочие часы и перерывы. Эти ответы станут правилами бота.
В моём процессе назначение и отметка «оплачено» разделены. У вашей услуги может быть другой порядок: сначала предоплата, затем подтверждение записи. Укажите его в ТЗ, чтобы агент реализовал нужные переходы.
Владелец подключает магазин, подтверждает реквизиты и согласует условия с провайдером. Бухгалтер определяет налоговые параметры. Агент получает эти решения и проверяет их передачу программе.
Запишите также, что клиент получает после оплаты и кто вправе менять цену заявки. Встреча может быть назначена, но ещё не оплачена; деньги могут быть возвращены, а история обращения сохранена. Агенту нужна таблица этих переходов, чтобы одно действие случайно не отменяло другое.
03
Для работы нужны тестовый Telegram-бот, папка проекта, Claude Code или Codex, сервер и база данных. Бота создают через BotFather. Если выбираете инструмент впервые, посмотрите сравнение Claude Code и Codex и вернитесь сюда с выбранным агентом.
Токен бота и ключи магазина передавайте через предусмотренное для секретов хранилище. В отчёте агент показывает имена настроек и факт подключения, скрывая значения. Проверьте, что ключи отсутствуют в истории git, логах и скачиваемых файлах.
До подключения денег попросите инструкцию запуска: команды проверки и остановки, адрес состояния сервиса, запуск после перезагрузки. Сервер должен принимать платёжные уведомления и при закрытом терминале на вашем ноутбуке. Первым результатом работы агента пусть станет схема заявки с состояниями и проверками.
Секретный ключ API ЮKassa и токен провайдера встроенной оплаты Telegram относятся к разным схемам. Назовите агенту выбранную до настройки. Для первого проекта заведите отдельного тестового бота: так пробные сообщения и кнопки будут отделены от переписки с клиентами.
04
Мой бот использует redirect: сервер создаёт платёж по API, получает адрес подтверждения и отправляет ссылку клиенту. Человек вводит данные карты на странице ЮKassa. Такая схема появилась у клуба в сентябре 2026 года, затем у консультаций.
В быстром старте ЮKassa описаны поля запроса и получение результата. Передайте агенту документацию вместе с выбранной схемой. У встроенной оплаты Telegram другое подключение через BotFather и другой токен провайдера.
Повтор запроса должен возвращать прежнюю операцию. Для этого нужен ключ идемпотентности; у оплаты клуба им служит внутренний номер платежа. Если сервер потерял ответ, он повторяет запрос с тем же ключом. Новая попытка после завершённого отказа получает новую запись.
Проверьте двойное нажатие кнопки оплаты. В учёте должна сохраняться связь заявки, попыток и подтверждённого платежа. Цену сервер берёт из условий услуги, а не из изменяемого параметра ссылки.
05
Бот получает webhook, входящий запрос от платёжной системы, и перечитывает операцию по API своего магазина. Мой обработчик берёт из уведомления событие и идентификатор объекта. Подтверждённый результат передаётся нужному процессу: консультации, клубу или материалу.
| Сигнал | Действие бота |
|---|---|
| Клиент вернулся со страницы оплаты | Проверить статус; сам переход оплату не подтверждает. |
| Пришёл webhook | Перечитать платёж по API, сверить заявку, сумму и валюту. |
| API подтвердил платёж нужной заявки | Сохранить отметку оплаты один раз. |
ЮKassa ожидает HTTP 200 после принятия уведомления; при другом коде повторяет доставку в течение суток. Это описано в документации webhook. Повтор и параллельная доставка входят в приёмку.
В оплате клуба проведение платежа и изменение срока участия выполняются одной транзакцией с блокировкой строки. Повтор видит уже проведённую операцию. Сообщение клиенту отправляется после сохранения: сбой Telegram оставляет деньги учтёнными.
Для зависших попыток нужна сверка по API после сбоя или перезапуска. В журнале владельцу оставьте номера заявки и операции, а также причину остановки. По ним он сможет найти платёж и помочь клиенту.
Настоящий платёж другого заказа не оплачивает текущую заявку. Попросите агента показать автоматическую проверку на чужом идентификаторе, другой сумме и валюте. Одного поля succeeded в пришедшем JSON недостаточно: состояние должен подтвердить API, а принадлежность операции проверяет ваш сервер.
06
Для первой версии я бы оставил одного провайдера и одну валюту. У моего бота с ноября 2026 года несколько вариантов, доступных при соответствующем подключении:
Оплату криптой я подтверждаю вручную, автоматического криптоэквайринга в боте нет. Сумма в другой валюте берётся из условий продукта. Перевести подпись кнопки недостаточно: агент должен показать источник суммы и валюту учёта.
Мой бот предупреждает о прямой оплате картой «Мир» и вариантах SberPay или T-Pay. Это условие моего подключения, зафиксированное после ответа ЮKassa. Для своего магазина подтвердите доступные способы у провайдера и покажите ограничения до перехода на оплату.
07
Источник времени у меня один: заявка. После назначения бот ставит часовое событие в отдельный Google Календарь: имя клиента, выдержка из заявки, ссылка встречи и переход в админку. Перенос двигает то же событие с постоянным идентификатором.
Отказ, откладывание и просьба о переносе убирают событие; проведённый созвон остаётся в истории дня. Ручная правка календаря обратно в заявку не переносится. Чтобы изменить время, я меняю заявку.
Синхронизация работает в фоне с повтором после сбоя и восстановлением будущих встреч при старте. Для создания Google Meet понадобилось отдельное согласие владельца через OAuth. Если его нет, подходит ручная ссылка. Бот присылает её клиенту в напоминании за полтора часа.
Добавьте рабочие часы, часовой пояс, длительность, перерывы и срок удержания места до оплаты. Проверьте две параллельные заявки на один час: подтвердиться должна одна. Для поздней оплаты истёкшей брони заранее выберите порядок переноса или возврата.
Разберите с агентом и такой случай: бронь истекла, место занял другой клиент, а первый платёж подтвердился с задержкой. Запишите, кто предложит новое время или оформит возврат. В приёмке этого расширения должны быть две параллельные заявки и поздний платёж, чтобы проверить правило на воспроизводимом примере, а не по описанию в чате.
Сервисный аккаунт записывает события, но создать Meet от его имени в моём личном Gmail не получилось; это проверено 7 октября 2026 года. Отдельное согласие владельца решает эту задачу. Приглашение из календаря сервисный аккаунт клиенту не отправляет: ссылку доставляет бот.
08
Способ выдачи чеков согласуйте с бухгалтером и провайдером до разработки. Зафиксируйте реквизиты, ставку НДС, систему налогообложения и порядок чеков при предоплате и возврате. Агент передаёт уже принятые значения.
В «Чеках от ЮKassa» для регистрации передаются сведения об услуге, контакты покупателя и другие параметры. В этом решении чек доставляется на электронную почту. У моего клиента API параметры чека включаются настройкой; применимость требований к продавцу определяет человек.
ЮKassa рекомендует провести платёж на минимальную сумму, проверить чек, затем отменить или вернуть платёж и проверить нужные чеки. Такой контроль согласуйте отдельно перед боевым запуском. Тестовый платёж проверяет программу, а выдачу чеков проверяют в подключённой схеме фискализации.
Попросите бухгалтера письменно зафиксировать значения для вашего продавца. После подключения проверьте фактическую доставку чека покупателю и статус его регистрации. Отсутствие параметров чека в запросе само по себе не говорит, что продавец освобождён от его выдачи.
09
Проверьте успешную оплату и четыре группы сбоев ниже. Используйте отдельное окружение и реквизиты из документации тестового магазина. Мой клиент сравнивает флаг тестового платежа с режимом конфигурации и останавливает проведение при несовпадении.
Отдельно проверьте отказ от оплаты, возврат денег и доставку напоминания. Отмена встречи и возврат отражаются как разные действия. В протоколе сохраните дату, версию проекта, сценарий, ожидаемый и полученный результат.
10
Скачайте ТЗ на бота и чек-лист тестового платежа. В ТЗ есть вопросы владельцу, состояния заявки, первая версия и приёмка. Файлы Markdown открываются текстовым редактором.
Нажмите «Скопировать промпт» рядом с обложкой и приложите файлы к разговору с Claude Code или Codex. Начните с заявки без денег, затем подключите тестовую оплату, потом календарь. Если трудно сформулировать проверяемый результат первого участка, используйте постановку задачи с критериями приёмки.
После каждого участка просите показать выполненные действия и результат проверки. Для первой заявки достаточно увидеть ответы клиента, запись у владельца и отсутствие копии при повторе. Затем проходите следующий участок с теми же данными, чтобы было видно, какой переход добавился.
11
После приёмки пройдите весь путь с телефона, затем повторите его с прерыванием на каждом шаге. Проверьте старые кнопки, позднюю оплату и потерю сети. Владелец должен находить спорный платёж по заявке и видеть причину сбоя календаря.
Восстановите резервную копию в тестовую базу и запишите порядок временного закрытия новых оплат. Переход в боевой магазин сделайте отдельным шагом: сверка реквизитов, способов оплаты, webhook, чеков и сообщений клиенту. Зафиксируйте принятую версию и ответственного за запуск.
После запуска остаются обновления сервера, условия оплаты и доступ Google. Назначьте того, кто получает ошибки и помогает клиентам. Эта работа входит в обслуживание собственного бота.
12
Код personal-website и документация сверены 6 ноября 2026 года. Основа моего примера: решения 0093 об оплате клуба, 0128 о календаре, 0135 об оплате консультации и 0174 о выборе валюты.
13
Статья описывает устройство моего бота по коду и решениям, без аудита живых платежей и оценки сроков повторения. Самостоятельный выбор слотов предложен как расширение. ТЗ помогает поставить задачу агенту; условия приёма денег и запуск согласует владелец.

нейросети · продукт
Одна настоящая задача с постановкой и приёмкой. Шаблон в Markdown и промпт проверки результата.
Читать разбор
нейросети · продукт
Тарифы и лимиты на 6 ноября 2026, параллельные агенты и чек-лист переноса проекта между инструментами.
Читать разборВ методичке «Автоматизации с агентами» вы проходите вопросы, спеку, проверку и отладку на учебном проекте, затем на своём процессе. Нужны компьютер и Claude Code или Codex. Это порядок работы с агентом, а не готовый платёжный бот.
Посмотреть методичку