11 · Verifactu(AEAT)

◀ 返回目录

Verifactu 是西班牙税务局(AEAT)根据 RD 1007/2023 为可验证开票系统(SIF)建立的制度。启用 Verifactu 后,Factuzam 开具的每张发票或小票都会:

本章介绍配置方式、自动工作流程,以及可以执行的税务操作 (作废、更正、补正等)。

Factuzam 支持三种税务模式

模式 用途
SIN过渡期或演示:不创建 SIF 记录,也不建立 AEAT 队列。
VERIFACTU通过队列向 AEAT 发送记录。
NO_VERIFACTU在本地记录链,并允许导出事件和开票 XML;必须使用证书签名。

Verifactu 是一个跨模块子系统:它会影响 销售发票以及 简化发票与 Caja POS。本章统一说明这些功能。


1. 工作方式(概览)

   Venta / Factura
        │
        ▼
  Se encola  ──►  fza_verifactu_cola  (estado PENDIENTE)
        │
        ▼
  Hilo de envío en segundo plano (cada X segundos)
        │   reclama filas PENDIENTE → PROCESANDO
        ▼
  Envío a la AEAT (SOAP, certificado de la empresa)
        ├── Aceptado ─► ENVIADA · factura CONSOLIDADA · genera QR y hash
        └── Error    ─► reintento con espera creciente; al agotar, ERROR

要点:


2. 预先配置(管理员)

启用 Verifactu 前必须准备三项内容:

2.1 公司证书

Archivo ▸ Empresas ▸ Certificado / Verifactu 中填写证书序列号及类型。 应用程序使用 Windows 证书存储中的该证书,对发往 AEAT 的内容进行签名。 没有有效证书时,发送会失败。

2.2 Verifactu 参数

Otros ▸ Parámetros del entornoVerifactu 类别中:

参数 含义
Modo fiscalSINVERIFACTUNO_VERIFACTU。只应由管理员更改。
EntornoPRE(AEAT 测试)或 PRO(真实生产)。
NIF del SIF开票信息系统的 NIF。必填:为空时,AEAT 会返回 «[1100] NIF» 错误(见诊断)。
Razón social del SIF系统生产者的名称/法定名称。
Id. de instalación当前安装的标识符。
Segundos de ciclo发送进程检查队列的间隔(默认 60 秒)。
Máx. intentos发票标记为 ERROR 前的重试次数(默认 10)。
URLs de QR y de envío(PRE/PRO)AEAT 二维码核验和发送地址;默认已填写。
Firma con certificadoNO_VERIFACTU 模式下,使用公司证书通过 XAdES 签署本地记录。
Servidores NTP / margen reloj税务时间控制;计算机时钟不可靠时阻止生成记录。

首先切换到 PRE,针对 AEAT 测试环境进行测试。 在 PRE 中,纳税人 NIF 必须已登记到测试名册,并与证书有关联。 只有一切正常后才切换到 PRO

2.3 启用

选择税务模式


3. Verifactu 菜单

安装子系统后,主菜单会显示 Verifactu,包含两个选项 (均可通过权限按组隐藏):

Verifactu
├── Declaración Responsable
└── Verifactu Log

税务队列与其他集成统一放在 Otros ▸ Colas de envíos ▸ Verifactu

责任声明(Declaración Responsable)

显示开票系统的责任声明文本(RD 1007/2023 第 13 条), 其中包含系统名称(Factuzam)、标识符、已安装版本, 以及参数中配置的生产者/安装数据。该文件用于证明软件符合法规。

责任声明

发送队列(Cola de Envíos)

路径: Otros ▸ Colas de envíos ▸ Verifactu

用于查询通信队列fza_verifactu_cola):显示每张待处理或已处理发票的 状态尝试次数下次尝试日期,以及发生错误时的错误消息

状态 含义
PENDIENTE已入队,等待进程发送。
PROCESANDO进程正在发送。
ENVIADA已被 AEAT 接受并合并入账。
ERROR重试耗尽,需要检查。

Verifactu 发送队列

手工重新处理:在该界面中可以编辑一行的 EstadoIntentosPróximo intento 列。保存后,进程会在下一周期重新处理。 这是修正原因(例如 SIF NIF 或证书)后,重新发送处于 ERROR 的记录的方法。其余列为只读。

Verifactu Log

用于查询链式事件记录fza_verifactu_eventos): 完整追踪新增、作废和 AEAT 响应,以及其 SHA-256 指纹链。 这是系统审计界面,仅供查看。

Verifactu Log

NO_VERIFACTU 模式中,Exportar NO*VF 按钮会生成两个 XML 文件: 事件记录和开票记录。导出只会打包已生成的记录,不会在此时创建追踪链。

NO VERIFACTU 导出


4. 发票资料中的 Verifactu

打开普通或简化草稿时,可以使用两个专用标签页和一个按钮:

Otros 标签页中,如果不是普通境内销售,可以指定 Verifactu 操作类型: 欧盟内服务、欧盟内货物交付、反向征税或出口。对于外国客户,应用程序会使用 国家和 NIF-IVA/证件数据构建正确的收件人。

草稿中的 Verifactu 操作类型

发票的 Verifactu 标签页

合并入账的草稿(ESCONSOLIDADA = S)已经完成税务关闭, 不能修改或删除:任何更正都必须通过更正发票作废完成 (见下文)。这是 SIF 不可篡改原则。


5. 已开具发票的税务操作

已登记发票不能直接修改,因此 Verifactu 会根据需要提供不同处理方式。 这些操作可在 Borradores 列表和 Caja POS 的 Buscar operaciones 中使用, 但单据必须已经合并入账

需要… 操作 作用
作废不存在或错误的销售Anular (Verifactu)加入一个作废记录。发票变为 CANCELADA
更正金额或项目Rectificar创建一张差额更正发票(负数更正)或替代更正发票(正确内容为正数),始终关联原发票。
AEAT 接受记录但带有错误,而已开具发票本身正确Resolver incidencia ▸ Subsanar el registro使用补正标志重新发送更正后的记录,不创建另一张发票。
已开具发票中记录了错误 NIF 或其他数据Resolver incidencia ▸ Emitir rectificativa R4为正确收件人创建替代更正发票,并关联原发票。
客户要求将小票转为实名发票Facturar ticket (F3)创建一张替代简化发票的普通发票,复制其明细并写入客户名称。
客户在销售收款时提供身份信息收款阶段使用 Factura (F8)将销售直接保存为普通发票(不是小票);要求客户有 NIF,并以 A4/PDF 打印。

差额更正与替代更正

Buscar operaciones 更正小票时,Factuzam 会在打开新收银操作前询问模式:

类型 新单据 实际结果
Por diferencias以负数显示明细,只保留所需更正。原发票与更正发票共同形成最终结果,适用于部分退货或具体差额。
Sustitutiva以正数显示应保留的完整正确内容。更正发票替代原发票。销售清单不再统计原简化发票,而统计替代发票。

两种情况都会保留单据之间的关系、更正系列、原因和税务追踪。 替代模式还会用更正单据的仓库移动替换原单据移动;差额模式保留原移动, 并按正负号增加调整。

分步操作见 TPV ▸ 更正小票

处理 Venta Mayor 中的 «Aceptado con errores»

Factura Venta Mayor 中打开发票的 Verifactu 标签页。 只有最新记录处于 Aceptado con errores 且没有正在进行的补正时, 才会显示 Resolver incidencia 按钮。

模态窗口显示 AEAT 返回的代码和说明,并要求选择以下情况之一:

  1. 已开具发票正确。填写原因并使用 Subsanar el registro。 Factuzam 会加入一条带 <Subsanacion>S</Subsanacion> 的新建记录, 不修改或替换发票。
  2. 错误数据出现在已开具发票上。选择正确客户、系列和日期。 Factuzam 会创建并加入一张关联原发票的替代更正发票 R4

因此,NIF 错误可能造成 Aceptado con errores,但这本身不能决定处理方式。 如果正确 NIF 已在发票上,只是报送记录构建错误,则进行补正; 如果交付客户的发票包含错误 NIF,则开具 R4。补正被接受后, 原始新建记录的响应、XML 和签名仍保留在历史记录中。

发票中的税务操作按钮

以上每项操作都会重新入队:在 VERIFACTU 模式下发送至 AEAT, 或在 NO_VERIFACTU 模式下本地登记,并保留追踪关系 (哪张单据更正或替代哪张)。适用时,列表还会显示 «Cola Verifactu» 列, 其中包含最新状态。

AnularRectificar:作废会在税务上取消发票; 更正则通过开具另一张引用原发票的单据来修正。修改金额通常应使用更正


6. 常见问题诊断

发票在队列中保持 ERROR打开 Otros ▸ Colas de envíos ▸ Verifactu,阅读该行的错误消息。 常见原因:

修正原因后,通过编辑队列行(状态 → PENDIENTE,尝试次数 → 0) 重新启动发送,或提高最大尝试参数:进程只会自动恢复仍有可用尝试次数的 ERROR 行。

系统可自行处理重复记录:如果 AEAT 已接受,但本地保存失败, 重试时 AEAT 会返回“记录重复”,应用程序会将其视为成功,无需操作。


7. 日常工作摘要


◀ 从旧版迁移 · 目录 · 下一章 ▶ 变更与新功能