---
name: bankovskie-vypiski
description: Разбор банковских выписок компании или ИП — файл обмена с 1С (1CClientBankExchange, kl_to_1c.txt), CSV и XLSX из интернет-банка. Скрипт локально приводит операции к одному виду, раскладывает по категориям (налоги, зарплата, аренда, поставщики, выручка, комиссии банка, переводы между своими счетами), сверяет остатки и обороты, ищет дубли, платежи физлицам, крупные круглые суммы и сверяет выписку с реестром платежей или выгрузкой из учёта. Агент разбирает то, что правила не узнали, и пишет итоговую сводку. Использовать, когда просят «разбери выписку», «на что ушли деньги», «сверь выписку», «категоризируй операции», «итоги по выписке за месяц», bank statement analysis.
---

# Разбор банковской выписки

Цель — за один проход ответить на вопросы руководителя и бухгалтера: сколько
пришло и ушло, на что именно, сходятся ли остатки, что выглядит странно и чего не
хватает по сравнению с учётом.

Тяжёлую работу делает скрипт `scripts/parse_statement.py` — локально, без
интернета. Модель читает только сводку и неразобранные операции, а не всю выписку:
так дешевле, и в модель уходит меньше данных о контрагентах.

## Порядок работы

1. **Найди файлы выписки** и уточни период и счета, если файлов несколько. Форматы:
   1CClientBankExchange (`.txt`, обычно `kl_to_1c.txt`), `.csv`, `.xlsx`. Старый
   `.xls` и PDF скрипт не читает — попроси выгрузку «для 1С» или в Excel/CSV.
2. **Запусти скрипт** из папки этого скилла (в Claude Code — `${CLAUDE_SKILL_DIR}`;
   в Windows — `python` вместо `python3`):

   ```bash
   python3 scripts/parse_statement.py kl_to_1c.txt --out-dir выписка-разбор
   ```

   Несколько файлов — через пробел. Полезные флаги:
   - `--own-inn 7700000017` — ИНН своей компании: переводы себе не попадут в расходы
     (для файлов 1С ИНН определяется сам);
   - `--rules rules.json` — свои правила категорий (`references/categories.md`);
   - `--match реестр.csv --days 3` — сверка с реестром платежей или выгрузкой из учёта
     по сумме и дате ± 3 дня.
3. **Прочитай `summary.md`** в папке результата. Начни со сверки остатков: если не
   сходится — скажи об этом первым, остальные цифры тогда неполные.
4. **Разбери «Не разобрано».** Предложи категорию для каждой операции по назначению
   и контрагенту, с пометкой «предположение». Сомнительные — спроси у пользователя
   списком, а не по одной. Для постоянных контрагентов предложи правило по ИНН в
   `rules.json` и перезапусти скрипт с `--rules`.
5. **Проверь флаги** («На что посмотреть»): дубли, платежи физлицам и ИП, крупные
   круглые суммы, операции в выходные, контрагенты без ИНН. Флаг — повод посмотреть,
   а не обвинение: так и пиши.
6. **Напиши сводку** в `выписка-разбор/итоги.md` и коротко — в чат:
   - период, счета, остатки на начало и конец, сходится ли сверка;
   - поступления и списания по категориям, топ-5 контрагентов в каждую сторону;
   - что изменилось, если пользователь дал прошлый период;
   - что требует внимания — со ссылкой на конкретные операции (дата, сумма, контрагент);
   - что не удалось разобрать и почему.

Таблица всех операций с категориями — `operations.csv` (открывается в Excel:
разделитель «;», кодировка UTF-8 с BOM). Если пользователь правил категории в
этой таблице, учитывай его правки, а не перезапуск скрипта.

## Правила точности

- **Суммы бери из файлов скрипта**, не пересчитывай в уме и не округляй без нужды.
  Деньги — в рублях с копейками: `1 234 567,89 ₽`.
- Не придумывай назначение платежа и контрагента, если их нет в выписке.
- Категория, назначенная тобой, а не правилом, — помечай как предположение.
- Не делай налоговых и юридических выводов («это незаконно», «доначислят»): только
  «стоит проверить, потому что…».

## Данные

В выписке — контрагенты, суммы и, бывает, ФИО сотрудников. Скрипт работает на
компьютере пользователя; в модель уходит только то, что агент прочитает. Если
выписка чувствительная, читай `summary.md`, а не `operations.csv` целиком. Если
запросы идут через kosareva.cloud, персональные данные можно маскировать API Guard
(kosareva.cloud/api-guard/).

## Чего этот скилл не делает

- Не загружает выписку в 1С и не проводит операции по счетам учёта.
- Не считает налоги и не готовит отчётность.
- Не читает PDF-выписки и сканы, старый `.xls` — нужен файл обмена с 1С, CSV или XLSX.
- Не ходит в банк по API: выписку выгружает пользователь.
- Валютные счета разбирает, но не пересчитывает в рубли.
