发票抵扣勾选导入模板生成器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_9355e276/shdskill11。
技能介绍
解决什么问题
在电子税务局完成发票抵扣勾选时,财务或开发人员通常需要手工下载「未抵扣发票信息」和官方「抵扣勾选导入模板」,再逐行把待抵扣的发票号码填进模板。发票数量一多,手工匹配既慢又容易出错;而从 PDF 电子发票里逐个抄号码更不现实。本技能把「收集号码 → 上传数据 → 自动匹配填充」这条流程自动化,让脚本替你完成重复劳动。
技能如何工作
运行后会依次弹出三个步骤窗口,对应一次完整的生成任务。
- 收集发票号码:支持上传 PDF 发票文件,使用
pdfplumber扫描并提取 20 位数电发票号码;也可以上传包含「数电发票号码」列的 Excel 或 CSV 明细表。提取结果会自动去重,并支持全选、取消全选和手动勾选。 - 上传数据文件:需要同时提供电子税务局导出的「未抵扣发票信息」和下载的「抵扣勾选导入模板」,格式为
.xlsx或.xls。 - 自动匹配生成:以数电发票号码为主匹配字段,把结果按模板列顺序填充,生成的文件保存到桌面,文件名包含时间戳,例如
抵扣勾选导入模板_YYYYMMDD_HHMMSS.xlsx。
运行需要 Python 3.9 及以上版本,并依赖 pandas、openpyxl、pdfplumber 和 pillow,同时要求环境支持 tkinter 以显示交互窗口。
适用边界与注意点
- PDF 必须是带文字层的电子发票。扫描件或图片型 PDF 无法直接提取,需要先做 OCR 识别。
- 如果出现「无匹配结果」,应检查「未抵扣发票信息」中的数电发票号码列是否包含目标号码,并确认该发票状态仍为「未抵扣」。
- 生成结果只是按官方模板填充好数据的
.xlsx文件,后续仍需在电子税务局页面完成上传和确认操作。
使用场景
- 月度结账时手头有十几份PDF电子发票,需要把每张发票的20位号码提取出来填进抵扣勾选导入模板。
- 从电子税务局导出未抵扣发票信息后,拿到一份Excel明细表,需要按号码批量勾选并生成可上传的模板。
- 发票号码在PDF和税务导出文件中对不上,需要按数电发票号码逐一匹配,找出无匹配结果的发票。
- 桌面上需要快速定位上一次生成的抵扣勾选导入模板文件,按时间戳命名的文件混在一堆表格里。
适合人员
- 财务专员,每月结账前要把一批发票抵扣勾选信息整理进官方模板并上传电子税务局。
- 会计助理,经常从PDF发票和Excel明细里手工抄发票号码,希望脚本自动完成匹配和填充。
- 财务系统对接人员,需要在内部流程中复用发票号码提取和模板生成逻辑,减少手工操作。
- 税务申报负责人,需要在申报前核对未抵扣发票信息与抵扣勾选导入模板是否一致。