ZATCA 第二阶段:签约单元、入驻、审批和存档
对于已进入第一阶段的沙特公司:注册一个签字单元,将其接入ZATCA系统(包括一次性密码验证、合规性检查和生产证书),然后启用第二阶段。之后,每张发票和单据都会在发出时加盖印章。标准发票需经ZATCA审核后方可交付买方;简化发票会在24小时内完成审核。提交内容包括:仪表盘、仅供附件的存档以及包含XML文件的PDF/A-3格式文档。第一阶段的公司流程保持不变。
第二阶段(集成)建立在第一阶段之上。第一阶段的所有操作仍然继续进行;第二阶段增加了 XML 发票(UBL 2.1)、其哈希值、加密印章以及一个将每张发票与其前一张发票关联起来的计数器。此外,它还将每个单元接入 ZATCA 的 Fatoora 平台,并将每个加盖印章的文件发送给 ZATCA(用于清算或报告),并保留已发送的文件和 ZATCA 的回复记录。
签名单元
会计 → 结账与合规 → 电子发票 → ZATCA 签名单元(仅适用于在沙特阿拉伯运营的公司,且仅适用于授予该权限的角色)列出了用于在发票上盖章的电子发票生成单元 (EGS):代码、名称、分支机构、环境、状态、测试、证书、证书到期日、上次计数器 (ICV) 和上次盖章。
- 添加单位:代码、名称、盖章的分支机构(全公司留空)、证书请求详细信息(通用名称 (CN)、EGS 序列号、组织单位 (OU)、发票类型 (TSCZ)、位置、分支机构的简短国家地址和行业)以及环境(沙盒、模拟或生产)。
- 勾选“默认单位”,表示分支没有自己的单位时使用的单位。
- 仅供演示,勾选“测试设备”并按下“测试证书”:设备将获得一个密钥和一个自签名证书。ZATCA 不会接受它所签发的证书。
- ZATCA 的注册流程在 ZATCA Onboarding 平台上完成,该平台的注册(OTP)步骤会自动为您生成设备的密钥和证书签名请求。此屏幕上的“生成 CSR”仅用于手动准备请求;“下载 CSR”则会显示已生成的 CSR。
私钥和 ZATCA 密钥是密封的,永远不会在任何屏幕上显示,也不会在任何导出或ASK中显示。
开启第二阶段
- 会计 → 结算与合规 → 税务 → 税务管辖区,在沙特阿拉伯管辖区:勾选 ZATCA 第二阶段(整合),并从公司 ZATCA 波次的第一天起算第二阶段(空白:从启用之日起算)。
- 除非第一阶段已经启动,否则申请将被拒绝;如果没有签字单元,申请也将被拒绝。
买方和分行
- CRM → 账户,针对没有增值税号的沙特客户:买方 ID 类型(TIN、CRN、MOM、MLS、700、SAG、NAT、GCC、IQA、PAS 或其他)和买方 ID 号。如果留空,则使用 CR 号作为 CRN。
- 分行可以拥有自己的 CR 编号和国家地址;盖有该分行印章的发票会使用这些信息。
第二阶段邮政部门的工作内容
- 第一阶段检查的所有内容,以及 XML 中缺少的所有内容,都会同时进行检查,并在句子中用 ZATCA 规则编号命名。
- 选取分行的单位(或默认值),并为发票分配该单位的下一个计数器(ICV)和上一张发票的哈希值(PIH)。即使同时过账的五十张发票,也会获得连续的五十个计数器。
- UBL 2.1 发票生成后,经过哈希处理 (SHA-256)、加盖单位密钥 (ECDSA) 并进行检查。
- 简化版发票上的二维码包含九个标签(第九个是证书签名),标准版发票上的二维码包含八个标签,取代了第一阶段的五个标签。
- 如果发布失败,则不会消耗任何资源:计数器将被返还。
印章、哈希值、计数器和UUID与金额一样具有最终效力。第一阶段的公司以及其他国家的每一家公司,其发布方式都与之前完全相同。
向 ZATCA 提交一份文件
会计 → 结算与合规 → 电子发票 → ZATCA 入职流程会列出每个签署单元及其环境、状态、已完成步骤、发生情况、已通过的检查、证书到期日、剩余天数和待续期信息。请先在 ZATCA 签署单元中注册该单元。除非有人在“角色”屏幕上被授予 ZATCA 入职流程权限,否则只有管理员才能执行步骤操作;其他具有会计显示权限的用户可以看到此列表,其中没有任何秘密信息。
- 在 Fatoora 门户网站上,公司授权人员选择“上线新解决方案单元/设备”,即可获得一次性密码 (OTP):六位数,一次性使用,有效期一小时。请像交出密码一样交出此密码;系统绝不会存储此密码。
- 上线(OTP):选择环境(开发者门户沙箱、模拟或生产环境),然后输入 OTP。系统将生成并发送密钥对和证书签名请求;ZATCA 将返回合规性证书(合规性 CSID)。如果 OTP 被拒绝,设备将保持请求等待状态:请获取新的 OTP 并再次点击“上线”。
- 进行合规性检查:向 ZATCA 提交单位注册的每种文件的样本。例如,发票类型为 1100(标准和简易)的单位需提交六份样本:标准发票、贷项通知单和借项通知单,以及简易发票、贷项通知单和借项通知单。每份样本都必须通过检查;请仔细阅读所有警告信息。
- 申请生产证明:此后,该单位会在公司发票上盖章,并向ZATCA进行结算或申报。证明的有效期会予以显示。
- 在证书过期前,使用门户网站上提供的新的一次性密码 (OTP) 更新现有加密印章标识符。设备会持续使用当前密钥进行印章更新,直到收到新证书,计数器链才会停止。
从证书到期前 30 天开始,每日作业 ACCT-ZATCA-WATCH 每天为每个单元发出一次财务警报、通知和自动化收件箱条目。
清关和报告
- 标准(B2B)发票或票据在过账保存后会立即发送至 ZATCA 进行清算,邮政系统会告知清算结果为已清算、已拒绝或将重试。只有 ZATCA 清算后的 XML 文件及其二维码才能打印或提供给买方:仍在待处理状态的标准发票或任何被拒绝的文件均无法打印,并且拒绝信息会说明原因。
- 系统会立即生成带有印章和九标签二维码的简化版(B2C)发票,并在24小时内上报至ZATCA系统。上报过程首先在后台进行,然后通过每小时运行一次的作业ACCT-ZATCA-SUBMIT完成。如果发票在生成后20小时内仍未上报,系统将发出财务警报。
- 如果无法访问 ZATCA,则会尝试再次访问同一文档(相同的 UUID 和哈希值),但等待时间会逐渐增加,最长可达每小时一次。接受带有警告的请求后,警告信息将被保留并显示。
- 如果 ZATCA 已关闭许可,则会报告相同的已签署文件,并且仪表板会显示上次关闭许可的时间。
- AR 发票显示了沙特公司的 ZATCA 列,并提供重新提交给 ZATCA、重新签发(被 ZATCA 拒绝)、带有 ZATCA XML 的 PDF/A-3 以及发票上的 ZATCA 日志。
ZATCA 提交
每张发票和单据都盖有第二阶段的印章,并附有 ZATCA 的说明,标记如下:已清算、已报告、警告(已接受但有警告)、已拒绝或待处理。各列包括尝试次数、等待时间、下次尝试次数、ZATCA 的说明以及重新签发状态。
- 立即发送到期文档会清除或报告所有下次提交截止日期临近的文档。重新提交会再次发送一份文档:同一份文档,具有相同的 UUID 和哈希值。
- 重新签发适用于被拒收的文件。被拒收的文件不会原样再次寄送:重新签发会在账簿中作废该文件(其记录会被撤销),并生成一份草稿副本,以便进行更正后作为新文件寄送,并附上下一个计数器。被拒收的文件连同ZATCA的答复一起存档。
- PDF/A-3 格式(含 XML)会将发票以 PDF 格式导出,并在其中嵌入电子发票 XML 文件(标准发票为已清理的 XML 文件,简易发票为已盖章的 XML 文件)。“买方 XML”格式则仅导出 XML 文件。
- ZATCA 日志记录了关于该发票的每一个请求以及 ZATCA 的答复。
仪表盘、日志和存档
- ZATCA 控制面板:每个签署单元,有多少发票已清算、已报告、已接受但有警告、已拒绝和待处理;最长的待处理时间(以小时为单位)以及超过 24 小时的待处理发票数量;30 天内的拒绝数量和最新的拒绝数量;证书到期日和剩余天数。
- ZATCA API 日志:记录每次对 Fatoora 的调用(包括注册、合规性检查、许可和报告),包括 HTTP 响应、结果、消息和耗时。OTP、密钥和授权标头会在写入前被移除。仅追加记录。
- ZATCA 档案库:包含所有已签发的盖章文件、已清算的文件以及 ZATCA 答复,每个文件均附有其 SHA-256 校验码。仅支持追加:数据库不允许任何更改或删除操作。记录将根据公司要求保存至少六年(沙特阿拉伯增值税记录保存期限;如果您的税务顾问建议,资本资产或房地产的记录保存期限可能更长)。下载即可获取已存档的文件。
在 ksademo 上进行演示:沙特演示公司拥有一个沙盒单元 EGS-SBX-01。在 ZATCA Onboarding 中,选择 Onboarding (OTP),环境为 Developer Portal sandbox,OTP 为 123345;运行合规性检查;申请生产证书(沙盒会颁发共享的示例证书)。在 ZATCA Signing Units 中,将 EGS-SBX-01 设置为默认单元,而不是测试单元 EGS-DEMO-01;在沙特税务管辖区勾选 ZATCA Phase 2;并发布一份税务发票(已清算)和一份简化的税务发票(已申报)。要重置,请取消勾选 Phase 2 并将 EGS-DEMO-01 再次设置为默认单元。沙盒文档并非税务发票。
关闭第二阶段后,新发布的条目将恢复为第一阶段;已盖章的条目保留其印章,并仍会被清除或报告。已盖章的条目可以被暂停,但永远不会被删除。
另请参阅沙特阿拉伯电子发票:ZATCA 第一阶段。