Agent Skills
返回列表
XML数电票校验

XML数电票校验

办公效率 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_0dc4c020/validate-einvoice-xml。

技能介绍

解决什么问题

在处理发票解析或数据迁移时,系统经常需要区分全面数字化电子发票(数电票)与传统电子发票。两者虽然都是 XML 格式,但结构规范差异明显。直接混用解析逻辑会导致字段缺失或校验失败。该技能用于验证 XML 文件是否符合数电票的格式规范,避免在数据处理链路上出现格式混淆。

技能如何工作

该技能通过检查数电票 XML 的核心结构与特征字段来进行验证:

  • 根元素识别:确认根节点为 EInvoice(传统发票通常为 Invoice)。
  • 头部信息 (Header):检查 EIid(20位唯一标识)、EInvoiceTag、Version 等必需子元素。
  • 数据区 (EInvoiceData):验证 SellerInformation(销售方)、BuyerInformation(购买方)、BasicInformation(基本金额等)以及 IssuItemInformation(开票项目)是否存在。
  • 税务与签名:校验 TaxSupervisionInfo 中的 20位 InvoiceNumber,以及 TaxBureauSignature 中的数字签名。

快速判断逻辑:如果只需粗略筛查,该技能会优先检查三个关键特征——根元素是 EInvoice、发票号码是 20位数字(区别于传统发票的 8位或12位)、且包含 TaxBureauSignature 签名节点。

适用边界与注意点

  • 适用范围:仅针对中国数电票的 XML 结构进行格式校验,不校验业务逻辑(如金额与税率是否匹配)。
  • 格式差异:该技能明确区分了数电票与传统电子发票的 根元素、发票号码 长度和 版本标识 差异。
  • 输出结果:验证完成后,会生成结构化的报告,指出缺失的节点或不符合规范的字段,方便开发人员快速定位解析问题。

使用场景

  • 接入外部发票 XML 时,先判断是否为数电票,再选择 EInvoice 解析分支。
  • 清洗开票系统导出文件前,批量检查根元素、Header 和 20 位发票号码是否齐全。
  • 排查解析失败时,核对 SellerInformation、BuyerInformation 等必需节点是否存在。

适合人员

  • 需要解析中国数电票 XML 的财务系统工程师,典型诉求是区分 EInvoice 与传统 Invoice 结构。
  • 负责发票数据接入的数据工程师,典型诉求是先校验 Header、EInvoiceData 和税务字段再入库。
  • 维护开票工具链的后端开发者,典型诉求是快速定位缺少 TaxBureauSignature 或 20 位发票号码的文件。