← 返回 Skills 市场
harrylabsj

Receipt Auditor

作者 haidong · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ pending
33
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install receipt-auditor
功能描述
Extract, categorize, and audit receipts and bills to generate expense reports and spot discrepancies.
使用说明 (SKILL.md)

Receipt & Expense Auditor

Overview

The Receipt & Expense Auditor turns raw bill and receipt text into organized, categorized expense reports. It supports three modes:

Mode Description
📋 Report Categorize expenses and generate a ready-to-submit reimbursement report
🔪 AA Split Calculate per-person payment splits for group dining, travel, or shared expenses
🔍 Audit Detect duplicate charges, suspicious entries, and amount anomalies

Who Is This For?

User Pain Point This Skill Solves
Office worker Monthly expense report pileup Categorizes everything instantly
Freelancer No accounting tools Generates clean expense reports in seconds
Group diners Splitting bills is awkward Fair AA split with per-person breakdown
Credit card user Suspicious charges Detects duplicates and unusual amounts
Family finance Tracking monthly spending Summarizes by category for budgeting

Workflow (7 Steps)

┌──────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐
│  1.      │   │  2.      │   │  3.      │   │  4.      │   │  5.      │   │  6.      │   │  7.      │
│ Input    │ → │ Extract  │ → │ Classify │ → │ Anomaly  │ → │ AA Split │ → │ Report   │ → │ Summary  │
│ Reading  │   │ Info     │   │          │   │ Detection│   │          │   │ Generate │   │ Report   │
└──────────┘   └──────────┘   └──────────┘   └──────────┘   └──────────┘   └──────────┘   └──────────┘

Step 1: Input Reading

  • Accept pasted bill text, file path, or JSON config
  • Support multiple input formats: plain text lines, structured JSON

Step 2: Information Extraction

  • Parse each line to extract: date, merchant name, amount, quantity
  • Recognize common patterns: "6/1 北京-上海高铁 553元", "380元x2晚"

Step 3: Intelligent Classification

  • Match merchant/description against category keywords
  • Categories: Transportation, Accommodation, Food & Beverage, Office, Healthcare, Entertainment, Shopping, Communication, Other

Step 4: Anomaly Detection

  • Duplicate detection: Same date + same merchant + same amount
  • Amount check: Entries significantly higher than expected range
  • Missing info: Lines missing date, amount, or description

Step 5: AA Split Calculation (AA Mode Only)

  • Separate shared items from personal items
  • Shared amount ÷ people count = per-person share
  • Per-person total = personal items + shared share
  • Cross-verify total matches original bill

Step 6: Report Generation

  • Output formatted expense report table (Markdown)
  • Category summary with counts and totals

Step 7: Summary Report

  • Monthly/yearly spending overview
  • Per-category breakdown with percentages

Sample Prompts (with Expected Output)

Sample 1: Business Trip Reimbursement — Report Mode

Prompt:

Mode: report
Items:
  6/1 北京-上海高铁 553元
  6/1 上海汉庭酒店 380元x2晚
  6/2 客户午餐 268元
  6/2 上海-北京机票 820元
  6/2 机场打车 156元

Expected Output:

=== 差旅报销单 ===
| 日期   | 类别   | 金额   | 备注                |
|--------|--------|--------|---------------------|
| 6/1    | 交通   | 553    | 北京-上海高铁       |
| 6/1    | 住宿   | 760    | 上海汉庭酒店2晚     |
| 6/2    | 餐饮   | 268    | 客户午餐            |
| 6/2    | 交通   | 820    | 上海-北京机票       |
| 6/2    | 交通   | 156    | 机场打车            |
| **合计** |        | **2557** |                     |

=== 类别汇总 ===
交通:2笔 — 1529元
住宿:1笔 — 760元
餐饮:1笔 — 268元

异常提醒:无
可报销金额:2557 元

Sample 2: Group Dining AA — AA Split Mode

Prompt:

Mode: aa-split
Config:
  Restaurant: 海底捞
  Total: 468元
  People: 4 (张三, 李四, 王五, 赵六)
  Personal orders:
    - 张三: 毛肚 68元
    - 李四: 虾滑 58元
    - 王五: 饮料 18元
    - 赵六: 牛肉 88元
  Shared: 锅底+蔬菜+主食 236元

Expected Output:

=== AA 分摊结果 ===
公共部分:锅底+蔬菜+主食 = 236元
公共人均:236 ÷ 4 = 59元

| 人员 | 个人点单 | 公共分摊 | 应付    |
|------|----------|----------|---------|
| 张三 | 68       | 59       | 127 元  |
| 李四 | 58       | 59       | 117 元  |
| 王五 | 18       | 59       | 77 元   |
| 赵六 | 88       | 59       | 147 元  |

合计验证:127+117+77+147 = 468元 ✅

Sample 3: Credit Card Anomaly Detection — Audit Mode

Prompt:

Mode: audit
Items:
  6/1 超市 128.50
  6/1 超市 128.50
  6/2 咖啡店 35.00
  6/3 健身房 299.00
  6/3 健身房 299.00
  6/5 加油站 420.00

Expected Output:

=== 账单核对报告 ===
| 日期   | 商家   | 金额   | 状态       |
|--------|--------|--------|------------|
| 6/1    | 超市   | 128.50 | ⚠️ 重复消费 |
| 6/1    | 超市   | 128.50 | ⚠️ 重复消费 |
| 6/2    | 咖啡店 | 35.00  | ✅ 正常     |
| 6/3    | 健身房 | 299.00 | ⚠️ 重复消费 |
| 6/3    | 健身房 | 299.00 | ⚠️ 重复消费 |
| 6/5    | 加油站 | 420.00 | ✅ 正常     |

=== 异常提醒 ===
1. 6/1 超市 128.50元 — 疑似重复消费(同一日期同一商家)
2. 6/3 健身房 299.00元 — 疑似重复消费(同一日期同一商家)
建议:请核实是否为扣款两次或输入重复。

本月总支出:1310.00 元

Sample 4: Monthly Expense Summary — Report Mode

Prompt:

Mode: report
Items:
  6/3 盒马生鲜 326.50
  6/5 中国石化加油 420.00
  6/7 美团外卖 45.00
  6/10 星巴克 36.00
  6/12 滴滴打车 28.00
  6/15 淘宝 - 办公室用品 128.00
  6/18 电影票 120.00
  6/20 海底捞 368.00
  6/25 手机话费充值 100.00
  6/28 京东 - 书籍 236.00

Expected Output:

=== 月度支出报告(6月)===
| 日期   | 类别   | 金额   | 备注                |
|--------|--------|--------|---------------------|
| 6/3    | 餐饮   | 326.50 | 盒马生鲜            |
| 6/5    | 交通   | 420.00 | 中国石化加油        |
| 6/7    | 餐饮   | 45.00  | 美团外卖            |
| 6/10   | 餐饮   | 36.00  | 星巴克              |
| 6/12   | 交通   | 28.00  | 滴滴打车            |
| 6/15   | 办公   | 128.00 | 淘宝办公室用品      |
| 6/18   | 娱乐   | 120.00 | 电影票              |
| 6/20   | 餐饮   | 368.00 | 海底捞              |
| 6/25   | 通讯   | 100.00 | 手机话费充值        |
| 6/28   | 办公   | 236.00 | 京东书籍            |

=== 类别汇总 ===
餐饮:4笔 — 775.50 (44.7%)
交通:2笔 — 448.00 (25.8%)
办公:2笔 — 364.00 (21.0%)
娱乐:1笔 — 120.00 (6.9%)
通讯:1笔 — 100.00 (5.8%)

本月总支出:1,807.50 元

Sample 5: Freelancer Invoice Collection — Report Mode

Prompt:

Mode: report
Currency: USD
Items:
  5/1 Adobe Creative Cloud 52.99
  5/3 WeWork Coworking 350.00
  5/5 Google Cloud Hosting 89.50
  5/10 LinkedIn Premium 29.99
  5/15 Notion Team Plan 18.00
  5/20 Zoom Pro 14.99
  5/25 Figma Professional 12.00

Expected Output:

=== Expense Report (May) ===
| Date    | Category       | Amount | Description                |
|---------|----------------|--------|----------------------------|
| 5/1     | Office         | 52.99  | Adobe Creative Cloud       |
| 5/3     | Office         | 350.00 | WeWork Coworking           |
| 5/5     | Office         | 89.50  | Google Cloud Hosting       |
| 5/10    | Communication  | 29.99  | LinkedIn Premium           |
| 5/15    | Office         | 18.00  | Notion Team Plan           |
| 5/20    | Communication  | 14.99  | Zoom Pro                   |
| 5/25    | Office         | 12.00  | Figma Professional         |
| **Total** |              | **567.47** |                            |

=== Category Summary ===
Office: 5 items — $522.49 (92.1%)
Communication: 2 items — $44.98 (7.9%)

Anomaly Warning: None

Real-World Task Examples

Task 1: Sales Rep Monthly Reimbursement

Scenario: A sales representative needs to submit a monthly expense report for travel and client entertainment.

Input:

Items:
  6/3 北京-深圳高铁 944元
  6/3 深圳万豪酒店 680元x2晚
  6/4 客户公司拜访 打车 45元
  6/4 客户晚餐 西贝莜面 320元
  6/5 深圳-北京机票 1280元
  6/6 办公室停车费 60元
  6/8 上海客户会议 打车 35元
  6/8 上海午宴 856元
  6/9 上海-北京高铁 626元

Execution Steps:

  1. Mode set to "report" — input is raw bill lines
  2. Each line is parsed for date, merchant, amount, quantity
  3. Items classified: 高铁→交通, 酒店→住宿, 打车→交通, 晚餐→餐饮, etc.
  4. Duplicate check: no duplicates found
  5. Report generated with category summaries

Expected Output:

=== 差旅报销单 ===
| 日期   | 类别   | 金额   | 备注                    |
|--------|--------|--------|-------------------------|
| 6/3    | 交通   | 944    | 北京-深圳高铁           |
| 6/3    | 住宿   | 1360   | 深圳万豪酒店2晚         |
| 6/4    | 交通   | 45     | 客户公司拜访打车        |
| 6/4    | 餐饮   | 320    | 客户晚餐西贝莜面        |
| 6/5    | 交通   | 1280   | 深圳-北京机票           |
| 6/6    | 交通   | 60     | 办公室停车费            |
| 6/8    | 交通   | 35     | 上海客户会议打车        |
| 6/8    | 餐饮   | 856    | 上海午宴                |
| 6/9    | 交通   | 626    | 上海-北京高铁           |
| **合计** |        | **5526** |                         |

=== 类别汇总 ===
交通:5笔 — 2990元
住宿:1笔 — 1360元
餐饮:2笔 — 1176元

异常提醒:无
提示:交通类支出占比较高(54%),可考虑提前购票折扣。
可报销金额:5526元

Task 2: 8-Person Dinner Party AA

Scenario: 8 friends went to a Chinese restaurant. 3 people brought their own wine. Need to calculate a fair split.

Input:

Restaurant: 花胶鸡火锅
Total: 1286元
People: 8
Personal orders:
  - 小明: 毛肚58, 鹅肠48
  - 小红: 虾滑52, 蔬菜拼盘38
  - 大伟: 自带红酒(免费)
  - 小美: 牛肉98
  - 阿杰: 蟹柳32, 墨鱼丸28
  - 阿丽: 蘑菇拼盘42
  - 老林: 自带红酒(免费)
  - 小雅: 三文鱼88, 甜虾68
Shared: 锅底288, 调料56, 饮料128, 纸巾18
Wine brought: 3 people (including the two who brought wine, but the third 自带红酒 person is not listed — assume they brought wine)

Execution Steps:

  1. Separate personal orders from shared items
  2. Note: 大伟 and 老林 brought their own wine — their share of "饮料" should be excluded (or adjusted)
  3. Calculate shared total: 288+56+128+18 = 490元
  4. Adjust: 2 people (自带红酒) don't share 饮料 128元 → shared-饮料 = 362元 ÷ 8 + 128÷6
  5. Or simpler: total shared = 490, divide evenly unless specified
  6. Per-person = personal + shared share

Expected Output:

=== AA 分摊结果 ===
餐厅:花胶鸡火锅 | 人数:8人 | 总金额:1286元

公共项目(8人分担):
锅底288 + 调料56 + 饮料128 + 纸巾18 = 490元
公共人均(8人):490 ÷ 8 = 61.25元

注:大伟、老林自带红酒,不参与饮料分摊
修正后公共人均(6人):饮料128÷6=21.33,其余362÷8=45.25 → 饮料部分除外

| 人员 | 个人点单 | 公共分摊 | 应付        |
|------|----------|----------|-------------|
| 小明 | 106      | 61.25    | 167.25 元   |
| 小红 | 90       | 61.25    | 151.25 元   |
| 大伟 | 0        | 50.00    | 50.00 元    |
| 小美 | 98       | 61.25    | 159.25 元   |
| 阿杰 | 60       | 61.25    | 121.25 元   |
| 阿丽 | 42       | 61.25    | 103.25 元   |
| 老林 | 0        | 50.00    | 50.00 元    |
| 小雅 | 156      | 61.25    | 217.25 元   |

合计验证:1019.50 + 大伟老林修正... ❌ 总金额不匹配,请核实。

推荐方案(简化:公共不分饮料):
全部公共(不含饮料)362÷8=45.25
饮料128÷6=21.33
大伟/老林实付=45.25
其他人实付=45.25+21.33+个人点单

修正合计确认:略(由用户最终确认)

Note: In practice, the assistant should handle the complex AA logic and present the simplest correct split.


Task 3: Monthly Family Budget Review

Scenario: A family wants to review June spending across all categories and identify areas to cut back.

Input:

Items:
  6/1 永辉超市 385.20
  6/2 美团买菜 128.50
  6/3 支付宝 - 水电费 312.00
  6/5 滴滴打车 42.00
  6/5 京东 - 打印机墨盒 89.00
  6/7 美团外卖 56.00
  6/8 星巴克 38.00
  6/10 物美超市 256.80
  6/12 顺丰快递 23.00
  6/13 中国石化加油 380.00
  6/15 海底捞 425.00
  6/16 美团买菜 112.30
  6/18 联通话费 99.00
  6/20 滴滴打车 35.00
  6/22 永辉超市 298.50
  6/25 京东 - 书籍 156.00
  6/27 美团外卖 68.00
  6/28 支付宝 - 燃气费 86.00
  6/30 物美超市 198.00

Execution Steps:

  1. All 19 items classified by category
  2. Generate category breakdown with percentages
  3. Detect spending patterns and provide suggestions

Expected Output:

=== 家庭支出报告(6月)===

| 日期   | 类别   | 金额   | 备注              |
|--------|--------|--------|-------------------|
| 6/1    | 购物   | 385.20 | 永辉超市          |
| 6/2    | 餐饮   | 128.50 | 美团买菜          |
| 6/3    | 其他   | 312.00 | 水电费            |
| 6/5    | 交通   | 42.00  | 滴滴打车          |
| 6/5    | 办公   | 89.00  | 京东打印机墨盒    |
| ...    | ...    | ...    | ...               |
| **合计** |        | **3188.30** |                   |

=== 类别汇总 ===
| 类别   | 笔数 | 金额     | 占比 |
|--------|------|----------|------|
| 购物   | 4    | 1,138.50 | 35.7% |
| 餐饮   | 5    | 799.80   | 25.1% |
| 交通   | 3    | 457.00   | 14.3% |
| 其他   | 3    | 497.00   | 15.6% |
| 办公   | 2    | 245.00   | 7.7%  |
| 通讯   | 1    | 99.00     | 3.1%  |

=== 财务建议 ===
📌 购物类支出占比最高(35.7%),可考虑减少非必需购物
📌 外卖/餐饮频次较高(6次),可增加家中做饭频率
📌 建议设定每月购物预算上限为800元
📌 无异常重复消费记录 ✅

First-Success Path (30 Seconds)

# ──────────────────────────────────────────────────
#  30-SECOND FIRST SUCCESS
# ──────────────────────────────────────────────────

# Step 1 (5s): Run with a few expense lines
receipt-auditor --mode report --items "6/1 北京-上海高铁 553元"

# Step 2 (10s): Read the categorized output
# Step 3 (10s): Add more items or switch modes
receipt-auditor --mode audit --items $'6/1 超市 128.50\
6/1 超市 128.50'

# Step 4 (5s): Copy the formatted report to your reimbursement system!

Quick-start for AI Assistants

Process the following expenses and generate a categorized report:
{mode: report, items: "6/1 北京-上海高铁 553元\
6/1 酒店 380元x2晚"}
Include: date, category, amount, description, category summary, total, and anomaly warnings.

Verification Checklist

After running the skill, confirm:

  • Mode matches the intended use case
  • All line items parsed correctly (date, merchant, amount)
  • Categories assigned correctly (verify 2-3 items manually)
  • Total calculation is accurate
  • Anomalies flagged (if any) are legitimate
  • AA split totals verify against original amount
  • Output is formatted as a clean Markdown table

Error Handling

Issue Resolution
Item missing date Flag as "missing info" and still process
Amount format unclear Flag as "amount unclear — verify manually"
Negative amount Mark as refund/credit, separate from expenses
AA split totals don't match Warn user: "Total mismatch by X元 — adjust manually"
Unrecognized category Default to "Other" and log for user review
Empty input Return: "No items to process — please provide bill text"

Key Differentiators

  • Semantic classification: Understands Chinese merchant names and descriptions, not just keywords
  • Three specialized modes: Report (reimbursement), AA Split (social), Audit (security) in one skill
  • Smart anomaly detection: Catches duplicates, unusual amounts, and missing info automatically
  • Ready-to-submit output: Markdown tables formatted for corporate reimbursement systems
  • AA logic: Handles complex scenarios (shared items, personal items, exclusions like "brought own wine")
  • Privacy-first: No data storage — process and forget

License

MIT-0 — No attribution required.


Changelog

  • v1.0.0 (2026-06-15): Initial release — three-mode expense auditor with intelligent classification, anomaly detection, and AA split calculation.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install receipt-auditor
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /receipt-auditor 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release of Receipt & Expense Auditor. - Extracts and categorizes expenses from plain text, JSON, or file input. - Generates reimbursement-ready reports with category summaries and totals. - Detects duplicate, suspicious, or incomplete entries for anomaly auditing. - Supports group AA split: calculates per-person shares for shared expenses. - Provides monthly or yearly summary reports with spending breakdowns. - Sample prompts included for business, group, and personal accounting scenarios.
元数据
Slug receipt-auditor
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Receipt Auditor 是什么?

Extract, categorize, and audit receipts and bills to generate expense reports and spot discrepancies. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 33 次。

如何安装 Receipt Auditor?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install receipt-auditor」即可一键安装,无需额外配置。

Receipt Auditor 是免费的吗?

是的,Receipt Auditor 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Receipt Auditor 支持哪些平台?

Receipt Auditor 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Receipt Auditor?

由 haidong(@harrylabsj)开发并维护,当前版本 v1.0.0。

💬 留言讨论