项目背景#
作为 4 家公司的财务助理,每月需要处理:
- 销项发票:约 100 张,需要开具、登记、归档
- 进项发票:约 200+ 张,需要查验、匹配、认证
手工处理流程繁琐,容易出错,且无法追溯历史数据。
解决方案#
技术架构#
用户界面 (Streamlit)
↓
业务逻辑层 (Python)
↓
数据处理 (Pandas + xlwings)
↓
数据存储 (SQLite + Excel)核心功能#
- 发票识别:OCR 识别 PDF 发票关键字段
- 数据校验:自动校验发票号码、金额、税号
- 智能匹配:进项发票与采购订单自动匹配
- 批量导出:生成符合公司格式的 Excel 报表
成果与数据#
| 指标 | 优化前 | 优化后 | 提升 |
|---|---|---|---|
| 单张发票处理时间 | 5 分钟 | 30 秒 | 90% |
| 月度处理总时长 | 25 小时 | 3 小时 | 88% |
| 数据错误率 | 5% | 0.1% | 98% |
技术亮点#
- 模块化设计:发票类型可配置,新增公司只需添加配置
- 增量处理:只处理新增发票,避免重复计算
- 异常处理:完善的错误日志,便于排查问题
经验总结#
- 自动化的前提是标准化,先理清流程再写代码
- 保留手工介入接口,100% 自动化不现实
- 日志很重要,出问题能快速定位