ARTICLE · 1148682
【AI】沙特ZATCA电子发票验证最终步骤
可以。完成官方全流程测试,应使用 Fatoora Simulation(模拟环境)。你负责登录企业账户并生成设备 OTP,我负责 Quotation 的证书配置、合规测试、报送和清算验证。
1. 使用什么账户
需要企业在 ZATCA 注册的纳税人账户(ERAD),通常使用 TIN 或注册邮箱+密码登录。Developer Portal 的开发者账号与这个账户不同,仅有开发者账号不能代替企业账户完成 Simulation 设备注册。ZATCA 平台说明[1]
如果目前没有企业账户,请让公司财务或税务负责人提供已授权的账户使用方式。你可以自己完成登录,无需把账户密码发给我。
2. 登录并切换到模拟环境
1. 打开 Fatoora 平台[2]。 2. 使用企业 ZATCA 账户登录,完成页面要求的身份验证。 3. 点击右上角 “FATOORA Portal Simulation” 或 “Fatoora Simulation Portal – Try it out”。 4. 阅读模拟环境条款,勾选确认并继续。 5. 确认当前页面明确显示 Simulation。
Simulation 与生产平台的设备、证书独立,需要分别注册。官方开发者社区操作说明[1]
3. 生成设备注册 OTP
在 Simulation 页面中:
1. 点击 “Onboard New Solution Unit/Device”。 2. OTP 数量先选择 1,用于当前测试设备。 3. 完成验证码等页面要求。 4. 点击 “Generate OTP Code”。 5. 复制生成的 OTP,并记录生成时间。
该 OTP 有效期为 1 小时,建议等我们准备好设备资料后再生成。它是设备注册 OTP,与登录时的短信验证码用途不同。ZATCA OTP 操作说明[3]
4. 需要准备给我的资料
先提供以下信息,OTP 可以最后提供:
平台登录用的 TIN 与发票使用的 VAT 号码要分别核对,不能互相替代。 CSR 中的 VAT 必须匹配生成 OTP 的账户企业,否则可能出现 Invalid-OTP。ZATCA 支持说明[4]
5. 收到资料后,我会执行的完整验证
1. 在本机生成专属私钥和 Simulation CSR。 2. 使用 OTP 申请合规证书 Compliance CSID,核对证书与私钥匹配。 3. 提交六类合规样本:标准/简易发票,以及各自的贷项、借项通知。 4. 全部满足合规要求后,申请 Simulation 环境的正式业务证书。接口名称可能含 production/csids,但请求仍限定在 Simulation。5. 使用企业真实卖方资料,重新生成三个业务场景及关联预付款的 XML、PDF。 6. 先通过本机 SDK,再执行简易发票 Reporting、标准发票 Clearance。 7. 保存官方响应、清算后的 XML、PDF、二维码及验证结果。
现有演示包使用本地测试证书,不能直接证明官方接受;进入上述流程后需要重新生成和签名。
你现在可以先协调企业账户并准备企业资料。准备完成后再生成 OTP,然后告诉我:“这是 Simulation OTP,生成时间为……,请开始全流程验证。”
References
[1] ZATCA 平台说明: https://zatca1.discourse.group/t/fatoora-simulation-portal/486[2] Fatoora 平台: https://fatoora.zatca.gov.sa/[3] ZATCA OTP 操作说明: https://zatca1.discourse.group/t/otp-needed-for-compliance-api/5510[4] ZATCA 支持说明: https://zatca1.discourse.group/t/invalid-otps-in-simulation-env/3765