Перейти к содержимому
Состояние RSLive
Подключение Проверяем…
Запуск Браузер
Офлайн-копия Проверяем…
Автообновление Не выбрано
Хранилище Проверяем…
Хранилище — оценка браузера для текущего адреса. Удаление офлайн-копии не затрагивает скачанные карты.
Инструкция по Сербии

Диагностика офлайн-копии

Скопируйте этот текст и пришлите его при сообщении об ошибке.

Методика налогового калькулятора

Эта страница — технический контракт компонента TaxCalculator. Она фиксирует смысл линий, допущения расчёта, официальные источники и причины интерфейсных решений. Последняя сверка: 17 августа 2026 года.

Граница модели

Калькулятор нужен для сравнения денежных моделей при одной и той же исходной сумме. Он не заменяет решение Пореской управы, бухгалтерский налоговый баланс, расчёт зарплаты, декларацию фрилансера или индивидуальную налоговую консультацию.

Правовые пороги и базы считаются в RSD. EUR и USD — только отображение той же шкалы по зафиксированному курсу компонента. Изменение валюты отображения не должно менять правовые пороги в RSD.

Архитектура

СлойОтветственность
TaxCalculator.astroЕдинственный публичный компонент. Принимает defaultSeries, адаптирует контекстные поля и метрики статьи, содержит ссылку на эту методику. Формул налоговых режимов здесь нет.
TaxComparisonCalculator.astroСлой сравнения. Добавляет только фриланс-модели, управляет дополнительными сериями, цветом слайдера и выбирает лучший включённый результат. Бизнес- и employee-формулы здесь не дублируются.
EmployeeTaxCalculator.astroСлой сотрудника. Добавляет employeeNet и employeeCost к предпринимательской базе и публикует текущий employee-результат для слоя сравнения.
BusinessTaxCalculator.astroИсточник расчётов для предпринимателя: paušal, knjigaš, knjigaš + lična zarada, PDV, место реализации услуг, расходы, лимиты и текущие business-net.

Слои передают текущие результаты вверх через data-* на общем корне .btc и события btc:business-updated, btc:employee-updated, btc:comparison-updated. Это намеренно: формула каждого предметного режима должна иметь одно место реализации, иначе график и карточка «Остаётся» начинают расходиться.

Поддерживаемые ключи: gross, pausal, books, booksSalary, employeeNet, employeeCost, freelance1, freelance2. Старый ключ pdv временно принимается только для обратной совместимости и нормализуется в booksSalary: PDV не является отдельным налоговым режимом.

Исходная сумма, расходы и PDV

В бизнес-контексте слайдер показывает месячную сумму, которую платит клиент. Без PDV это выручка до расходов и налогов. При применимом PDV сумма считается ценой с уже включённым налогом: компонент выделяет PDV из клиентской цены.

Поле «Расходы / мес» имеет два смысла, которые нельзя смешивать. Для всех предпринимательских линий расходы уменьшают фактический денежный остаток владельца. Только для knjigaš они дополнительно уменьшают расчётную прибыль и тем самым налоговую базу. Paušal от расходов не становится ниже, но денег после одинаковых бизнес-расходов у паушальца тоже остаётся меньше.

Порог 8 млн RSD нельзя применять ко всем поступлениям механически. Статья 33 Закона о PDV определяет учитываемый ukupan promet через статью 28(1) пункты 1–2 и не включает оборот из пункта 3 — операции, совершённые за границей. Для услуг место реализации определяется по статье 12: по общему B2B-правилу это место получателя, а для B2C и специальных видов услуг действуют другие правила.

Поэтому поле «Место реализации услуг» относится именно к моделируемому потоку услуг. При выборе «Вне Сербии · не считать 8M» компонент не начисляет сербский PDV, не учитывает этот поток в ориентире 8 млн и убирает 8M gauge и маркер с графика. Порог 6 млн для paušal остаётся отдельным и продолжает применяться. Переключатель не предназначен для экспорта товаров: экспорт товаров регулируется отдельным освобождением статьи 24 и для порога PDV учитывается иначе.

Даже в режиме «Сербия · считать 8M» линия 8 млн остаётся ориентиром: юридически обязанность определяется по фактическому учитываемому обороту за предыдущие 12 месяцев, а не по текущему месяцу × 12. При смешанном обороте внутри и вне Сербии калькулятор не делит один слайдер на части — такие потоки нужно считать раздельно. Входной PDV по расходам сравнительная модель пока не вычитает.

Paušal: база, дата регистрации и ограничение +10%

В текущей модели пользователь редактирует полную расчётную месячную налоговую базу paušal до коэффициента времени регистрации и до ограничения роста. Это именно база, а не итоговая сумма налога и взносов. После определения применимой базы компонент оценивает ежемесячное обязательство как налог 10% плюс обязательные взносы; для взносов используется действующая в модели минимальная и максимальная база 2026 года.

Коэффициент времени регистрации определяется по точной дате. В календарном году регистрации применяется 0,5. В последующие годы длительность регистрации оценивается на 31 декабря года, предшествующего расчётному: до 12 месяцев — 0,8; свыше 12 до 24 — 0,85; свыше 24 до 36 — 0,9; после 36 месяцев — 1. Поэтому одного года регистрации недостаточно: даты 30 и 31 декабря одного года могут попасть в разные интервалы.

Если менее чем за 18 месяцев до новой регистрации предприниматель уже был зарегистрирован для ведения предпринимательской деятельности, пользователь выбирает «Повторная <18 мес»; коэффициенты 0,5/0,8/0,85/0,9 в этой модели не применяются и используется 1.

Ограничение роста 2026–2027 годов применяется к установленной налоговой базе предыдущего года: текущая установленная база по общему правилу не должна быть выше неё более чем на 10%. Поэтому калькулятор просит поле «База за предыдущий год» из налогового решения. Если это поле пустое, компонент не пытается восстановить лимит из сегодняшней полной базы и прямо сообщает, что +10% не применён.

Ограничение +10% не привязано к году первоначальной регистрации. Оно может ограничить результат и для предпринимателя, зарегистрированного до 2024 года. В интерфейсе есть отдельный режим исключения для изменения кода деятельности, муниципалитета и/или места регистрации — случаев, для которых общее ограничение не применяется.

Последовательность 50% → 55% → 60,5% → 66,55%… остаётся полезной иллюстрацией только при специальных предпосылках: полная расчётная база условно стабильна, а известная установленная база первого года действительно равна 50% этой сопоставимой величины. Это не нормативная шкала скидок и больше не восстанавливается автоматически из одного года регистрации.

Knjigaš без lična zarada

Если к клиентской сумме применяется сербский PDV, он сначала выделяется из цены; затем вычитаются введённые признанные расходы. Если место реализации услуг находится вне Сербии в выбранной модели, PDV из клиентской суммы не выделяется. Налог на доход от самостоятельной деятельности считается по ставке 10% с расчётной налогооблагаемой прибыли, а не с валового оборота.

Для предпринимателя без личной зарплаты база обязательных взносов связана с oporeziva dobit. Уплаченные личные обязательные взносы признаются расходом, поэтому прибыль и взносы рассчитываются согласованно. Для 2026 года используются минимальная месячная база 51 297 RSD, максимальная месячная база 732 820 RSD и максимальная годовая база 8 793 840 RSD.

Knjigaš + lična zarada

Пользователь вводит bruto личной зарплаты. Взносы считаются с базы личной зарплаты в пределах действующих минимума и максимума; налог на зарплату — 10% с части bruto сверх необлагаемой суммы. Личная зарплата и связанные обязательства отражаются в книгах, а оставшаяся налогооблагаемая прибыль облагается по ставке 10%.

Выбор lična zarada — годовой режим, а не переключатель «на этот месяц». Для действующего предпринимателя уведомление подаётся до 15 декабря для применения с 1 января следующего года; новый предприниматель выбирает режим при регистрации.

Годовой налог на доход граждан

Компонент показывает оценку этого налога только там, где соответствующий доход может входить в годовую базу. Для 2026 года окончательный порог нельзя знать заранее: он зависит от средней годовой зарплаты за 2026 год. Пока используется последний опубликованный ориентир, и это должно оставаться явно обозначенной оценкой. Другие личные доходы и иждивенцы не моделируются.

Фриланс и сотрудник

Фриланс-модели считаются поквартально и переводятся в среднемесячный net для общей шкалы. Отдельный переключатель медицинского страхования показывается только когда включена хотя бы одна фриланс-серия.

Для сотрудника две разные линии имеют разный смысл: employeeNet — сколько получает сотрудник, employeeCost — полная стоимость для работодателя (bruto 2). Они имеют один цвет и различаются сплошной/пунктирной линией, чтобы читаться как две стороны одной зарплатной модели.

Почему интерфейс устроен так

  • График находится выше параметров и карточек: основной сценарий — быстро увидеть переломы и сравнение режимов, а потом уточнять ввод.
  • Главный ввод — один слайдер: ранние версии перегружали верх формы расходами, кодом деятельности и отдельными PDV-переключателями.
  • Дополнительные серии скрыты под «+»: базовый контекст статьи остаётся компактным, но сотрудник и фриланс не теряются.
  • Включённая дополнительная серия остаётся в легенде после сворачивания: пользователь не теряет понимание того, что сейчас нарисовано.
  • Цвет слайдера следует лучшей включённой самостоятельной модели: во время drag цвет удерживается, чтобы не мигать на пересечениях линий.
  • Gauges 6M/8M встроены в карточку режима: отдельные progress bar занимали слишком много места. На мобильных gauges унесены в правый верхний угол карточки.
  • Paušal редактируется прямо в карточке: в режиме редактирования карточка явно подписана «Полная база / мес», а её обычное состояние показывает оценочное ежемесячное обязательство.
  • Для +10% нужен отдельный прошлогодний ввод: без базы предыдущего решения точный statutory cap восстановить нельзя; калькулятор не подменяет недостающий факт эвристикой.
  • PDV — поле, а не линия: статус PDV ортогонален способу налогообложения knjigaš.
  • Место реализации отделено от ставки PDV: сначала определяется, относится ли поток услуг к сербскому PDV и порогу 8M, затем — ставка для операций в Сербии. Это не сводится к стране банковского перевода или клиента.
  • Поля показываются контекстно: четыре параметра paušal показываются только для paušal, личная зарплата — только для booksSalary, место реализации и PDV — только для книгаша, расходы — для любой предпринимательской линии.
  • На мобильном поля остаются по два в ряд: двухколоночная сетка сохраняет компактность калькулятора и уменьшает вертикальную прокрутку.

История решений

Дата / PRЧто закреплено
13.08.2026 · #45Первая интерактивная бизнес-модель: лимиты 6M/8M, расходы, PDV и ввод paušal; knjigaš сразу был обозначен как требующий дальнейшего уточнения.
13.08 · #46–49Убраны лишние вводы, график перенесён вверх, progress bar заменены gauges, добавлена оценка годового налога на высокий доход.
14.08 · #58–65Сокращены подписи, стабилизирован цвет слайдера, добавлены настраиваемые серии, фриланс-контекст и единый публичный TaxCalculator; доведена мобильная компоновка.
15.08 · #67, первая итерацияИсправлен knjigaš, добавлены lična zarada, расходы, min/max базы, PDV отделён от режима. Внутренние слои получили предметные имена business → employee → comparison.
15.08 · #67, внешнее ревьюУбрана эвристика 0.5 × 1.1^N: +10% теперь требует установленную базу прошлого года. Год регистрации заменён точной датой. Формулы business/employee удалены из слоя comparison и оставлены в одном source of truth.
17.08 · текущая итерацияПорог 8M перестал считаться от любого оборота: добавлено место реализации услуг. Поток услуг с местом реализации вне Сербии не получает сербский PDV и не показывает 8M как применимый порог; 6M paušal остаётся отдельным.

Контрольные сценарии перед изменением

  1. Регистрация в расчётном году: применяется коэффициент 0,5.
  2. Для 2026 года регистрация 31.12.2024 попадает в интервал до 12 месяцев на 31.12.2025, а 30.12.2024 — уже в следующий интервал.
  3. Повторная регистрация менее чем через 18 месяцев: коэффициент времени регистрации равен 1.
  4. При известной базе предыдущего года cap 2026–2027 ограничивает текущую базу значением previous × 1.1.
  5. Без базы предыдущего решения +10% не угадывается и интерфейс явно предупреждает об этом.
  6. При выбранном исключении изменения кода/муниципалитета/места cap +10% не применяется.
  7. Расходы уменьшают денежный остаток paušal и одновременно уменьшают налоговую прибыль knjigaš.
  8. Knjigaš с высокой выручкой: взносы перестают расти после максимальной базы.
  9. booksSalary реагирует на изменение bruto личной зарплаты.
  10. Результат BusinessTaxCalculator и выбранная business-линия в TaxComparisonCalculator совпадают, потому что comparison читает опубликованный net, а не пересчитывает формулу.
  11. Employee net в общем сравнении совпадает с результатом EmployeeTaxCalculator.
  12. PDV не появляется как самостоятельная серия и не удваивает налог в клиентской цене.
  13. Для услуг с местом реализации вне Сербии effective PDV равен 0, поле ставки отключено, 8M gauge и графический маркер скрыты, а линия 6M остаётся.
  14. После возврата места реализации в Сербию поле ставки, 8M gauge и маркер восстанавливаются, а режим Auto снова применяет 20% после модельного порога.
  15. При выключении предпринимательских серий исчезают их поля и gauges.
  16. Дополнительные серии корректно раскрываются через «+», а включённые не исчезают после сворачивания.
  17. На мобильном gauges не перекрывают значение режима, а нижние параметры остаются по два в строке.

Основные официальные источники