安全

审计追踪

试用

上市公司审计追踪与风险检测技能包,自动化分析往来账龄、标记异常交易、检测重复付款、监控大额异常预警。适用于财务审计、内控合规、风险预警、税务风险检测等场景。当用户提到审计追踪、账龄分析、异常交易检测、重复付款、大额预警、风险检测、内控审计、应收账款、应付账款、银行对账、费用审计、税务风险等关键词时触发。

它能做什么

上市公司审计追踪与风险检测技能包,自动化分析往来账龄、标记异常交易、检测重复付款、监控大额异常预警。适用于财务审计、内控合规、风险预警、税务风险检测等场景。当用户提到审计追踪、账龄分析、异常交易检测、重复付款、大额预警、风险检测、内控审计、应收账款、应付账款、银行对账、费用审计、税务风险等关键词时触发。

技能文档

财务审计追踪技能包

概述

本技能包为上市公司提供全面的财务审计追踪与风险检测能力,通过自动化分析帮助审计人员高效识别异常交易、账龄问题、重复付款等风险点,提升审计效率与准确性。

核心检测流程

模块一:应收账款账龄分析

1.1 账龄区间划分标准

账龄区间天数范围风险等级备注
即时/当前0-30天正常在信用期内
短期31-60天中低轻度关注
中期61-90天需要催收跟进
长期91-180天存在逾期风险
超长期181-365天很高坏账可能性大
长期挂账1年以上极高需专项审计

1.2 坏账准备计提比例(企业会计政策参考)

坏账计提比例 = 
  1年内:     0-5%
  1-2年:     10-30%
  2-3年:     30-50%
  3年以上:   50-100%

账龄分析表生成公式

期末坏账准备 = Σ(各账龄区间余额 × 对应计提比例)

1.3 逾期客户预警清单生成

触发条件

  • 单笔应收款逾期超过30天
  • 同一客户逾期总额超过信用额度的50%
  • 逾期金额占总应收账款10%以上

输出格式

逾期预警清单:
| 客户名称 | 逾期金额 | 账龄 | 信用额度 | 占用比例 | 风险等级 |
|---------|---------|------|---------|---------|---------|
| XXX公司 | ¥500,000 | 45天 | ¥800,000 | 62.5% | 🔴高 |

模块二:应付账款账龄分析

2.1 供应商账龄统计

统计维度

  • 按供应商维度汇总应付余额
  • 按账龄区间分组统计
  • 按付款条件对比实际付款周期

2.2 逾期应付款预警

预警规则

逾期天数 = 实际付款日期 - 应付到期日
逾期金额 = 逾期天数 > 0 的应付账款合计

2.3 付款优先级排序算法

付款优先级 = 
  (紧急程度权重 × 逾期天数) + 
  (金额权重 × log(应付金额)) + 
  (关系权重 × 供应商评级)

权重参考

  • 紧急程度权重:0.4
  • 金额权重:0.3
  • 关系权重:0.3

模块三:异常交易检测

3.1 大额交易预警

阈值设定

单笔预警阈值 = max(历史平均交易额 × 3, 固定阈值)
固定阈值默认值:¥500,000

判断逻辑

def check_large_transaction(amount, history_avg):
    threshold = max(history_avg * 3, 500000)
    if amount > threshold:
        return {"flag": True, "level": "warning", "threshold": threshold}
    return {"flag": False}

3.2 非工作时间交易检测

检测范围

  • 工作日 22:00 - 次日 06:00
  • 周末及节假日全天

异常指数计算

非工作时间交易频率 = 非工作时间交易数 / 总交易数
异常指数 = 非工作时间交易频率 × 金额占比

3.3 频繁小额交易(拆单检测)

拆单特征识别

def detect_split_transactions(transactions, amount_threshold=10000):
    """
    检测是否存在将大额交易拆分为多笔小额交易
    """
    # 1. 按交易对手+时间段分组
    grouped = group_by_counterparty_and_period(transactions)
    
    # 2. 识别金额接近阈值的连续交易
    suspicious_patterns = []
    for key, txns in grouped.items():
        sorted_txns = sort_by_time(txns)
        # 3. 检测是否存在金额之和超过阈值的连续小额交易
        for i in range(len(sorted_txns)):
            window_sum = 0
            for j in range(i, min(i+5, len(sorted_txns))):  # 5分钟内
                window_sum += sorted_txns[j].amount
                if window_sum > amount_threshold * 0.9:  # 达到阈值90%
                    suspicious_patterns.append({
                        "transactions": sorted_txns[i:j+1],
                        "total_amount": window_sum,
                        "count": j - i + 1
                    })
    return suspicious_patterns

3.4 关联交易异常检测

关联交易识别维度

  • 关联方识别:母公司、子公司、合营企业、联营企业
  • 交易频率异常:与关联方交易频率显著高于其他供应商
  • 价格异常:关联方交易价格偏离市场价20%以上
  • 条款异常:给予关联方特殊付款条件

风险评分公式

关联交易风险分 = 
  基础分(20) + 
  频率异常加分(0-30) + 
  价格偏离加分(0-30) + 
  条款异常加分(0-20)

3.5 整数金额交易检测

整数判定规则

def is_round_amount(amount):
    """检测是否为整数金额(可能存在虚假交易)"""
    # 排除已知的整数交易类型(如工资、水电费)
    if is_known_regular_expense(amount):
        return False
    # 判断是否为整数或接近整数
    return abs(amount - round(amount)) < 0.01

def calculate_round_amount_risk(txns):
    """计算整数金额交易风险指数"""
    round_count = sum(1 for t in txns if is_round_amount(t.amount))
    total_count = len(txns)
    round_ratio = round_count / total_count if total_count > 0 else 0
    
    # 整数金额占比超过行业均值可能有异常
    industry_avg = 0.15  # 行业平均水平
    risk_score = min((round_ratio - industry_avg) * 100, 50)
    return risk_score

3.6 月末突击入账检测

检测逻辑

def detect_month_end_spike(transactions, month):
    """检测月末突击入账(粉饰报表嫌疑)"""
    month_txns = filter_by_month(transactions, month)
    
    # 按日期分组统计
    daily_amounts = group_by_day(month_txns)
    
    # 计算最后5天占比
    last_5_days_amount = sum(daily_amounts[-5:])
    month_total = sum(daily_amounts)
    
    spike_ratio = last_5_days_amount / month_total if month_total > 0 else 0
    
    return {
        "last_5_days_ratio": spike_ratio,
        "flag": spike_ratio > 0.4,  # 超过40%触发预警
        "risk_level": "high" if spike_ratio > 0.5 else "medium"
    }

模块四:重复付款检测

4.1 相同金额+相同供应商+相近日期检测

检测规则

def detect_duplicate_payment(transactions, tolerance_days=7, tolerance_amount=0.01):
    """
    检测重复付款
    - 相同供应商
    - 金额差异小于 tolerance_amount
    - 日期差小于 tolerance_days
    """
    duplicates = []
    for i, t1 in enumerate(transactions):
        for t2 in transactions[i+1:]:
            same_supplier = t1.supplier_id == t2.supplier_id
            similar_amount = abs(t1.amount - t2.amount) / t1.amount < tolerance_amount
            close_date = abs((t2.date - t1.date).days) <= tolerance_days
            
            if same_supplier and similar_amount and close_date:
                duplicates.append({
                    "transaction_1": t1,
                    "transaction_2": t2,
                    "match_type": "amount_supplier_date"
                })
    return duplicates

4.2 相同发票号重复报销检测

def detect_duplicate_invoice(invoices):
    """检测相同发票号重复报销"""
    invoice_groups = group_by_invoice_number(invoices)
    duplicates = {k: v for k, v in invoice_groups.items() if len(v) > 1}
    return duplicates

4.3 重复凭证号检查

def detect_duplicate_voucher(vouchers):
    """检测凭证号重复"""
    voucher_groups = group_by_voucher_number(vouchers)
    duplicates = {k: v for k, v in voucher_groups.items() if len(v) > 1}
    return duplicates

4.4 已付款状态变更检测

检测场景

  • 同一笔付款记录出现多次"付款完成"状态
  • 已付款记录状态被回退为"未付款"
  • 付款金额被修改

模块五:银行对账异常

5.1 银行流水与账面余额差异分析

对账公式

银行对账差异 = 银行余额 - 账面余额

调整后余额 = 银行余额 ± 未达账项
应等于 = 账面余额

5.2 未达账项分析

未达账项类型

类型方向说明
银行已收企业未收企业少计加回
银行已付企业未付企业多计减除
企业已收银行未收银行少计减除
企业已付银行未付银行多计加回

5.3 长期挂账项目标记

挂账期限阈值

短期挂账: 30-90天
中期挂账: 90-180天
长期挂账: 180天以上

5.4 资金流向异常检测

def detect_fund_flow_anomaly(transactions, base_ratio=0.3):
    """
    检测资金流向异常
    - 单个账户流出/流入占比异常
    - 资金快进快出
    - 资金闭环流动
    """
    # 计算各账户资金流占比
    account_flows = calculate_account_flow_ratio(transactions)
    
    anomalies = []
    for account, flow in account_flows.items():
        if abs(flow.out_ratio - 0.5) > base_ratio:  # 流出或流入占比过高
            anomalies.append({
                "account": account,
                "out_ratio": flow.out_ratio,
                "pattern": "单向流动异常" if flow.out_ratio > 0.9 or flow.out_ratio < 0.1 else "比例失衡"
            })
    
    return anomalies

模块六:费用审计

6.1 费用率异常波动检测

费用率计算

费用率 = 费用发生额 / 营业收入 × 100%

同比变化率 = (本期费用率 - 上期费用率) / 上期费用率 × 100%

预警阈值

  • 同比波动超过20%:⚠️关注
  • 同比波动超过50%:🔴重点审计

6.2 差旅费合理性检查

检查维度

def audit_travel_expense(claims, company_policy):
    """
    差旅费合理性审计
    - 机票价格是否超标
    - 住宿费是否超标准
    - 出差天数与行程匹配性
    """
    violations = []
    for claim in claims:
        # 机票舱位检查
        if claim.ticket_class != "经济舱" and not claim.is_approved_premium:
            violations.append(f"机票舱位超标: {claim.employee}")
        
        # 住宿费检查
        if claim.hotel_rate > company_policy.max_hotel_rate:
            violations.append(f"住宿超标: {claim.employee}, 实际¥{claim.hotel_rate}, 标准¥{company_policy.max_hotel_rate}")
        
        # 行程合理性检查
        if claim.trip_days < 0.5:  # 当天往返
            if claim.total_expense > company_policy.same_day_limit:
                violations.append(f"当天往返费用超标: {claim.employee}")
    
    return violations

6.3 业务招待费限额检测

税法规定

扣除限额 = min(营业收入 × 0.5%, 发生额 × 60%)
超出部分需调增应纳税所得额

检测公式

def check_entertainment_limit(revenue, entertainment_expense):
    limit_1 = revenue * 0.005  # 营业收入0.5%
    limit_2 = entertainment_expense * 0.6  # 发生额60%
    deductible_limit = min(limit_1, limit_2)
    
    over_limit = entertainment_expense - deductible_limit
    return {
        "deductible_amount": deductible_limit,
        "over_limit_amount": max(0, over_limit),
        "tax_adjustment": max(0, over_limit) * 0.25,  # 假设25%税率
        "flag": over_limit > 0
    }

6.4 工资异常变动检测

检测维度

def detect_salary_anomaly(salary_records, threshold_ratio=0.2):
    """
    工资异常变动检测
    - 月度波动检测
    - 人员变动检测
    - 奖金异常发放
    """
    anomalies = []
    
    for employee, records in group_by_employee(salary_records).items():
        sorted_records = sort_by_month(records)
        
        for i in range(1, len(sorted_records)):
            change_ratio = (sorted_records[i].total - sorted_records[i-1].total) / sorted_records[i-1].total
            
            if abs(change_ratio) > threshold_ratio:
                anomalies.append({
                    "employee": employee,
                    "month": sorted_records[i].month,
                    "change_ratio": change_ratio,
                    "possible_reason": "大额奖金" if change_ratio > 0 else "扣款异常"
                })
    
    return anomalies

模块七:税务风险检测

7.1 进销项比率异常

def check_input_output_ratio(purchases, sales, industry_avg_ratio=1.2):
    """
    进销项比率分析
    正常企业进项税额应略大于销项税额
    比率过高可能存在虚开或滞留发票
    比率过低可能存在隐瞒收入
    """
    input_tax = sum(p.amount for p in purchases)
    output_tax = sum(s.tax for s in sales)
    
    ratio = input_tax / output_tax if output_tax > 0 else float('inf')
    
    return {
        "ratio": ratio,
        "flag": ratio < 0.8 or ratio > 2.0,
        "risk": "比率过低-可能隐瞒收入" if ratio < 0.8 else 
                "比率过高-可能虚抵进项" if ratio > 2.0 else "正常"
    }

7.2 税负率偏离检测

行业税负率参考

industry_tax_burden = {
    "制造业": (3, 5),      # 增值税税负率范围
    "批发零售": (1.5, 3),
    "建筑业": (2.5, 4.5),
    "服务业": (3, 6),
    "房地产": (5, 10)
}

def check_tax_burden_rate(industry, tax_amount, revenue):
    burden_rate = tax_amount / revenue * 100
    min_rate, max_rate = industry_tax_burden.get(industry, (2, 8))
    
    return {
        "burden_rate": burden_rate,
        "industry_range": (min_rate, max_rate),
        "flag": burden_rate < min_rate or burden_rate > max_rate,
        "risk_level": "偏低-需关注" if burden_rate < min_rate else 
                      "偏高-正常经营" if burden_rate < max_rate else "异常"
    }

7.3 发票金额与合同金额不匹配

def check_invoice_contract_mismatch(invoices, contracts):
    """
    检测发票金额与合同金额差异
    允许合理差异范围: ±5%
    """
    mismatches = []
    for invoice in invoices:
        contract = find_contract(contracts, invoice.contract_id)
        if contract:
            diff_ratio = abs(invoice.amount - contract.amount) / contract.amount
            if diff_ratio > 0.05:
                mismatches.append({
                    "invoice_no": invoice.no,
                    "contract_no": contract.no,
                    "invoice_amount": invoice.amount,
                    "contract_amount": contract.amount,
                    "diff_ratio": diff_ratio
                })
    return mismatches

7.4 长期零申报/负申报预警

检测规则

def detect_zero_negative_filing(tax_records, threshold_months=6):
    """
    检测长期零申报或负申报
    连续超过 threshold_months 触发预警
    """
    consecutive_count = 0
    warning_periods = []
    current_sequence = []
    
    for record in sorted(tax_records, key=lambda x: x.month):
        if record.tax_amount <= 0:
            consecutive_count += 1
            current_sequence.append(record.month)
            if consecutive_count >= threshold_months:
                warning_periods.append(current_sequence.copy())
        else:
            consecutive_count = 0
            current_sequence = []
    
    return warning_periods

模块八:审计报告辅助

8.1 审计发现清单自动生成

发现分类标准

风险等级判定条件响应要求
🔴高风险可能导致重大财务损失或违规24小时内上报
🟡中风险可能造成财务不实5个工作日内处理
🟢低风险内控缺陷但不影响报表公允30日内整改

生成模板

审计发现清单
报告期间: XXXX年XX月
生成时间: XXXX年XX月XX日

一、🔴高风险发现
序号 | 问题描述 | 影响金额 | 发现依据 | 建议措施
---- | -------- | ------- | ------- | -------

二、🟡中风险发现
...

三、🟢低风险发现
...

四、风险汇总统计
| 风险等级 | 数量 | 涉及金额 |
|---------|------|---------|
| 🔴高   | X   | ¥XXX    |
| 🟡中   | X   | ¥XXX    |
| 🟢低   | X   | ¥XXX    |

8.2 整改建议生成规则

def generate_remediation_suggestions(finding):
    """根据审计发现自动生成整改建议"""
    suggestion_templates = {
        "大额异常交易": "建议立即冻结相关账户,追查资金去向,完善大额交易审批流程",
        "重复付款": "建议启动付款追回程序,完善付款复核机制,建立付款冲突检测系统",
        "账龄逾期": "建议启动法律催收程序,重新评估客户信用等级,计提相应坏账准备",
        "税务风险": "建议聘请专业税务顾问进行自查,准备相关证明材料,按期完成更正申报",
        "费用超标": "建议加强费用预算管理,完善费用报销审批流程,开展费用合规培训"
    }
    
    category = classify_finding(finding)
    base_suggestion = suggestion_templates.get(category, "建议进行进一步调查核实")
    
    return {
        "finding_id": finding.id,
        "category": category,
        "immediate_action": f"24小时内: {get_immediate_action(category)}",
        "short_term": f"30日内: {get_short_term_action(category)}",
        "long_term": f"制度层面: {get_systemic_action(category)}"
    }

8.3 审计底稿模板

# 审计底稿模板

## 基本信息
- 项目名称: 
- 审计期间: 
- 审计人员: 
- 复核人员: 
- 审计日期: 

## 审计范围
[描述本次审计覆盖的科目、期间、业务范围]

## 审计程序
### 1. 风险评估程序
- 了解被审计单位及其环境
- 识别和评估重大错报风险

### 2. 实质性程序
- [具体测试步骤]

## 审计证据
| 证据编号 | 证据类型 | 证据来源 | 主要内容 | 获取日期 |
|---------|---------|---------|---------|---------|
| E-001 | 文件 | 财务系统 | XX科目明细 | XXXX-XX-XX |

## 审计结论
[基于审计证据得出的结论]

## 重大事项说明
[需要特别说明的事项]

## 附件清单
1. 
2. 

数据输入格式

标准输入格式(CSV/Excel)

交易日期,凭证号,供应商/客户,摘要,借方金额,贷方金额,余额,交易类型
2024-01-15,V001,供应商A,采购商品,50000,0,50000,采购
2024-01-16,V002,客户B,销售商品,0,80000,80000,销售

标准输出格式

{
  "audit_date": "2024-01-20",
  "findings": [
    {
      "id": "F001",
      "category": "重复付款",
      "risk_level": "high",
      "description": "检测到向供应商A重复支付",
      "evidence": ["交易记录1", "交易记录2"],
      "amount": 50000,
      "suggestion": "启动付款追回程序"
    }
  ],
  "statistics": {
    "total_transactions": 1000,
    "anomalies_detected": 15,
    "risk_distribution": {"high": 3, "medium": 7, "low": 5}
  }
}

使用示例

示例1:应收账款账龄分析

输入

客户 | 应收账款余额 | 账龄
---------------------------
A公司 | ¥800,000 | 45天
B公司 | ¥1,200,000 | 120天
C公司 | ¥300,000 | 200天
D公司 | ¥500,000 | 15天

输出

📊 应收账款账龄分析报告

【账龄分布】
| 区间 | 金额 | 占比 | 客户数 |
|------|------|------|-------|
| 0-30天 | ¥500,000 | 18.5% | 1 |
| 31-60天 | ¥800,000 | 29.6% | 1 |
| 91-180天 | ¥1,200,000 | 44.4% | 1 |
| 180天以上 | ¥300,000 | 11.1% | 1 |

【坏账准备估算】
按一般计提比例:
- 31-60天 (5%): ¥40,000
- 91-180天 (30%): ¥360,000
- 180天以上 (50%): ¥150,000
合计坏账准备: ¥550,000

⚠️ 预警客户:
🔴 B公司 - 账龄120天,逾期严重,建议启动催收或法律程序
🔴 C公司 - 账龄200天,建议全额计提坏账

示例2:重复付款检测

输入:2笔向同一供应商的付款记录,金额相近,日期相差3天

输出

🚨 重复付款警报

【检测结果】
- 凭证号 V001 和 V002 疑似重复付款
- 供应商: XX供应商
- 金额: ¥50,000 vs ¥49,995 (差异0.01%)
- 日期: 2024-01-10 vs 2024-01-13 (相差3天)

【建议措施】
1. 立即冻结第二笔付款
2. 联系供应商确认实际收款情况
3. 检查付款审批流程漏洞
4. 追回多付款项

【风险评级】🔴 高风险

注意事项

  1. 数据保密:审计数据涉及商业机密,处理过程需确保数据安全
  2. 阈值调整:各检测阈值可根据企业实际情况调整
  3. 人工复核:所有自动检测结果需经审计人员复核确认
  4. 合规要求:税务相关检测需符合最新税法规定
  5. 持续更新:检测规则库需随业务变化和监管要求更新

相关技能

数据操作审计追踪器 (Data Audit)。 对数据目录生成 SHA256 快照、比对文件变化(新增/删除/修改)、 记录操作日志、检查数据目录健康状态。 适用于数据合规场景中的操作追溯和审计准备。 Use when: 需要追踪数据文件变化、生成审计快照、 合规审查准备、文件完整性验证、数据目录健康检查。 🎉 v1.1.0 核心功能: - 📸 数据目录 SHA256 快照 - 🔄 快照对比(新增/删除/修改检测) - 📝 操作日志记录与查询 - 🔍 数据目录健康检查 - 📊 JSON 报告导出 触发关键词:数据审计、文件追踪、快照比对、SHA256、 完整性校验、合规审计、

1 次安装

AI Agent系统安全审计工具,支持代码库安全检查、提示注入检测与基础配置审计,适合个人开发者快速安全自查。Use when 需要安全检测、合规审计、漏洞扫描、加密防护时使用。不适用于渗透测试未授权目标。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

AI 溯源审计技能:对 AI 生成内容/Agent 行为/对话记录执行溯源审计——采集证据链(来源/时间线/操作日志/生成痕迹)→ 交叉验证 → 输出结构化审计报告(证据清单+可信度+风险点+建议)。对标国际标准:C2PA 内容溯源 / SLSA 供应链 / EU AI Act Art.50 / 审计准则(ISSAI/COBIT)。适用:AI 内容是否由某 AI 生成、Agent 操作合规审计、泄密溯源、医疗 AI 审计(细分第一)。触发词:溯源、审计、证据链、AI 审计、这是谁生成的、provenance、forensic、audit trail、内容溯源。

1 次安装

对已存在 Skill 做 8 维度全面体检(结构/安全/触发/有效性/竞争/平台/文档/代码质量)。说 技能审计/审计技能/技能体检 时触发。支持成熟度分级+4确认点+整改+回归审计。绝不自动发布。Do NOT use for creating skills or publishing to platforms.

AI 身份溯源审计团——三锚核验(记忆锚/身份锚/行为锚)+ 证据链审计 + 溯源审计报告。对标会计师事务所审计组范式:标准依据→证据链审计→报告成稿。触发词:溯源、审计、溯源审计、溯源审计团、三锚核验、证据链审计、身份核验、AI身份、溯源报告、溯源官、定标人、执笔人。

元安 —— 检测 AI 技能中的恶意模式(13 类检测器)与系统安全基线(Windows/Linux),纯只读、零依赖、有纪律。触发:用户提到 安全审计 / 技能安全检查 / 恶意检测 / 供应链安全 / 系统安全基线 / scan skills / supply chain / malicious skill / 扫描技能 等。边界:本工具只检测与报告,绝不执行修复、删除或查杀动作。