AI4ZHU

AI票夹 InvoicePocket

AI票夹——把邮箱里的发票整理成可执行队列

一个本地优先的个人消费票据自动化处理 Agent。它从 Gmail 只读收票,解析附件和发票链接,同时覆盖城市发票抽奖、个人报销包、异常下载和本地归档。

AI票夹看板 Demo

待处理

2026-05-25 09:30
可抽奖 1 组 / ¥286.40

上海发票抽奖上传包

3 张可上传,抬头:本人 / 家人,渠道:支付宝 / 云闪付。

3 invoices ¥286.40
需复核 1 张 / ¥98.00

杭州餐饮消费票

开票时间符合配置窗口,但销售方城市需要人工确认。

city check ¥98.00
已去重 1 张 / ¥42.50

重复开票记录

发票代码、号码、金额和日期命中重复规则,保留归档不提醒。

duplicate ¥42.50
客户拜访报销包 餐饮 2 张、交通 3 张,项目字段已补齐,可导出草稿。
可报销 ¥612.20
AI 工具订阅 购买方名称命中个人抬头,客户字段缺失,等待确认。
缺字段 ¥138.00
家人抬头票据 纳入抽奖归档,不进入个人报销包。
已隔离 ¥75.90
商户发票链接 下载页要求短信验证,已记录原链接并进入人工队列。
人工处理 链接
扫描件低置信解析 金额可识别,销售方名称不稳定,等待人工复核或 LLM 兜底。
待复核 OCR
规则未覆盖城市 没有正式规则来源,系统保守标记为不可自动判断。
不自动判 规则
01

收票

从专用邮箱读取发票邮件,提取附件和正文链接。

能力解读
只读 Gmail API 最小权限读取,不修改邮箱内容。
02

解析

XML、PDF、OFD、图片和链接型发票分层解析。

能力解读
多格式 结构化文件优先,图片和链接型发票进入兜底处理。
03

判断 / 归类

抽奖按城市活动规则判断;报销按个人抬头、项目、客户和用途归类。

能力解读
双场景 发票抽奖和个人报销进入同一个任务看板。
04

任务看板

把可上传、可报销、待复核和异常下载变成今天可处理的队列。

能力解读
本地优先 凭据、token、数据库和发票原件留在本机。

Local First

真正处理发票时,运行在自己的电脑上。

线上页面只展示产品服务场景和模拟数据;实际使用需要在本地配置 Google OAuth Desktop 客户端和规则文件,按钮连接本地 Python 服务。

install

初始化环境

创建虚拟环境、安装依赖、准备浏览器运行时。

python3 -m venv .venv
source .venv/bin/activate
pip install -e .
playwright install chromium
run once

完整执行

按同步、下载、解析、判断 / 归类、日报顺序跑一次。

ai-ticket run-once
dashboard

打开本地看板

在本机处理发票抽奖、个人报销、异常链接和忽略状态。

ai-ticket dashboard
http://127.0.0.1:8765
公开页只放模拟数据

不连接 Gmail、数据库或本地发票文件,适合分享给朋友查看产品思路。

敏感文件不发布

config.yaml、secrets/、data/、token、发票原件和本地数据库不进入部署产物。

保留人工接管点

登录、短信、验证码、人脸、平台风控和规则不确定时,系统停在待处理状态。