2019年1月1日起,将劳务报酬、稿酬、特许权使用费等三项所得与工资薪金合并起来计算纳税,并实行专项附加扣除。
对于个人,你可能有劳动报酬所得,需要知道劳动报酬是怎么计税的;
或者工作中,有些项目需要按劳动报酬计税,也需要知道怎么计算。
劳务报酬定义
那么,哪些日常收入属于劳务报酬呢?
劳务报酬所得,是指个人从事设计、装潢、安装、制图、化验、测试、医疗、法律、会计、咨询、讲学、新闻、广播、翻译、审稿、书画、雕刻、影视、录音、录像、演出、表演、广告、展览、技术服务、介绍服务、经纪服务、代办服务以及其他劳务取得的所得。
计算方式
提醒:劳务报酬所得,每次收入不超过四千元的,减除费用八百元;四千元以上的,减除百分之二十的费用,其余额为应纳税所得额。然后适用比例税率,税率为百分之二十。
税率表
对劳务报酬所得一次收入,适用以下税率表:
计算方式理解
假设税前收入为x,应纳税所得额为y,速扣系数指的是按下一个阶梯税率计算时,会多扣除上面阶梯的金额,所以应该回补部分金额。
- 税率适应于应纳税所得额,而不是税前总收入。
- 收入小于等于800部分,不计税。
- 收入大于800且小于等于4000的部分,应纳税所得额为x-800。
- 收入大于等于4000部分,应纳税所得额为0.8x。
- 应纳税所得额小于等于20000,适用于税率20%。
- 应纳税所得额大于20000且小于等于50000,适用于税率30%,速扣系数2000。
- 应纳税所得额大于50000,适用于税率40%,速扣系数7000。
代码
public class IncomeTaxUtils {
/**
* 小数点后保留位数,2位,四舍五入
*/
private static final int DIGIT_NUMBER_AFTER_DOT = 2;
/**
* 劳务报酬所得,每次收入不超过四千元的,减除费用八百元;四千元以上的,减除百分之二十的费用,其余
* 额为应纳税所得额。然后适用比例税率,税率为百分之二十。
*
* |收入(x) |应纳税部分(y) | 阶梯 |税率 | 纳税额 | 速扣系数 |
* -----------------------------------------------------------------------------------------------
* |x<=800 | 0 | 0 | 0 | 0 | 0 |
* |800<x<=4000 | x-800 | y<=20000 | 20% | (x-800)*20% | 0 |
* |4000<x<=20000 | 0.8x | y<=20000 | 20% | 0.8x*20% | 0 |
* |20000<x<=50000 | 0.8x | 20000<y<=50000 | 30% | 0.8x*30% | 2000 |
* |x>50000 | 0.8x | y>50000 | 40% | 0.8x*40% | 7000 |
*
* @param originIncome
* @return
*/
public static double incomeAfterTax(double originIncome) {
//应纳税部分
double taxIncome = 0;
double taxRate = 0;
double quickDeducData = 0;
if (originIncome <= 800) {
return originIncome;
} else if (originIncome > 800 && originIncome <= 4000) {
taxIncome = originIncome - 800;
taxRate = 0.2;
}
if (originIncome > 4000) {
taxIncome = originIncome * 0.8;
}
if (taxIncome <= 20000) {
taxRate = 0.2;
} else if (taxIncome > 20000 && taxIncome <= 50000) {
taxRate = 0.3;
quickDeducData = 2000;
} if (taxIncome > 50000) {
taxRate = 0.4;
quickDeducData = 7000;
}
double incomeAfterTax = originIncome - (taxIncome * taxRate - quickDeducData);
return roundHalfUpValue(incomeAfterTax, DIGIT_NUMBER_AFTER_DOT);
}
private static double roundHalfUpValue(double value, int digitNumberAfterDot) {
BigDecimal bigDecimal = new BigDecimal(value);
return bigDecimal.setScale(digitNumberAfterDot, BigDecimal.ROUND_HALF_UP).doubleValue();
}
public static void main(String[] args) {
double[] array = {799, 800, 2300, 4000, 8000, 20000, 21000, 30000, 50000, 80000, 28947.37, };
for (double arr: array) {
double value = incomeAfterTax(arr);
System.out.println("income:" + arr + " after tax:"+ value);
}
double value = 1.2567;
System.out.println(roundHalfUpValue(value, DIGIT_NUMBER_AFTER_DOT));
}
}
对于个人所得税或其他税收计算其实也是类似的,只需要修改速扣系数和对应税率即可。
当前个人所得税按照年收入来计算,后面会再讲一下个人所得税是怎么算的。