IDE + MCPСверка расчётов и выгрузка
Сверка оплат по счетам клиентов с готовой таблицей в Excel: 5 файлов за сессию, выявлен долг 26 800 рублей
Коротко
Бухгалтеру нужно было наглядно показать клиентам-селлерам, какие счета оплачены, а какие нет, когда прошла оплата и с какой карты. Вместо привычной выгрузки оборотно-сальдовой ведомости и ручной сборки сводной таблицы агент сам сверил счета с поступлениями и подготовил готовые Excel-файлы, понятные клиенту. За сессию сделаны сверки по четырём клиентам и сформировано 5 файлов; по одному из клиентов выявлена неоплаченная позиция на 26 800 рублей.
Что требовалось
Клиенты оплачивают услуги нерегулярно, иногда с разных карт (карта ИП и личная карта), а бывает, что один человек платит сразу за нескольких связанных лиц. Бухгалтеру регулярно требуется ответить клиенту на вопрос: какие счета закрыты, какие нет, когда и чем оплачено. При этом ответ должен быть в простой и понятной форме — не «сальдо по счёту 62», а «счёт №153 от 04.05 не оплачен, 26 800 рублей». Привычная процедура занимает время: выгрузить ведомость, сопоставить платежи по назначению, собрать таблицу вручную.
Как помог агент
Агент по каждому клиенту поднял из базы выставленные счета и поступления оплат и сверил их между собой по назначению платежа — то есть привязал каждую оплату к конкретному счёту по указанному в платеже номеру. Заодно определил источник оплаты: проведена она с карты ИП или с личной карты. Неоплаченные позиции были выделены как дебиторская задолженность. По одному из клиентов агент по присланному скриншоту квитанции из банка нашёл нужный платёж в базе по дате, сумме и назначению и подтвердил, что он уже учтён и разнесён. По каждому клиенту агент сформировал аккуратную таблицу в Excel со столбцами «счёт / дата / сумма / дата оплаты / чем оплачено / статус», с подсветкой неоплаченных строк и оплат с личной карты и со строкой ИТОГО по сумме долга. Готовые файлы сохранены в папку загрузок — клиенту можно передать таблицу напрямую, а не оборотно-сальдовую ведомость.
Результат
За сессию выполнены сверки по четырём клиентам и подготовлено 5 файлов Excel, готовых к передаче клиентам. Результаты по клиентам: у одного из шести счетов оплачены пять, не оплачен счёт №153 от 04.05.2026 — долг 26 800 рублей; у другого все 16 счетов оплачены в срок, открытой осталась консультация на 5 000 рублей; ещё по одному закрыты все 10 счетов с указанием, какие оплачены с карты ИП, а какие с личной карты; у последнего оплаты разнесены по собственному ИП, открытым остался счёт №50 на 3 500 рублей. Дополнительно подтверждён присланный клиентом платёж по скриншоту из банка. Каждая сверка занимает минуты, а ручных выгрузок и сводных таблиц при этом не потребовалось. Вся работа выполнена прямо в рабочей базе, без программиста и без установки дополнительных обработок.
1. Контекст
Клиенты-селлеры оплачивают услуги нерегулярно, в ряде случаев с разных карт (ИП и личная), иногда один человек оплачивает за нескольких связанных лиц. Вопрос о составе неоплаченных позиций возникает регулярно. Ответ должен быть представлен в формате, понятном не-бухгалтеру: не «сальдо 62.01», а «счёт №153 от 04.05 — не оплачен, 26 800 ₽».
2. Обращения заказчика (примеры из сессии)
«Проверь Воронов — у неё дебиторская задолженность за май. Составь таблицу: какие счета оплачены, чтобы клиент наглядно видел. Я ей отправлю.» «Составь таблицу для Орлов Карен Артурович ИП и сохрани в ту же папку.» «Сделай такую же по Карине.» «Всегда выгружай все файлы в эту папку.» → зафиксировано в память агента как правило для последующих сессий.
3. Как устроена сверка
3.1 Счета и оплаты — двумя запросами
-- счета, выставленные покупателю
ВЫБРАТЬ Дата, Номер, СуммаДокумента
ИЗ Документ.СчетНаОплатуПокупателю
ГДЕ Контрагент = &К И ПометкаУдаления = ЛОЖЬ
УПОРЯДОЧИТЬ ПО Дата
-- поступления с назначением платежа (в тексте — номер оплачиваемого счёта)
ВЫБРАТЬ Дата, Номер, СуммаДокумента, НазначениеПлатежа, Контрагент
ИЗ Документ.ПоступлениеНаРасчетныйСчет
ГДЕ Контрагент = &К И ПометкаУдаления = ЛОЖЬ
УПОРЯДОЧИТЬ ПО Дата
3.2 Сопоставление по назначению + определение источника
В назначении платежа, как правило, указан номер счёта («Оплата по счёту № 153 от 04.05.2026») — по нему оплата привязывается к конкретному счёту. Источник оплаты определяется по контрагенту/счёту платежа: проведён на карточку-ИП → «карта ИП», на карточку-физлицо → «личная карта». Позиции, оставшиеся без оплаты, формируют дебиторскую задолженность.
Результаты по клиентам:
- Воронов: 6 счетов, 5 оплачены, не оплачен только №153 от 04.05.2026 → долг 26 800 ₽ (тариф + кадры за май).
- Орлов: все 16 счетов оплачены в срок; открытым остался лишь акт-консультация 5 000 ₽, не выставленный отдельным счётом, — это и составляет нетто-долг (отражён явно во избежание ошибочного вывода о полном закрытии расчётов).
- Карина: 10 счетов, все закрыты; в таблице отражено, что часть оплачена с карты ИП, часть — с личной карты сестры (связь установлена в смежном кейсе по переразноске).
- Алина: оплаты разнесены по её собственному ИП; открытым остался счёт №50 на 3 500 ₽ → нетто-долг 3 500.
Технический момент — платёж, на который указал клиент. Алина направила скриншот квитанции Т-Банка и запросила подтверждение учёта. Поиском по дате, сумме и назначению (
query_1cпо поступлениям) установлено: платёж в базе присутствует и уже разнесён. Сверка отражает не только состав задолженности, но и подтверждает наличие конкретного платежа клиента.
4. Выгрузка в Excel
Готовая таблица формируется локально через PowerShell + Excel COM: заголовок, шапка, строки «счёт / дата / сумма / дата оплаты / чем оплачено / статус», числовой формат сумм, границы, цветовая подсветка неоплаченных строк и платежей с личной карты, строка ИТОГО с суммой долга. Файл .xlsx сохраняется в папку загрузок пользователя.
Технический момент — кириллица и 2D-массив. Кириллица в Excel COM записывается корректно при формировании двумерного массива значений
object[,]и присвоении его вRange.Value2одним блоком (а не по ячейке). Корректность проверена обратным чтением. Особенность реализации: массив нельзя передавать через параметр PowerShell-функции — приведение завершается ошибкойUnable to cast Object[,] to String; массив формируется и присваивается инлайн, в том же блоке.
Технический момент — сохранение в Downloads. Файл сохраняется в
Join-Path $env:USERPROFILE "Downloads"— по явному требованию клиента (зафиксировано в память агента как правило для последующих сессий). Перезапись существующего файла выполняется черезSaveAs(вызовRemove-Itemпо переменному пути блокируется песочницей, поэтому не применяется).
5. Инструменты
5.1 Использовали в этом кейсе
| Инструмент | Что делали |
|---|---|
query_1c |
Счета и поступления по контрагенту; разбор назначения платежа (номер счёта); определение источника (карта ИП / личная); поиск конкретного платежа по скриншоту; расчёт неоплаченных позиций |
session_info_1c |
Контекст и права сессии |
| PowerShell + Excel COM (локально) | Формирование форматированных .xlsx со сводкой, подсветкой и ИТОГО; сохранение в Downloads |
5.2 Что осталось за рамками — но доступно в составе решения
| Инструмент / компонент | Что даёт | Применение в аналогичной задаче |
|---|---|---|
run_task / task_status |
Асинхронная длительная задача | Массовое формирование сверок по всем клиентам пакетом, в фоновом режиме |
get_skill / skill_report |
Поиск и сохранение скилла | Скилл «сверка счёта↔︎оплаты + Excel» — один из частых запросов сервисной бухгалтерии, накапливается как актив |
batch_1c |
Запись в базу | При необходимости по итогам сверки выполнить доначисление или разнесение — переход к изменению данных без смены инструмента |
web_search |
Поиск под токеном клиента | Уточнение реквизитов или деталей по спорному платежу |
get_run_history |
История операций агента | Аудит сформированных сверок и времени их формирования |
ai_ПанельАгента |
Агент внутри 1С | Клиент самостоятельно запрашивает дебиторскую задолженность и получает Excel |
| Identity Server (multi-tenant) | Изоляция данных по клиенту | Множество ИП в одном контуре — сверка строго в пределах своего scope |
| Audit-trail runtime | Журнал с токеном клиента | Каждый запрос сверки фиксируется в журнале |
6. Результаты
| Метрика | Значение |
|---|---|
| Клиентов охвачено сверками за сессию | 4 (Воронов, Орлов, Карина, Алина) |
| Excel-файлов выдано | 5 |
| Найдено и показано неоплаченных позиций | долг Воронов 26 800; консультация Орлов 5 000; долг Алины 3 500 |
| Подтверждён найденный клиентом платёж | да (Алина, по скриншоту Т-Банка) |
| Время на одну сверку | минуты (2 запроса + формирование файла) |
| Выгрузок через Конфигуратор / ручных сводных | 0 |
7. Что это даёт пользователю MCP ai-agent-1c
Клиентская сверка по требованию. Вместо последовательности «выгрузка ОСВ, сопоставление платежей, сборка таблицы» — один запрос в чат и готовый Excel, понятный клиенту: что оплачено, когда, с какой карты, какова задолженность. Сопоставление выполняется по фактическому назначению платежа, источник оплаты отражён явно, неоплаченные позиции подсвечены, в нижней строке указан ИТОГО долга. Для сервисной бухгалтерии, где подобные запросы поступают десятками в месяц, это исключает рутинные операции и формирует материал, готовый к передаче клиенту.
Приложения
A. Файлы кейса (в папке Downloads)
| Файл | Содержание |
|---|---|
Воронов_расчеты_май2026.xlsx |
6 счетов, не оплачен №153 → долг 26 800 |
Орлов_Карен_оплаты_услуг.xlsx |
16 счетов оплачены; открыта консультация 5 000 |
Сафина_Карина_оплаты_услуг.xlsx |
10 счетов, источник оплаты (карта ИП / личная) |
Сафина_Карина_сверка_оплат.xlsx |
Сверка по датам и закрываемым счетам |
Сафина_Алина_сверка_оплат.xlsx |
Сверка по её ИП; открыт счёт №50 → 3 500 |
B. Карта решения
query_1c: счета покупателю query_1c: поступления (+ НазначениеПлатежа, контрагент)
│ │
└──────────────┬──────────────────────────┘
▼
сопоставление по № счёта в назначении платежа
│
┌──────────────┼───────────────┐
▼ ▼ ▼
оплачен/нет дата оплаты источник: карта ИП / личная
│
▼
PowerShell + Excel COM: 2D-массив → Range.Value2 (инлайн, кириллица ок)
подсветка неоплаченного и личной карты + строка ИТОГО долга
│
▼
.xlsx в Downloads → клиенту (а не оборотка)