常见税种按简易口径算应纳税额,税率越界直接拒,计税依据缺失或 0/负标不可计算
tax-amount-calcSKILL.md 为准。> **本地运行,零网络、免 API Key、数据不出电脑。** > 四项诚实承诺:① 算不出就说算不出,绝不编造数字;② 高危动作强制人工确认;③ 幂等断点,绝不重复副作用;④ 全程留痕可审计。 # 税费金额计算 「这个月要交多少税」是每个财务月结必答的问题。但**任何一步走捷径都会交出假答案**: 税率写错一位、计税依据填了含税金额、增值税的计税依据填成了含税收入、 附加税拿营业收入去乘——数字看着都对,报出去就是错的。 本包把这几件事写死在代码里:**税率不在 0~100 直接拒,计税依据缺失 / 为 0 / 为负标「不可计算」**, 并且每一屏都声明「**这是简化口径估算,不等于法定应纳税额**」。 ## 能算哪些税 | 税种 | 计税依据 | 口径 | |---|---|---| | 增值税 | 不含税销售额(或销项税额) | 计税依据 × 税率;有进项税额列时按 销项 − 进项;标「含税」时先价税分离 | | 企业所得税 | 应纳税所得额 | 计税依据 × 税率(如 25% / 小微 5% / 高新 15%) | | 印花税 | 合同 / 凭证金额 | 计税依据 × 税率(如购销合同 0.03%) | | 城市维护建设税 | 实缴增值税额 | × 7%(市区)/ 5%(县城)/ 1%(其他) | | 教育费附加 | 实缴增值税额 | × 3% | | 地方教育附加 | 实缴增值税额 | × 2% | | 房产税 | 房产余值 / 租金收入 | × 税率 | | 城镇土地使用税 | 占用土地面积 ㎡ | × 单位税额(元/㎡) | > 附加类税种的计税依据是**实缴增值税**,不是营业收入。填错是本包最容易拦下的错。 ## 输入 / 输出 输入:1 个税种表(`.xlsx` / `.csv`),首行表头。 | 列 | 必需 | 别名 | |---|---|---| | 税种 | 必需 | 税种 / 税费种类 / 税目 / 税种名称 | | 计税依据 | 必需 | 计税依据 / 计税金额 / 应税金额 / 应纳税所得额 / 金额 | | 税率 | 必需 | 税率 / 适用税率 / 征收率(**写百分数数值,13 = 13%**) | | 计税依据类型 | 可选 | 计税依据类型 / 含税标志 / 金额类型 | | 进项税额 | 可选 | 进项税额 / 可抵扣进项(只有增值税有意义) | 输出(进 `_out/`,源文件一个字节都不动): | 文件 | 内容 | |---|---| | `ta_主表.csv` | 逐税种:计税依据 / 类型 / 税率 / 适用口径 / 应纳税额 / 备注 | | `ta_异常表.csv` | 不可计算项(计税依据缺失 / 为 0 / 为负 / 税种认不出),带风险等级 | | `ta_校验表.csv` | **简化口径声明**、计税依据合计、应纳税额合计、税率校验规则 | | `ta_汇总.csv` | 按税种汇总的应纳税额 | | `fin-log.jsonl` | 处理日志(追加) | ## 用法 ```bash PY="<python 3.8+ 路径>" # 纯标准库,无需 pip install "$PY" <skill目录>/scripts/tax_amount.py 税费表.xlsx --execute ``` 只算某一税种: ```bash "$PY" tax_amount.py 税费表.xlsx --only 增值税 --execute ``` **默认不写盘**——不加 `--execute` 只打印预览,确认无误再落盘。 ## 真实输出 正常(6 个税种): ``` 方案:ta_税费表.xlsx(6 行;税种列「税种」,计税依据「计税依据」,税率「税率」) 口径:本结果为简化口径估算,不等于法定应纳税额;实际申报以主管税务机关核定与申报结果为准 --- 应纳税额(共 6 行)--- 序号 税种 计税依据 税率% 应纳税额 1 增值税 1000000.00 13.00 117000.00 2 企业所得税 800000.00 25.00 200000.00 3 印花税 2000000.00 0.03 600.00 4 城市维护建设税 30000.00 7.00 2100.00 5 教育费附加 30000.00 3.00 900.00 6 地方教育附加 30000.00 2.00 600.00 --- 异常表:本次未发现不可计算项(0 条)--- 已生成按税种汇总:ta_汇总.csv ``` 计税依据为 0 / 负 / 缺失、税种名认不出: ``` --- 应纳税额(共 2 行)--- 1 增值税 500000.00 13.00 65000.00 2 印花税 300000.00 0.03 90.00 --- 异常表(不可计算 4 项)--- [第2行 增值税] 计税依据为 0,应纳税额无意义(不输出 0 元假象) [第3行 企业所得税] 计税依据为负(-800000.00),通常是冲销或方向反了,不可计算 [第4行 企业所得税] 计税依据缺失或不是数字,不可计算 [第6行 附加税] 税种名认不出,无法套用任何税率表 ``` 拒绝路径: ``` $ tax_amount.py ta_坏表_税率异常.xlsx --execute 【算不出】第 1 行「增值税」的税率 130.0000 不在合理区间(0 ~ 100) 建议:税率写成百分数数值即可(13 = 13%);数字写错会被直接拒 本包不会给一个看似合理的替代数字 —— 财税场景算错比不做更危险。 $ tax_amount.py ta_坏表_税种缺列.xlsx --execute 【算不出】「ta_坏表_税种缺列.xlsx」里找不到税种列 建议:需要「税种」列;可用别名:税种、税费种类、税目、税种名称 ``` ## 拒绝权(什么情况下不给数) | 情况 | 处理 | |---|---| | 税率缺失或不是数字 | **拒绝(RC=2)**——不给默认税率 | | 税率 < 0 或 > 100 | **拒绝(RC=2)**,报出具体行号与数值 | | 缺税种列 / 缺计税依据列 / 缺税率列 | 拒绝(RC=2),列出别名 | | 税种名认不出(如「附加税」这种笼统叫法) | 该行进异常表(高),不套任何税率 | | 计税依据缺失 / 不是数字 | 该行进异常表(高),标「不可计算」 | | 计税依据为 0 | 该行进异常表(中),标「不可计算」,不输出 0.00 | | 计税依据为负 | 该行进异常表(高),标「不可计算」 | | 进项税额为负 | 该行进异常表(高),标「不可计算」 | | 算出的应纳税额为负 | 该行进异常表(高),标「不可计算」 | ## 关键设计(容易踩的坑) 1. **简化口径声明是硬声明**,每次运行都打印在方案行后面,也写进校验表。 本包算的是「计税依据 × 税率」,**没有**考虑:税收优惠备案、小微与高新优惠判定、 核定征收、跨期调整、留抵退税、出口退税、未按次申报的历史欠税、税会差异…… 这些法定因素一进来,本包的结果就不是法定应纳税额。 2. **税率写百分数数值**:表里填 `13` 表示 13%,填 `0.03` 会被当成 3% 而算错。 本包对「不在 0~100 的数字」一律拒绝,就是为了拦住这种手滑。 3. **附加税不是拿收入乘**。城建税 / 教育费附加 / 地方教育附加的计税依据是**实缴增值税**; 表里的计税依据填的是收入,本包照算,但「适用口径」列会写明这条口径,请务必核对。 4. **增值税的「含税」标志**。标了「含税」的计税依据会先做 `含税 ÷ (1+税率) × 税率`; 不标就按不含税口径乘。填错方向会让增值税差出十几个点。 5. **算不出的行不动主表**。异常行不会被「补一个 0」凑进主表——异常的还是异常, 异常表行数与主表行数加起来可能小于输入行数,这是正常的。 ## 人工复核(必读) - 本包结果**不是法定应纳税额**,不能拿去直接申报 - 小微、高新、初创科技型企业等优惠税率需要资格判定,本包只做乘法,不判资格 - 房产税、土地使用税涉及税源台账(原值、面积、地段等级),本包只按表里的数算 - 印花税税目与税率对应关系复杂(同一份合同可能涉及多个税目),本包不做税目自动匹配 - 附加税依赖「实缴增值税」的准确取数,若当月有免抵退税或预缴,结果会偏 - 实际申报口径以主管税务机关核定与申报结果为准 ## 相邻路线转交 | 用户要做的事 | 转交给 | |---|---| | 增值税进项抵扣明细 / 销项核对 | `vat-monthly-recon` | | 增值税申报表填写 | `tax-form-fill` | | 企业所得税汇算清缴 | `tax-form-fill` | | 个税(工资薪金)计算 | `payroll-calc` | | 三表核对(工资 / 社保 / 个税) | `payroll-three-check` | ## 可直接复制的说法 ```text 把这张税种表跑一遍,算各税种的应纳税额。 先声明:这是简化口径估算,不等于法定应纳税额,实际申报以税局核定为准。 税率缺失或者不在 0 到 100 之间的,直接拒绝执行,不要用默认税率凑。 计税依据缺失、为 0 或者为负的,标「不可计算」进异常表,不要给我 0 元或者替代值。 城建税教育费附加这些附加税,计税依据是实缴增值税,不是营业收入,我自己核对。 ``` ## 做完怎么算完成 - [ ] 每个税种的「适用口径」列已逐条确认(尤其附加税是否用了「实缴增值税」) - [ ] 增值税的计税依据是不含税口径还是含税口径,已确认 - [ ] 所有税率都是 0~100 的百分数数值,无一位小数错位 - [ ] 异常表里的「不可计算」项已逐条追到源头(填错 / 漏填 / 冲销行) - [ ] 明白这个结果不能直接拿去申报,只是量级参考 --- 本 Skill 采用 BUSL-1.1 许可(源码可见,可自由使用)。 版权所有 © 2026 律令科技(深圳)有限公司(@lexord-technology)。 本技能由律令科技(深圳)有限公司开发,**财友云(caiyouyun.cn)**发布与展示。 允许个人及企业内部免费使用、复制、修改,包括内部生产环境。 未经书面许可,不得将本 Skill 或其修改版作为商业服务对外销售、转售或提供托管服务。 各版本发布之日起 4 年后自动转为 Apache License 2.0。详见随包 `LICENSE.md`。
金额大写、含税不含税互算、价税分离、尾差分摊、百分比反算
五险一金 + 个税累计预扣预缴 + 实发,支持多地参数表
直线/双倍余额/年数总和/工作量法,生成折旧明细表
期间生成、周旬季年切换、工作日调整、账期与自然日换算
按年度-凭证号-附件组织,生成目录清单与完整性校验
按人拆成独立文件,可加密打包,不留明文
无形资产与长期待摊费用摊销明细表
新增/折旧/处置/盘点全生命周期台账
等额本息/等额本金/气球贷,含实际利率与 IRR 校验
多币种折算、期末汇兑损益计算,汇率走内置表或导入
合并查询所有财税技能的运行日志,按时间/技能/级别过滤
银行卡/身份证/税号/账套口令扫描与脱敏报告
SKILL.md 为准。