导读:本文是“数据拾光者”专栏的第九十四篇文章,这个系列将介绍在广告行业中自然语言处理和推荐系统实践。本篇主要介绍使用当前主流的AI编程助手Cursor来实现零代码开发一个微信小程序,实现计算交个人养老金能帮我们少交多少税。
欢迎转载,转载请注明出处以及链接,更多关于自然语言处理、推荐系统优质内容请关注如下频道。
知乎专栏:数据拾光者
公众号:数据拾光者

f3c577d1d51d1c2d749128f07af6a791.png

01 背景介绍

上一篇介绍了AI编程助手cursor,这篇从实用性的角度,利用cursor帮我们开发一款微信小程序。刚好看到了个人养老金最主要的功能是帮助我们抵扣个税,那么就开发一款计算交个人养老金能帮我们少交多少税的微信小程序吧。输入包括三部分,第一部分是年度工资收入,第二部分是个人养老金缴费,第三部分是专项附加扣除;输出也包括三部分,第一部分是不含养老金抵扣的应纳税额,第二部分是含养老金抵扣的应纳税额,第三部分是通过交个人养老金可以少交的税额。微信小程序的成品大概就是下面这样的:

f478eb088116a296eb49dad201f9d1f5.jpeg

02 计算扣税逻辑

2.1 梳理扣税逻辑

通过使用kimi来提问:

如果我一年的工资是50W,具体交税是怎么交的? 请详细介绍算法

kimi回答:

根据2024年的个人所得税税率表和相关政策,如果您的年工资为50万元,以下是具体的纳税计算方法:
1. **起征点和基本扣除**:个人所得税起征点为每月5000元,即年度60000元(5000元*12个月)。
2. **专项附加扣除**:包括子女教育、继续教育、大病医疗、住房贷款利息、住房租金和赡养老人等六项专项附加扣除。如果有对应专项则扣除。关于专项则扣除在2.3小节有详细介绍。
3. **计算应纳税所得额**:应纳税所得额 = 年度收入额 - 准予扣除额(基本扣除费用+专项扣除+专项附加扣除+依法确定的其他扣除)。
4. **累计预扣预缴应纳税所得额**:累计预扣预缴应纳税所得额 = 累计收入 - 累计免税收入 - 累计减除费用 - 累计专项扣除 - 累计专项附加扣除 - 累计依法确定的其他扣除。
5. **税率和速算扣除数**:根据累计预扣预缴应纳税所得额,对照个人所得税预扣率表确定适用的税率和速算扣除数。应纳税所得额以及对应的税率在2.2节介绍,速算扣除数在2.4节介绍。
6. **计算应纳税额**:应纳税额 = 应纳税所得额 × 适用税率 - 速算扣除数。
 
下面通过一个例子说明具体计算步骤:
- 假如年收入为500000元。
- 基本扣除费用为60000元。
- 假设没有其他专项扣除、专项附加扣除和依法确定的其他扣除,那么应纳税所得额 = 500000 - 60000 = 440000元。
- 根据累计预扣预缴应纳税所得额,对照税率表,440000元处于超过420000元至660000元的部分,适用的税率为25%,速算扣除数为31920元(各范围应纳税额对应的税率及速算扣除数表在2.4节有介绍)。
- 因此,应纳税额 = 440000 × 25% - 31920 = 110000 - 31920 = 78080元。

这里发现kimi在算数这块存在一个小问题,“440000元处于超过420000元至660000元的部分”这里会出现很明显的错误,kimi第一次会说“440000元处于超过300000元至420000元的部分”(不知道这是什么原因,有点睁眼说瞎话的意思)。

2.2 个人所得税税率表

下面是2024年累计预扣预缴应纳税所得额对照税率表:

64fc2713e2f040b1a7816e35a8da7438.jpeg

注1:本表所称全年应纳税所得额是指依照本法第六条的规定,居民个人取得综合所得以每一纳税年度收入额减除费用六万元以及专项扣除、专项附加扣除和依法确定的其他扣除后的余额。

注2:非居民个人取得工资、薪金所得,劳务报酬所得,稿酬所得和特许权使用费所得,依照本表按月换算后计算应纳税额。

2.3 专项附加扣除

专项附加扣除是中国个人所得税法中的一项重要内容,它允许纳税人在计算应纳税所得额时,从收入中扣除一部分费用,以减轻纳税人的税负。以下是专项附加扣除的具体计算方法:

  • 1. **子女教育专项附加扣除**:每个子女每月可以抵扣一定金额,用于学前教育和学历教育的相关支出。根据最新的政策,每个子女每月的扣除标准提高至2000元。

  • 2. **继续教育专项附加扣除**:学历教育期间按照每年4800元(每月400元)定额扣除;职业资格继续教育、专业技术人员职业资格继续教育,在取得相关证书的当年,按照3600元定额扣除。

  • 3. **大病医疗专项附加扣除**:个人负担超过15000元的医药费用支出部分,可以在80000元限额内据实扣除。

  • 4. **住房贷款利息或住房租金专项附加扣除**:住房贷款利息每月可扣除1000元;住房租金根据城市的不同,扣除金额有三个档次,分别为800元、1000元、1200元。

  • 5. **赡养老人专项附加扣除**:赡养60岁(含)以上父母以及其他法定赡养人的赡养支出,独生子女每月可享受2000元的定额扣除;非独生子女则由其与兄弟姐妹分摊每月2000元的扣除额度,每人分摊的额度不能超过每月1000元。

  • 6. **3岁以下婴幼儿照护专项附加扣除**:根据最新的政策,3岁以下婴幼儿照护的专项附加扣除标准从每个子女每月1000元提高至每月2000元。

专项附加扣除的计算公式为:

应纳税所得额 = 收入工资 - 5000起征点 - 三险一金 - 专项附加扣除 - 依法的其他相关扣除

在实际操作中,纳税人需要根据个人情况,将符合条件的专项附加扣除金额从收入中扣除,然后根据剩余的应纳税所得额来计算应缴纳的个人所得税。纳税人可以通过“个人所得税”APP或纸质表格向单位财务部门提交专项附加扣除信息,单位会在每月工资发放时按照规定标准进行预扣预缴,从而让员工及时享受到税收优惠。

2.4 速算扣除数

速算扣除数是个人所得税计算中用于简化超额累进税率计算的一个数值。其目的是为了在采用超额累进税率制度时,简化计算过程,避免逐级累进计算的复杂性。速算扣除数的计算方法如下:

1. **确定税率和应纳税所得额**:首先,根据个人所得税税率表确定应纳税所得额所属的税率档次。

2. **计算速算扣除数**:速算扣除数的计算公式可以表示为:

本级速算扣除额 = 上一级最高应纳税所得额*(本级税率 - 上一级税率) + 上一级速算扣除数

这个公式的含义是,速算扣除数是根据相邻两个税率档次的差额以及上一个档次的速算扣除数来计算的。例如,如果某一个税率档次的应纳税所得额超过了上一个档次的最高应纳税所得额,那么这个档次的速算扣除数就是基于上一个档次的最高应纳税所得额、本档次与上档次的税率差,以及上档次的速算扣除数来计算的。

3. **应用速算扣除数**:在确定了速算扣除数之后,就可以使用以下公式来计算应纳税额:

应纳税额 = 应纳税所得额*适用税率 - 速算扣除数

速算扣除数的存在使得个人所得税的计算变得更加简便快捷,不需要对每个收入档次分别计算税额,而是可以直接应用速算扣除数来得到最终的应纳税额。

举个简单的例子来说明就很好理解了,如果应纳税所得额是440000,那么正常的计算方法是:

36000*0.03+(144000-36000)*0.1+(300000-144000)*0.2+(420000-300000)*0.25+(440000-420000)*0.3=79080

因为440000对应的税率0.3之前的各项计算其实是一个固定的值,可以提前算好,就不用每项税率都计算了。这个提前算好的值就是一个速算扣除数。下面是不同应纳税额范围对应的税率以及速算扣除数表:

587ce17cf6c64bb30033f3da9c86b128.jpeg

如果用速算扣除数来计算,那么计算的方法就是:440000*0.3-52920=79080

03 微信小程序相关准备

微信小程序注册地址:https://mp.weixin.qq.com/cgi-bin/wx?token=&lang=zh_CN

134f69fa3d538a4d25c47acca49f7fe5.jpeg

开发微信小程序需要电脑端下载对应的工具,对应的下载地址为:

https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html

根据需要下载对应的版本即可:

5bfb41b686eaf9e517de07c478056531.jpeg

04 开发个税扣除微信小程序

4.1 创建微信小程序项目

bd217c0a7ca3f62229ac01966622e476.jpeg

4.2 使用cursor开发微信小程序代码

打开上一步创建微信小程序项目目录作为cursor项目目录,然后打开composer窗口,输入:

我想开发一款微信小程序,输入有三部分内容,第一部分是用户输入一年的工资薪酬,第二部分是买入的个人养老金(最大金额是120000),第三部分是专项附加扣除。输出包含三部分,第一部分是不包含个人养老金交费抵扣的应纳税额,第二部分是包含个人养老金交费抵扣的应纳税额,第三部分是通过交个人养老金少交税额。

f31593ebdceba91cf02e12ef110905ba.jpeg

通过上面简单的文本描述cursor就可以帮我们开发出一个完整的微信小程序。不用写一行代码,实际上这个里面的代码我也根本不会写。在cursor生成代码之后,然后可以点击微信开发者工具上面的编译实时查看编写的小程序是否正常执行。中间可能需要通过文本修复一些问题,但整体是零代码编程。下面是初步的开发结果:

4e15de7e9063d16c971577c41ac7a5d4.png

界面还是很丑,但是功能性的代码cursor已经可以做得很好了。如果在调试过程中发现错误,也可以在cursor里用语言告诉它,让它自己修复代码。

4.3 微信小程序测试

整体功能开发完成之后需要大概测试一下计算逻辑是否正确。我们通过几个例子进行证明:

  • 测试1:工资收入100W,个人养老金交12000,专项扣除为10000;

  • 测试2:工资收入100W,个人养老金交12000,专项扣除为10000;

  • 测试3:工资收入50W,个人养老金交12000,专项扣除为0;

  • 测试4:工资收入6W,个人养老金交12000,专项扣除为0;

c29ab3105e7bc84b436083cdbfb9fbea.jpeg

使用kimi提问计算测试1:

c26f36fdd4decba7106fcc41ef709fd3.jpeg

使用kimi提问计算测试3:

a1609423969b748f31a5641c101b2ec8.jpeg

开发的微信小程序的计算逻辑是没问题的。

4.4 微信小程序发布

微信小程序开发好了,不知道怎么发布,还是找cursor:

ed30d01b26f31581a9009eb50eaa56db.jpeg

最新最全的文章请关注我的微信公众号或者知乎专栏:数据拾光者。

码字不易,欢迎小伙伴们关注和分享。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐