必填项、价税分离勾稽、税率白名单、备注栏、清单发票、跨期等规则校验,规则表可自定义
invoice-rule-checkSKILL.md 为准。> **本地运行,零网络、免 API Key、数据不出电脑。** > 四项诚实承诺:① 算不出就说算不出,绝不编造数字;② 高危动作强制人工确认;③ 幂等断点,绝不重复副作用;④ 全程留痕可审计。 # 发票合规预检 合规检查最怕两种:一种是漏了——这张票明显有问题却放过去了;一种是瞎报——把正常的票全挑出来,审核人最后直接不看清单。 本包把检查**写成规则**,每条规则说清「看哪列、什么条件、命中的后果」。内置六条通用规则开箱即用;公司特别在意的口径用 CSV 规则表加进去。命中清单按级别排序,每条都带原始行号,你能逐条跳回原表。 ## 输出四件套(每次运行必有) | 文件 | 内容 | |---|---| | `rule_通过.csv` | 未命中任何规则的票 | | `rule_异常表.csv` | 命中行:行号 + 命中规则 + 命中值 + 级别 | | `rule_校验表.csv` | 启用规则清单、各规则命中数、人工复核声明 | | `fin-log.jsonl` | 处理日志(追加) | ## 环境准备 ```bash PY="<python 3.8+ 路径>" # 纯标准库 "$PY" <skill目录>/scripts/rule_check.py <发票明细表> [参数] ``` ## 用法 ### 内置规则跑一遍 ```bash rule_check.py 报销发票明细.xlsx ``` 真实输出: ``` 方案:报销发票明细.xlsx | 数据行=126 | 启用内置规则 6 条 命中:必填缺失 3 | 价税勾稽 1 | 税率异常 2 | 备注为空 5 | 未来日期 0 | 清单无明细 0 --- 异常预览(按级别)--- 行18 [高] 必填缺失:购方名称 为空 行42 [高] 价税勾稽:金额 22600.00 与税额 2938.05 不符(应为 2609.96) ``` ### 加自定义规则 ```bash rule_check.py 报销发票明细.xlsx --rules 我的规则.csv ``` 规则表 CSV(四列,表头写不写都行): ```csv 规则名,列名,运算符,阈值 单价超阈值,金额,>,50000 销方不在白名单,销售方名称,in,白名单.csv ``` 运算符支持 `> >= < <= = != in not in`。`in` 右边的阈值是另一个**列名**(值来自该列),不是字面量——规则表要表达"值在某个名单里",就写名单列名。 ### 只看高风险的 ```bash rule_check.py 报销发票明细.xlsx --level 高 ``` ## 内置六条规则 | 规则 | 看什么 | 级别 | |---|---|---| | 必填缺失 | 发票号码 / 开票日期 / 购方名称 任一为空 | 高 | | 价税勾稽 | 金额 ÷ (1+税率) 与票面税额差 > 0.05 元 | 高 | | 税率异常 | 税率不在白名单(13 / 9 / 6 / 5 / 3 / 1 / 0) | 高 | | 备注为空 | 金额 > 2000 且备注栏为空 | 中 | | 未来日期 | 开票日期晚于运行当天 | 高 | | 清单无明细 | 票面含"详见清单"但表内没有任何明细行 | 中 | **税率白名单不是法律意见**:它只拦明显离谱的税率(比如 47%)。适用税率是否合规要结合业务实质与最新政策,本包不做判断。 ## 安全与边界(拒绝权) - **源文件零改动**:输出进 `_out/`,原表一个字节不动 - **默认预览**:不加 `--execute` 不写盘 - **规则列不存在就停**:不猜近似列名,列出来让你改 - **不替你定合规结论**:命中只是可疑,最终认不认由财务岗位判断 ## 人工复核(必读) - 「价税勾稽」命中时先看是不是税率填错 —— 这是最常见的真实原因 - 「清单无明细」依赖明细表与票表在同一文件,跨文件的明细请先合并(`fin-table-merge`) - 规则表由你维护,规则太多会误报变多;建议精简到能实际执行的 5–10 条 ## 相邻路线转交 | 用户要做的事 | 转交给 | |---|---| | 同一张票报了两次 | `invoice-duplicate-check` | | 发票字段从 PDF 里抽 | `invoice-pdf-extract` | | 按客户税率汇总 | `invoice-book` | ## 可直接复制的说法 ```text 按内置六条规则过一遍这份发票明细:必填、价税勾稽、税率白名单、备注栏、未来日期、清单明细。 命中按级别排序,每条带上原始行号和命中值。公司自己的口径另有一张规则表,一起带上跑。 高风险的先给我,中等的我自己看。 ``` ## 做完怎么算完成 - [ ] 每条命中都能在原表对应行找到 - [ ] 规则表与实际口径一致(列名、阈值) - [ ] 高风险项已逐条看过 - [ ] 校验表里的规则清单与实际执行的一致 --- 本 Skill 采用 BUSL-1.1 许可(源码可见,可自由使用)。 版权所有 © 2026 律令科技(深圳)有限公司(@lexord-technology)。 本技能由律令科技(深圳)有限公司开发,**财友云(caiyouyun.cn)**发布与展示。 允许个人及企业内部免费使用、复制、修改,包括内部生产环境。 未经书面许可,不得将本 Skill 或其修改版作为商业服务对外销售、转售或提供托管服务。 各版本发布之日起 4 年后自动转为 Apache License 2.0。详见随包 `LICENSE.md`。
按发票号码+代码+金额+日期组合查重,拦住重复报销与重复入账
进销项发票台账,按月/客户/税率汇总,导出 CSV
从带文本层的数电票 PDF 抽取号码/日期/金额/税率/购销方
按 日期-销方-金额-号码 规范重命名,输出可追溯清单
按所属期与开票期双口径汇总,红字与原票关联,跨期/未勾选/税率异常单列,输出申报前待确认清单
多银行 CSV/Excel 流水归一化成统一字段与方向标记
流水与账面按金额+日期窗口匹配,输出已勾对/单边与余额调节表
从业务单据表按科目映射批量生成凭证草稿,借贷平衡预检
40+ 指标(偿债/营运/盈利/成长)+ 多期趋势与同业占位
增值税/附加/个税/印花税/所得税预缴,附公式与政策依据
金额大写、含税不含税互算、价税分离、尾差分摊、百分比反算
借贷平衡、科目级次、辅助核算必填、红字方向、异常金额预警
SKILL.md 为准。