CLI-калькулятор налога на профессиональный доход (НПД) и сравнение с другими режимами для самозанятых граждан РФ.
Простая консольная утилита для быстрого расчёта налога — без браузера, без онлайн-формы.
- НПД 4% — налог с дохода от физлица
- НПД 6% — налог с дохода от юрлица / ИП
- Бонус 10 000 ₽ — вычитание из ставки до полного использования
- Лимит 2 400 000 ₽ в год — предупреждение при приближении
- Сравнение с УСН 6% (ИП), ПСН, АУСН — какой режим выгоднее при вашем доходе
- Накопление пенсионных взносов — расчёт ИПК и стажа при добровольной уплате
pip install samozanyaty-calcИли из исходников:
git clone https://github.com/capysta2016/samozanyaty-calc-cli.git
cd samozanyaty-calc-cli
pip install -e .$ samozanyaty-calc 50000 --type fizlico
Доход: 50 000 ₽ (от физлица)
Ставка: 4%
Налог: 2 000 ₽
Бонус 10 000 ₽: применён 2 000 ₽
К уплате: 0 ₽
Остаток бонуса: 8 000 ₽$ samozanyaty-calc month --month 2026-05 --fizlico 120000 --uridico 80000
Май 2026:
От физлиц: 120 000 ₽ × 4% = 4 800 ₽
От юрлиц: 80 000 ₽ × 6% = 4 800 ₽
Итого: 9 600 ₽
Бонус применён: 9 600 ₽
К уплате: 0 ₽
Дедлайн: 28 июня 2026$ samozanyaty-calc compare 1500000
Доход за год: 1 500 000 ₽
НПД (самозанятый): 60 000 ₽ ⭐ оптимально
УСН 6% (ИП): 90 000 ₽ + 49 500 ₽ (страховые) = 139 500 ₽
АУСН 8%: 120 000 ₽
Патент (ПСН): варьируется по региону
Экономия НПД vs ИП-УСН: 79 500 ₽/год$ samozanyaty-calc limit --earned 1800000
Заработано в 2026: 1 800 000 ₽
До лимита 2.4 млн: 600 000 ₽
Прогноз исчерпания: октябрь 2026 (при текущем темпе)
Рекомендация: рассмотреть переход на ИП-УСН за 2-3 месяца до лимитаПриложение «Мой налог» от ФНС — обязательное, но в нём нет:
- Сравнения с альтернативными режимами
- Учёта планирования (когда исчерпается лимит)
- Подробного учёта расходов и анализа маржинальности
Эта CLI — для бухгалтеров, фрилансеров и разработчиков которые хотят быстро посчитать налог из терминала или встроить в свои скрипты автоматизации.
from samozanyaty_calc import calculate_tax, compare_regimes
tax = calculate_tax(income=50_000, client_type='fizlico', bonus_remaining=10_000)
print(tax) # TaxResult(income=50000, rate=4, tax=2000, bonus_applied=2000, to_pay=0)
comparison = compare_regimes(annual_income=1_500_000, region='moscow')
for regime in comparison:
print(f"{regime.name}: {regime.total_tax} ₽")Если вам нужно вести учёт клиентов, документы, онлайн-запись — есть полноценный веб-сервис «Помощник Самозанятого»: https://samozanyaty.capystaone.ru/
Доступен в Telegram, ВКонтакте и в браузере. Бесплатно для основных функций.
- Python 3.8+
- Без внешних зависимостей в основном пакете (только
clickдля CLI) - Все ставки и лимиты вынесены в
rates.py— легко обновлять при изменении законодательства - Покрытие тестами 95%+
- Федеральный закон №422-ФЗ — Налог на профессиональный доход (НПД)
- Статья 346.43 НК РФ — Патент (ПСН)
- Глава 26.2 НК РФ — Упрощённая система налогообложения (УСН)
- Федеральный закон №17-ФЗ — АУСН (автоматизированная УСН)
MIT — используйте свободно. Если этот пакет вам помог — поставьте звезду ⭐ и расскажите коллегам-самозанятым.
PR и issues приветствуются! Особенно нужна помощь с:
- Обновлениями ставок при изменении законодательства
- Региональными особенностями ПСН и УСН
- Локализацией для других стран СНГ (если у них есть аналог НПД)
Связанные ресурсы:
- Веб-версия с CRM и документами: https://samozanyaty.capystaone.ru/
- Telegram-бот: @samozanyaty_helper_bot
- VK Mini App: vk.com/app54452493