工资详情计算器-适用于2022年新税法累计扣税规则

easy-salary (工资计算器)

在线使用

扫一扫小程序体验

适用于2022年新个税计算法的工资计算器,包含基础月薪、年终奖、五险一金、个人所得税计算

0. 使用

1. 安装使用
npm i easy-salary
import Salary from 'easy-salary';

const result = (new Salary({
    salary: 10000,
    // ... 其他配置
})).calculate();
// 传入的配置参数
interface Config {
    salary?: number; // 基础工资
    specialAdditionalDeduction?: number; // 每月专项附加扣除 租房扣除
    yearEndAwardsNumber?: number; // 年终奖月数
    yearEndAwards?: number; // 年终奖 0表示默认使用 年终奖月数
    insuranceAndFundBase?: number; // 五险一金计算基础,为上一年度平均薪资,默认为salary
    startingSalary?: number; // 个税起征点
    insuranceAndFundRate?: IInsuranceAndFund; // 五险一金个人部分
    insuranceAndFundRateOfCompany?: IInsuranceAndFund; // 五险一金公司部分
    extraBonus?: number | number[]; // 每月额外奖金
    housingFundRange?: IHousingFundRange; // 公积金计算上下限
}
interface IInsuranceAndFund {
    pension?: number; // 养老保险
    medicalInsurance?: number; // 医疗保险
    unemploymentInsurance?: number; // 失业保险
    injuryInsurance?: number; // 工伤保险
    maternityInsurance?: number; // 生育保险
    housingFund?: number; // 住房公积金
    supplementaryFund?: number; // 补充住房公积金
}
interface IHousingFundRange {
    min: number;
    max: number;
}

详细配置与返回结果请参考 声明文件在线使用

cdn 引入

<script src="https://cdn.jsdelivr.net/npm/easy-salary/easy-salary.min.js"></script>
<script>
const result = (new window.Salary({
    salary: 10000,
    // ... 其他配置
})).calculate();
</script>
2. 在线使用

点击前往

1. 工资算法

分为基本工资和年终奖

1.1 基本工资

几个概念

累计应纳税所得额 = 累计应税收入 - 累计免税收入 - 累计减除费用 - 累计专项扣除 - 累计专项附加扣除 - 累计依法确定的其他扣除

累计应税收入 = 月薪 * 月数

累计免税收入 = 无 (这部分不清楚,目前当0处理)

累计减除费用 = 起征点 (上海为5000) * 月数

累计专项扣除 = 五险一金 * 月数 = 月薪 * (五险一金比例) * 月数

累计专项附加扣除 = 专项扣除数值 * 月数 (就是个税app里填的 包括租房、房贷、赡养、子女教育等专项附加扣除)

累计依法确定的其他扣除 = 无(这部分不清楚,目前当0处理)

所以

累计应纳税所得额 = (月薪 - 0 - 起征点 - 月薪 * 五险一金比例 - 专项扣除数值 - 0) * 月数

当月个税 = (累计应纳税所得额 * 预扣率 - 速算扣除数)- 累计减免税额【这部分不清楚,目前当0处理】 - 累计已缴税额

税后收入 = 月薪 - 月薪 * 五险一金比例 - 当月个税

预扣率与速算扣除数表

const levels = [
    {value: 36000, rate: 0.03, deduction: 0},
    {value: 144000, rate: 0.1, deduction: 2520},
    {value: 300000, rate: 0.2, deduction: 16920},
    {value: 420000, rate: 0.25, deduction: 31920},
    {value: 660000, rate: 0.3, deduction: 52920},
    {value: 960000, rate: 0.35, deduction: 85920},
    {value: 0, rate: 0.45, deduction: 181920},
];

规则是累计应纳税所得额

不超过36000,预扣率=3%,速算扣除数=0,

不超过144000,预扣率=10%,速算扣除数=2520,

后续依次类推

五险一金比例

上海市:

养老保险单位缴费费率为20%,个人缴费费率为8%;

医疗保险单位缴费比例为10%,个人缴费比例为2%;

工伤保险单位缴费比例为0.2-1.9%,个人不缴费;

生育保险单位缴费比例为1%,个人不缴费;

失业保险单位缴费比例为1%,个人缴费比例为0.5%;

住房公积金单位和个人缴费比例各为7%。

如果有补充公积金的话另算: 一般补充为5%

住房公积金缴存基数范围

上海市:住房公积金和补充住房公积金缴存基数最高不超过34188元, 最低不低于2590

也就是工资超过 34188 按照 34188计算,低于 2590 按 2590计算

1.2 年终奖部分

年终奖部分计税规则

1、发放年终奖的当月工资高于个税起征点时,年终奖扣税方式为:年终奖乘税率-速算扣除数,税率是按年终奖/12作为“应纳税所得额”对应的税率。

2、当月工资低于个税起征点元时,年终奖个人所得税=(年终奖-(个税起征点-月工资))乘税率-速算扣除数,税率是按年终奖-(个税起征点-月工资)除以12作为“应纳税所得额”对应的税率。

年终奖应纳税所得额与税率和速算扣除数关系

表如下

const levels = [
    {value: 3000, rate: 0.03, deduction: 0},
    {value: 12000, rate: 0.1, deduction: 210},
    {value: 25000, rate: 0.2, deduction: 1410},
    {value: 35000, rate: 0.25, deduction: 2660},
    {value: 55000, rate: 0.3, deduction: 4410},
    {value: 80000, rate: 0.35, deduction: 7360},
    {value: 0, rate: 0.45, deduction: 15160},
];

规则是年终奖应纳税所得额

不超过3000,预扣率=3%,速算扣除数=0,

不超过12000,预扣率=10%,速算扣除数=210,

后续依次类推

综上整理出公式

年终奖税前 = 月薪 * 年终奖系数

当 月薪 > 起征点:

年终奖税率、速算扣除数 = 查表(年终奖税前 / 12)

年终奖个人所得税 = 年终奖税前 * 税率 - 速算扣除数

当 月薪 < 起征点

年终奖税率、速算扣除数 = 查表( 年终奖 - ( 个税起征点 - 月薪 ))/ 12)

年终奖个人所得税 = (年终奖税前 - ( 个税起征点 - 月薪 ) ) * 税率 - 速算扣除数

然后年终奖税后收入

年终奖税后收入 = 年终奖税前 - 年终奖个人所得税

1.3 示例

综上,那么可以举个例子

假设张三月工资3万(抬高工资是为了更方便体现累计跳档),年终奖系数为2个月,五险一金是 22.5%,每月专项附加扣除为1500

调用 easy-salary 计算

calculateSalary({
    salary: 30000, // 月薪
    specialAdditionalDeduction: 1500, // 每月专项附加扣除 租房扣除
    yearEndAwardsNumber: 2, // 年终奖月数
    startingSalary: 5000, // 个税起征点
    insuranceAndFundRate: {
        pension: 0.08, // 养老保险 个人缴费费率为8%;
        medicalInsurance: 0.02, // 医疗保险 个人缴费比例为2%;
        unemploymentInsurance: 0.005, // 失业保险 个人缴费比例为0.5%;
        housingFund: 0.07, // 住房公积金 7%
        supplementaryFund: 0.05, // 补充公积金 5%
    },
})

得到结果:

{
    salaryAfterTax: [22747.5, 22747.5, 21750, 21575, 21575, 21575, 21575, 21575, 20900, 19900, 19900, 19900],
    totalSalaryAfterTax: 309930,
    awardsAfterTax: 54210,
    insuranceAndFund: housingFund: 2100,
    medicalInsurance: 600,
    pension: 2400,
    supplementaryFund: 1500,
    totalFund: 6750,
    totalHousingFund: 3600,
    unemploymentInsurance: 150,
    salaryTax: [502.5, 502.5, 1500, 1675, 1675, 1675, 1675, 1675, 2350, 3350, 3350, 3350],
    salaryPreTax: 30000,
    totalSalaryPreTax: 420000,
    awardsPreTax: 60000,
    awardsTax: 5790,
}

其中主要的有

salaryAfterTax 表示12个月税后收入

totalSalaryAfterTax 表示年税后总收入(含年终)

awardsAfterTax 年终奖税后收入

salaryTax 12个月的个税数值

接下来分解一下计算过程

首先上公式:

累计应纳税所得额 = (月薪 - 0 - 起征点 - 月薪 * 五险一金比例 - 专项扣除数值 - 0) * 月数

当月个税 = (累计应纳税所得额 * 预扣率 - 速算扣除数)- 累计减免税额【这部分不清楚,目前当0处理】 - 累计已缴税额

税后收入 = 月薪 - 月薪 * 五险一金比例 - 当月个税

则1月份

累计应纳税所得额 = (30000 - 0 - 5000 - 30000 * 0.225 - 1500 - 0) * 1 = 16750

当月个税 = 16750 * 0.03 - 0 - 0 = 502.5

税后收入 = 30000 - 30000 * 0.225 - 502.5 = 22747.5

2月份

累计应纳税所得额 = (30000 - 0 - 5000 - 30000 * 0.225 - 1500 - 0) * 2 = 33500

当月个税 = 33500 * 0.03 - 0 - 502.5 = 502.5

税后收入 = 30000 - 30000 * 0.225 - 502.5 = 22747.5

2月份

累计应纳税所得额 = (30000 - 0 - 5000 - 30000 * 0.225 - 1500 - 0) * 3 = 50250

当月个税 = 50250 * 0.1 - 2520 - 1005 = 1500 (超过了36000,发生跳档)

税后收入 = 30000 - 30000 * 0.225 - 1500 = 21750

后续依次类推

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
2019实施专项扣除、累计个税及税后工资计算器 2019新个税下累计预扣法如何计算 根据201812月21日最新出炉的“国家税务总局公告2018第61号 ”国家税务总局关于发布《个人所得税扣缴申报管理办法(试行)》的公告第六条 ,扣缴义务人向居民个人支付工资、薪金所得时,应当按照累计预扣法计算预扣税款,并按月办理扣缴申报。 累计预扣的定义 累计预扣法,是指扣缴义务人在一个纳税度内预扣预缴税款时,以纳税人在本单位截至当前月份工资、薪金所得累计收入减除累计免税收入、累计减除费用、累计专项扣除、累计专项附加扣除和累计依法确定的其他扣除后的余额为累计预扣预缴应纳税所得额,计算累计应预扣预缴税额,再减除累计减免税额和累计已预扣预缴税额,其余额为本期应预扣预缴税额。余额为负值时,暂不退税。纳税度终了后余额仍为负值时,由纳税人通过办理综合所得度汇算清缴,税款多退少补 预扣预缴个税下计算公式 本期应预扣预缴税额=(累计预扣预缴应纳税所得额×预扣率-速算扣除数)-累计减免税额-累计已预扣预缴税额 累计预扣预缴应纳税所得额=累计收入-累计免税收入-累计减除费用-累计专项扣除-累计专项附加扣除-累计依法确定的其他扣除 (其中:累计减除费用,按照5000元/月乘以纳税人当截至本月在本单位的任职受雇月份数计算。)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值