| name | npd-tax-calculation |
| description | Расчёт налога на профессиональный доход (НПД) для самозанятого за период.
Учитывает разные ставки (4% физлицам / 6% юрлицам), вычет 10 000 ₽,
лимит 2.4 млн ₽/год.
|
| required_tools | ["fns.check_self_employed"] |
| optional_tools | ["fns.get_npd_receipts"] |
| version | 1.0.0 |
| status | alpha |
| domain_owner | TBD |
| last_legislative_update | 2026-05 |
| risk_level | medium |
| references | ["422-ФЗ от 27.11.2018 (НПД)","НК РФ — общие положения о налогах"] |
Расчёт налога самозанятого (НПД)
Назначение
Рассчитать сумму налога на профессиональный доход (НПД) для самозанятого
за указанный период. Учесть:
- Разные ставки (4% для услуг физлицам, 6% для услуг юрлицам)
- Вычет 10 000 ₽ (одноразовый, применяется автоматически)
- Лимит 2.4 млн ₽/год (если превышен — статус автоматически снимается)
Входные данные
Бухгалтер / самозанятый предоставляет:
- ИНН самозанятого
- Период (месяц, например "2026-05")
- Список доходов за период:
- сумма
- тип контрагента (физлицо / юрлицо)
- дата получения
Workflow
Шаг 1 — Проверка статуса самозанятого
Через fns.check_self_employed(inn=user.inn) подтверди что:
- Лицо имеет статус самозанятого на дату операций
- Статус не приостановлен
- ИНН валиден
Если статуса нет — деал-брейкер. Сообщи что лицо не зарегистрировано
как самозанятый, рассчитать НПД нельзя.
Если статус есть — извлеки:
- Дата регистрации
- Накопленный доход за год (для проверки лимита)
- Использован ли вычет 10 000 ₽ ранее
Шаг 2 — Разделение доходов по типу контрагента
Из предоставленных доходов раздели на 2 группы:
- Доходы от физлиц → ставка 4%
- Доходы от юрлиц и ИП → ставка 6%
Для каждого дохода нужен тип контрагента. Если в input не указан — спроси
у пользователя или пометь как unknown (применить максимальную ставку 6%
для безопасности).
Шаг 3 — Проверка лимита 2.4 млн ₽
Сложи накопленный доход за год (из ответа check_self_employed) +
доходы за расчётный период.
Если сумма > 2.4 млн ₽ → критично:
- Часть доходов которая превысила лимит — НЕ НПД
- С момента превышения статус автоматически снимается
- Дальнейшие доходы — облагаются как обычные (НДФЛ 13% или ИП-режим)
- Уведомить пользователя
Если ≤ 2.4 млн ₽ → продолжаем расчёт.
Шаг 4 — Расчёт налога
Формула:
налог = (доходы_от_физлиц × 4%) + (доходы_от_юрлиц × 6%)
Шаг 5 — Применение вычета 10 000 ₽
Если вычет ещё не использован полностью (см. ответ из шага 1):
Вычет применяется автоматически — снижает ставку:
- С 4% → 3% (по доходам от физлиц)
- С 6% → 4% (по доходам от юрлиц)
До тех пор, пока не "сгорит" 10 000 ₽ выгоды.
Пример:
Доход от юрлица 200 000 ₽.
Без вычета: 200 000 × 6% = 12 000 ₽
С вычетом: 200 000 × 4% = 8 000 ₽
Выгода от вычета: 12 000 - 8 000 = 4 000 ₽
Остаток вычета: 10 000 - 4 000 = 6 000 ₽
Шаг 6 — Итоговый расчёт
итог_налог = налог - применённый_вычет
Округление: до копеек.
Degraded mode
Если fns.check_self_employed недоступен:
- Продолжай расчёт по input
- В отчёте: "⚠ Статус самозанятого не проверен — расчёт сделан исходя
из предположения что статус активен и лимит не превышен. Перепроверьте
через приложение 'Мой налог' или nalog.gov.ru."
Финальный отчёт
НПД к уплате за {период}: {итог} ₽
Расчёт:
- Доходы от физлиц: {сумма_1} ₽ × 4% (или 3% если применён вычет) = {налог_1} ₽
- Доходы от юрлиц/ИП: {сумма_2} ₽ × 6% (или 4% если применён вычет) = {налог_2} ₽
- Сумма налога до вычета: {налог_1 + налог_2} ₽
- Применён вычет: {применённый_вычет} ₽
- Остаток вычета на будущие периоды: {остаток_вычета} ₽
К уплате: {итог} ₽
⚠ Проверьте:
- Все ли доходы за период учтены?
- Правильно ли определён тип контрагента?
- Все ли чеки выданы через "Мой налог"?
Срок уплаты: до 28 числа след.месяца (через приложение "Мой налог" или ЛК ФНС).
[Verified] Статус самозанятого: {активен/проверен}
[Reference] 422-ФЗ от 27.11.2018, ст.6
Тестовые кейсы
См. tests/test-cases.yaml:
- case-001: доход 100k от юрлица, вычет не использован → 4 000 ₽ (применён вычет)
- case-002: доход 50k от физлица + 200k от юрлица, лимит не превышен
- case-003: превышение лимита 2.4 млн в середине месяца
- case-004: mixed контрагенты, разные ставки
Известные ограничения
- Не учитывает:
- Доходы от нескольких видов деятельности с разными ставками региональных вариаций (если будут)
- Особенности учёта при работе с иностранными контрагентами
Версии
- 1.0.0 (2026-05-26) — initial draft