个税精算师
脚本管计算,AI 管采集与解读。 税率表、速算扣除、年终奖黑洞、多笔年终奖合并规则全部由 scripts/tax_calc.py 精确执行,避免口算/估算出错——税务数字错一位就是真金白银的损失。
核心原则
- 一切计算走脚本:不要口头估算税额,用
tax_calc.py得出精确值。 - 只做"估算/筹划",不给"避税"建议:本工具用于比较计税方式、提示临界点,不教人钻空子逃税。
- 口径锁定 2024–2027:年终奖单独计税政策延续至 2027-12-31(财政部 税务总局公告 2023 年第 30 号);专项附加扣除用 2023 年提高后的标准(国发〔2023〕13 号)。
什么时候用(场景切面)
| 场景 | 用什么命令 | 用户典型问法 |
|---|---|---|
| 工薪年税额 | comprehensive |
「我一年工资 X,交多少税」 |
| 年终奖单独计税 | bonus |
「年终奖 5 万扣多少」 |
| 年终奖单独 vs 并入 | compare-bonus |
「年终奖单独发还是合算」 |
| 年终奖多发反倒少拿 | blackhole |
「为啥多发 1 元到手变少」 |
| 兼职/劳务报酬 | labor |
「接私活 8000 预扣多少」 |
| 多笔年终奖 | multi-bonus |
「两家公司各发一笔年终奖怎么算」 |
| 7 项扣除标准 | deductions |
「子女教育能扣多少」 |
快速使用
# 综合所得年度税额(输入"应纳税所得额"= 收入-6万-三险一金-专项附加-其他)
python3 scripts/tax_calc.py comprehensive --income 200000
# 年终奖单独计税
python3 scripts/tax_calc.py bonus --amount 50000
# 年终奖单独 vs 并入(工资20万,三险一金+专项附加等合计4万)
python3 scripts/tax_calc.py compare-bonus --bonus 50000 --salary 200000 --special 40000
# 年终奖税率跳档"黑洞"临界区间
python3 scripts/tax_calc.py blackhole
# 劳务报酬(兼职)预扣
python3 scripts/tax_calc.py labor --income 8000
# 多笔年终奖(仅一笔可单独计税,自动选最优)
python3 scripts/tax_calc.py multi-bonus --bonuses 30000,20000 --salary 200000 --special 40000
# 7 项专项附加扣除标准
python3 scripts/tax_calc.py deductions
两个必须讲对的知识点(易错红线)
🔴 多笔年终奖不能分别享受优惠。 税法规定一个纳税年度内,全年一次性奖金单独计税只能用一次。若拿了两笔(如年中换工作两家各发一笔,或公司拆成"年终奖+绩效奖"),只有一笔能单独计税,另一笔必须并入当月工资按月度税率表缴纳。脚本 multi-bonus 会自动枚举"哪笔单独计税最省"。
🔴 年终奖"黑洞"临界点。 在 36000 / 144000 / 300000 / 420000 / 660000 / 960000 这几个奖金数额之上,税率会跳档,导致"多发奖金、到手反而变少",直到越过无效区间上界才恢复。例如奖金 36000 到手 34920,但 36001–38566.67 区间内到手都小于 34920。blackhole 命令直接列出全部 6 个无效区间,可提示用户"跟 HR 谈把年终奖压到临界点内更划算"。
输出建议模板(AI 用)
> 按 2024–2027 口径测算:你的年终奖 X 元,单独计税应纳税 A 元、到手 B 元;并入综合所得应纳税 C 元。建议采用【单独计税/并入】,约省 D 元。
> (提示:本结果为筹划估算,实际以税务机关汇算为准;如有年终奖"黑洞"临界情况一并说明。)
实测验证
单元测试 tests/test_tax_calc.py 11 项全部通过,覆盖综合所得 7 级税率边界、年终奖跳档、黑洞 6 区间已知值(36000→38566.67、144000→160500、…、960000→1120000)、劳务报酬预扣、多笔年终奖合并规则。
端到端 CLI 实测:
compare-bonus --bonus 50000 --salary 200000 --special 40000
→ 单独计税 12270 / 并入 13080 / 差额 810 / 推荐:单独计税
blackhole(前2条)
→ 36000: 到手34920, 无效区间 [36000, 38566.67]
→ 144000: 到手129810, 无效区间 [144000, 160500]
labor --income 8000 → 收入额6400, 预扣1280
multi-bonus --bonuses 30000,20000 → 第1笔单独计税, 其余并入, 总税额10380
已知限制
- 脚本只算"应纳税额",不含社保缴费基数、股权激励、境外所得、税收协定等复杂情形。
- 经营所得(个体户)仅提供预扣思路,未内置 5 级经营税率表的完整汇算。
- 不联网,税率表为写死的 2024–2027 口径;若政策调整需更新
tax_calc.py中的常量。 - 所有结果为估算/筹划参考,不替代税务申报,最终以税务机关为准。
依赖
仅 Python 标准库(argparse / json),无第三方依赖。