# Tax Compliance Check

> 企业税务合规自查工具。基于《中华人民共和国税法》与《税收征收管理法》，针对增值税、企业所得税、个人所得税、印花税、发票管理及申报缴纳等核心涉税场景，依据可扩展的规则基线对企业输入的税务事实做自动化风险扫描，输出按严重度（高/中/低）排序的合规风险清单、法规依据与整改建议，并给出合规评分。当用户需要对企业做税务健康检查、申报前自查、审计/尽调底稿，或识别虚开发票、纳税调整、代扣代缴等合规风险时使用。

- Skill: `cslawyer1985/tax-compliance-check` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add cslawyer1985/tax-compliance-check`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cslawyer1985/tax-compliance-check/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: cslawyer1985 (https://skillmd.com/u/cslawyer1985)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/cslawyer1985/tax-compliance-check

---


# 税务合规自查工具 (Tax Compliance Self-Check)

## Overview

为企业的财税/合规/内审人员提供一套可复用的"税务健康体检"能力：把企业的经营与税务事实整理成结构化 JSON，由规则引擎逐条扫描主要税种的高频合规风险点，输出**风险清单（按严重度排序）+ 法规依据 + 整改建议 + 合规评分**，并生成可交付的 Excel 报告。

适用场景：月度/年度结账后自查、税务申报前校验、审计/尽调底稿、集团对下属公司的合规巡检、税务师进场前的预检。

## 通用性 (Generality)

本工具是**行业中立、纳税人规模中立**的通用税务合规自查基线，可作为任意行业/类型企业的通用版直接使用：

- **不绑定行业**：规则只描述合规风险逻辑，不含医药、房地产、金融等行业的专属口径（如推广费合规、预售预缴）。这类特殊事项在 `scripts/rules.json` 追加"行业规则包"即可，不影响通用基线。
- **不绑定税率/规模**：规则不硬编码 13% 等特定税率，一般纳税人、小规模纳税人、服务业/贸易/制造等各类企业均可直接跑。小规模纳税人的"异常凭证、进项转出、发票合规、销项 vs 申报销售额差异"等规则同样有效。
- **多主体可比**：对集团下属多家公司分别准备 `facts` JSON 循环调用，评分口径一致，便于横向对比与排名。

> 后续可在此基础上叠加行业专属规则包（如 `tax-compliance-check-pharma`），形成"通用基线 + 行业增强"的分层结构。

## When to use

- 对企业做税务合规健康自检或申报前风险提示
- 识别虚开发票、逾期申报/缴纳、代扣代缴缺失等高风险事项
- 检查企业所得税纳税调整（招待费、广宣费、福利费、研发加计等）是否到位
- 生成可交付的合规自查报告（Excel）或控制台 Markdown 摘要
- 对多主体批量预检（循环调用脚本）

## Core workflow

1. **整理输入 JSON**：参照 `sample_data/sample_input.json`，在 `company` 填企业信息，在 `facts` 下按 `vat / cit / iit / stamp / invoice / filing` 六个分组填入事实。能填多少填多少，缺失字段会被标记为"待确认"而非误报。
2. **（可选）调整规则基线**：`scripts/rules.json` 是数据驱动的规则库。新增/调整规则只需编辑 JSON（condition 类型见下），无需改代码。
3. **运行引擎**：调用 `scripts/run_check.py`，得到 Markdown 摘要 + Excel 报告。
4. **复核风险清单**：优先处置"高"严重度项，逐项落实整改建议并留存证据链；"待确认"项补充数据后复评。
5. **（批量）循环调用**：对多个主体，分别准备 facts JSON 并循环执行，汇总各主体评分。

## Quick start

```bash
# 用自带示例跑通完整流程（输出 Excel 到 output/税务合规自查报告.xlsx）
python scripts/run_check.py \
  --input sample_data/sample_input.json \
  --out output/税务合规自查报告.xlsx

# 仅看控制台 Markdown 摘要，不生成 Excel
python scripts/run_check.py -i sample_data/sample_input.json --no-excel

# 金额以"万元"展示
python scripts/run_check.py -i facts.json -o report.xlsx --unit wan
```

控制台会打印：合规评分、各严重度命中数、风险清单（严重度/编号/类别/风险点/法规/整改）、待确认项清单。

## 规则条件类型（rules.json 的 condition.type）

脚本解释执行以下内置类型，新增规则在 JSON 中声明即可：

| type | 含义 | 触发（=风险命中） |
| --- | --- | --- |
| `flag_true` | 路径值"为真/非空" | 值真 → 命中 |
| `flag_false` | 路径值"为假/为空" | 值假 → 命中 |
| `missing` | 路径缺失或为空 | 缺失/空 → 命中 |
| `gt` / `lt` / `ge` / `le` | 数值与阈值比较 | 满足条件 → 命中 |
| `diff_pct` | 两路径差异百分比 | 差异% > `max_pct` → 命中 |
| `meal_limit` | 业务招待费限额 | 发生额×60% > 营收×5‰ → 命中 |
| `deduct_limit` | 按比例限额（如福利费14%） | 金额 > 基数×`rate` → 命中 |
| `all` / `any` | 子条件组合（含 `conds` 数组） | 全部/任一命中 → 命中 |

路径统一以 `facts.xxx.yyy` 形式书写（见 `sample_data/sample_input.json` 与 `scripts/rules.json`）。

## 合规评分口径

- 每条规则按严重度赋权：高=3、中=2、低=1。
- 评分 = 100 ×（已评估规则赋权之和 − 命中规则赋权之和）÷ 已评估规则赋权之和。
- 数据缺失导致"待确认"的规则不计入评分分母，避免误判。

## 反模式与注意

1. **本工具是辅助自查，不是税务意见**——重大涉税事项、优惠资格、地方性政策以最新法规与主管税务机关为准，建议由税务师复核。
2. **别把"待确认"当"通过"**——缺失字段不会被评通过，补数据后必须复评。
3. **别只盯高风险**——中低风险（如纳税调整不到位）长期累积也会引发补税+滞纳金，应纳入日常内控。
4. **别把规则当穷尽**——基线覆盖高频风险点，不是全量法规；行业特殊事项（如医药/金融/房地产）可自行在 `rules.json` 增补。
5. **输入单位统一为"元"**——`--unit wan` 仅影响 Excel 展示，不改计算口径。

## Resources

### scripts/
- `run_check.py`：核心引擎。读取输入 JSON + rules.json → 扫描风险 → 输出 Markdown 摘要与 Excel 报告；支持 `--input/--out/--rules/--unit/--no-excel`。
- `rules.json`：数据驱动的规则基线（24 条，覆盖六大类）。增删规则仅改此文件。

### references/
- `compliance_baseline.md`：规则基线的深度说明——每条规则的合规逻辑、常见触发场景、整改要点与法规原文索引，供人工复核与规则迭代参考。

### sample_data/
- `sample_input.json`：完整可运行的示例（星海智造有限公司 2025 年度），覆盖命中/通过/待确认三种状态，可直接试跑或作为填表模板。

### 交付
- `output/`：默认 Excel 输出目录（含示例生成的报告）。
- 口径更新至 2025 年；重大税法变动请同步更新 `scripts/rules.json` 与 `references/compliance_baseline.md` 并重跑。

