Share
Índice de contenidos

Plugin Verifactu para FacturaScripts

Este plugin añade soporte para Verifactu: Veri-factu es el sistema de la AEAT (Agencia Tributaria Española) para la recepción automática de facturas emitidas. Forma parte del marco legal establecido por la Ley Antifraude y afectará a todas las empresas y autónomos que emiten facturas en España.

¿Es obligatorio?
Sí, es obligatorio para todas las empresas y autónomos ubicados en España, aunque la entrada en vigor es progresiva:

– 1 de enero de 2026: Obligatorio para empresas (personas jurídicas).
– 1 de julio de 2026: Obligatorio para autónomos (personas físicas).

❎ Excepciones:
– Los autónomos o empresas residentes en el país vasco quedan excluidas de Verifactu. Deben usar Ticketbai.
– Las empresas acogidas en el Suministro Inmediato de Información (SII) también están excluidas.

🧪 Modo de pruebas:
– En el modo de pruebas las facturas se mandan al entorno de pruebas de hacienda, que es como el real, pero sin riesgos.
– El modo de pruebas está forzado en el plugin hasta finales de diciembre. Para evitar que metas la pata y mandes facturas de prueba al entorno real de hacienda.
– En Enero simplemente desactiva el modo de pruebas y ya está ✅

Cómo configurar Verifactu

Cómo configurar Verifactu

El plugin Verifactu es multi-empresa, por lo que podrás tener varias emrpesas y cada una con su configuración correspondiente.

Como siempre menú Administrador → Plugins para activar el plugin Verifactu, luego desde el menú Administrador → Empresas, abrimos la empresa deseada y vamos a la parte de abajo para configurarla.

La configuración es bastante sencilla:

  • Certificado: Se deberá subir un certificado válido por la AEAT, de autónomo o de empresa.
  • Contraseña: Añadir la contraseña de dicho certificado.
  • Vencimiento: Aquí verá la fecha de vencimiento del certificado, ademas hay un proceso cron que avisará por email a todos los administradores cuando queden 14, 7 y 1 día para caducar.
  • Nombre del representate: Si el certificado es de representante se guardará el nombre. No debe hacer nada aquí.
  • CIF del representante: Si el certificado es de representante se guardará el CIF. No debe hacer nada aquí.
  • Sello: Si el certificado es de tipo sello se marcará solo como tal. No debe hacer nada aquí.
  • Modo depuración: en este modo, los datos se envían al entorno de pruebas de Verifactu, no al entorno real. Este es el modo que se debe usar para hacer pruebas y ver cómo funciona Verifactu.
    • Podrás realizar todas las pruebas que quieras, cuando pases al modo real (simplemente desactivando el checkbox y guardando) se eliminarán todos los eventos asociados (no las facturas). Si está en modo real y ya tiene registros no podrás cambiar al modo de pruebas.

También verás el botón abajo del todo «Cambiar certificado Verifactu», donde mostrará una ventana flotante para subir un nuevo certificado con su contraseña y cambiar el certificado actual.

Al cargar el certificado el sistema leerá el mismo para verificar si es válido, ademas de obtener los datos corrspondientes para saber si es un certificado de tipo sello, de representante y su fecha de vencimiento. El cron avisará a todos los administradores del sistema 14 días, 7 días y 1 día antes de su vencimiento para que suban un certificado actualizado.

🛠️ Configurar el ejercicio

El plugin permite trabajar en modo Verifactu y NO-Verifactu, pero dicha configuración se hace a nivel del ejercicio. Una vez elegido un modo para el ejercicio solo se podrá cambiar si no tiene registros ya vinculados, en caso contrario no se podrá cambiar.

  1. Cuando el próximo ejercicio del año siguiente se creé de forma automática siempre copiará el modo del ejercicio anterior.
  2. Si quieres cambiar el modo para el ejercicio próximo, debes crear el ejercicio manualmente y elegir el nuevo modo para ese nuevo ejercicio.
✅ Validaciones

Siempre que se intente realizar una acción, el plugin verificará si la empresa está bien configurada. La pestaña de Verifactu, dentro de la factura, no aparecerá a menos que se cumplan estas condiciones:

  1. El plugin Verifactu está activado.
  2. El país de la empresa es España.
  3. El cif/nif de la empresa es válido.
  4. Se ha añadido el certificado a la empresa.
  5. Existe contraseña del certificado.
  6. La empresa no tiene configuración activa con Ticketbai.
  7. La empresa no tiene configuración activa con InformeSII.
  8. El ejercicio tiene configurado el modo Verifactu o NO-Verifactu.
  9. La instalación está registrada. Para las instalaciónes en factura.city esto ya se cumple.
  10. Los decimales están configurados a 2 en el panel de control.
  11. El cif de la empresa debe ser válido.

    🚫 La pestaña Verifactu no aparece en la empresa

    Resumiendo, si no se cumplen las condiciones anteriores, no aparecerá la pestaña Verifactu en la empresa.

    Excepciones:
    • Los autónomos o empresas residentes en el país vasco quedan excluidas de Verifactu. En su lugar deben usar Ticketbai.
    • Las empresas acogidas en el Suministro Inmediato de Información (SII) también están excluidas.

Cómo enviar una factura a Verifactu

Una vez tenemos el plugin configurado y la factura creada, podremos enviarla a Verifactu.

Vamos al menú Ventas → Facturas, abrimos o creamos la factura. Veremos una pestalla llamada Verifactu en la parte de arriba, en ella tendremos las primeras opciones para hacer el primer envío de la factura.

  1. Clicando sobre el botón «Enviar alta» enviaremos la factura a Verifactu.
  2. Clicando sobre el botón «Marcar como enviada desde un tercero» se marcará la factura como que ya se mandó a Verifactu desde otro programa. Está opción solo tiene sentido cuando la factura es importada desde otro programa.

Una vez enviada podrás ver el QR, y más opciones como subsanarla, anularla y sus registros en la parte inferior.

Desde el listado de facturas puedes usar el filtro «Enviada a Verifactu» para saber que facturas están enviadas y cuales no.

Envío automático

Desde el menú Administrador → Panel de control, y luego en la pestañá de estados. Puede filtrar por el tipo de estado factura de cliente. Al abrir el estado veras la opción «Enviar a Verifactu». Esto lo que hace es que en el momento que la factura se ponga en ese estado, si estamos en el modo Verifactu la enviará, si estamos en el modo NO-Verifactu creará los archivos necesarios de firma.

Nota: Para los estados por defecto como «emitifda», esos estados están bloqueados y no se pueden editar hasta que previamente se desbloqueé, revise está documentación del programa para saber como hacerlo: https://facturascripts.com/publicaciones/estados-del-documento-680#mdh11

Cómo subsanar una factura en Verifactu

Para realizar una subsanación de una factura en Verifactu primero debe estar enviada a Verifactu. Dentro de la factura en la pestaña de Verifactu, ahora tendrás las opciones de subsanar y anular disponibles.

Puedes realizar todas las subsanaciones que necesites sobre la misma factura, no hay límite. Ten en cuenta que solo podrás cambiar datos del cliente, en ningún caso se permite modificar las líneas u otros datos que no sean los del cliente.

Vamos al menú Ventas → Facturas, abrimos la factura. Clicando sobre el botón «Enviar subsanación» crearemos un registro para subsanar dicha factura con los datos del cliente actuales de la factura.

Los datos permitidos a modificar son los siguientes:

  • CIF/NIF
  • Nombre del cliente o razón social
  • Dirección
  • Apartado
  • Código postal
  • Ciudad
  • Provincia
  • País

Todos estos datos los encontrarás en el botón «Detalle» al lado o debajo del cliente de la factura.

Cómo anular una factura en Verifactu

Para realizar una anulación de una factura en Verifactu primero debe estar enviada a Verifactu. Dentro de la factura en la pestaña de Verifactu, ahora tendrás las opciones de subsanar y anular disponibles.

Anular una factura no es lo mismo que hacer una factura rectificativa, el 99% de las veces debes crear una factura rectificativa para corregir errores o modificar datos de la factura original. La anulación se utiliza cuando la factura ya no es válida, no la tiene el cliente, no está contabilizada o el programa no permite eliminar la factura original.

Vamos al menú Ventas → Facturas, abrimos la factura.

  1. Clicando sobre el botón «Enviar anulación», nos preguntará si estamos seguros de anular dicha factura.
  2. Clicando sobre el botón «Marcar como anulada desde un tercero» se marcará la factura como que ya se mandó la anulación a Verifactu desde otro programa. Está opción solo tiene sentido cuando la factura es importada desde otro programa.

    Una vez anulada ya no hay vuelta atrás. El QR desaparecerá y no tendrá efecto ya que no se puede verificar una factura anulada.

Cómo ver informe de registros de facturas y eventos

Vamos al menú Informes → Verifactu, aquí podremos sacar un informe de las facturas enviadas, como ver nuestros registros de facturas o eventos.

Pestaña buscar

Este apartado nos permite hacer una consulta a la AEAT para saber que facturas tiene registradas en su sistema. Podremos ver una datos resumidos y descargar un archivo JSON con toda la información de cada factura.

Pestaña facturas

Cada vez que enviamos un alta, subsanación o anulación de una factura se crea un registro de factura. Una factura puede tener un registro de alta, muchos registros de subsanación y un registro de anulación. Desde cada una de las facturas en su pestaña de Verifactu podrás ver los registros de facturas exclusivos de esa factura. Cada registro de factura tiene un campo estado, si está vacío significa que está pendiente de envío.

  • Modo Verifactu: En el modo Verifactu todos los registros de facturas se mandarán a la AEAT cada X tiempo mediante el cron, es obligatorio tener el cron configurado.
  • Modo NO-Verifactu: En el modo NO-Verifactu los registros de factura no se mandan a la AEAT, los registros de factura se quedan guardados en la instalación por si lo solicitan bajo requerimiento.
Pestaña eventos

Los registros de eventos solo se guardan cuando alguno de los ejercicio está configurado en modo NO-Verifactu. Es necesario el cron para poder crearlo. Los registros de eventos son un control sobre los datos del programa, por ejemplo, controlan que los registros de factura guardados este correctamente guardados y no tengan datos inconsistentes. Este proceso es automático y no debe hacer nada, se ejecutará cada X tiempo.

Cómo crear y enviar un requerimiento

Un requerimiento es cuando la AEAT pide se manden los registros de factura guardados, ya sean entos registros de factura en modo Verifactu o NO-Verifactu, aunque ya esten enviadas las facturas a la AEAT, puede pedir en un requerimiento que se vuelvan a mandar.

Desde el menú Administrador → Empresas, abrimos la empresa podremos ver los requerimientos creados o crear uno nuevo en la pestaña «Requerimientos».

Crear un requerimiento

Al crear un requerimiento para la empresa seleccionada debemos elegir el ejercicio de inicio y el ejercicio de fin, además de introducir un código suministrado previamente por la AEAT. Al guardar el nuevo requerimiento buscará todos los registros de facturas entre los ejercicios especificados y copiará esos registros al requerimiento.

Ver un requerimiento

Desde el mismo sitio donde lo hemos creado anteriormente podemos abrirlo y ver el rquerimiento. El requerimiento tiene un estado a nivel global para saber si esta pendiente, en proceso o completado. De igual forma cada registro del requerimiento tiene su estado para saber si está pendiente de envío, o que estado devolvió la AEAT al enviarlo.

Enviar un requerimiento

El envío es automático mediante el cron, cuando una empresa tiene un requerimiento pendiente siempre se procesará primero el requerimiento, cuando este completado entonces seguirá con los registros de factura normales.

 

El cron de Verifactu

El plugin funciona con el cron para muchos de sus procesos, por lo que es obligatorio tenerlo configurado. Podemos revisar el estado de todos los cron desde el menú Administrador > Logs, pestaña de Historial. Puede realizar un filtro por el canal del cron deseado para revisar su estado.

En el log de cada uno de los cron se almacen información importante del estado de ejecución de ese cron, si por ejemplo, detectas que hace tiempo no se mandan las facturas, puedes revisar el cron, puedes tener algún tipo de fallo en la última factura que impide que pueda seguir, u cualquier otro problema. Si una factura es «AceptadaConErrores», puedes revisar el cron para ver el mensaje de porque tiene ese estado.

Hash y firma de registros de facturas

Existe un cron llamado «verifactu-invoice-hash-signature» que se encarga de crear el hash y firmar los registros de facturas enviados a la cola de envío. De este modo siempre nos aseguramos que los registros de facturas están bien encadenados, por ejemplo, registros de factura 1, 2 y 3. El uno tiene su hash, pero no tiene hash previo, el 2 tiene su hash y el hash del 1, el 3 tiene su hash y el hash del 2. Esto es un requisito obligatorio en el proceso de generación de los registros de facturas.

Hash y firma de registros de eventos

Existe un cron llamado «verifactu-event-hash-signature» que se encarga de crear el hash y firmar los registros de eventos. De este modo siempre nos aseguramos que los registros de eventos esten bien encadenados, por ejemplo, registros de evento 1, 2 y 3. El uno tiene su hash, pero no tiene hash previo, el 2 tiene su hash y el hash del 1, el 3 tiene su hash y el hash del 2. Esto es un requisito obligatorio en el proceso de generación de los registros de eventos

Registros de eventos

Existe un cron llamado «verifactu-event-check» que se encarga de crear los registros de eventos cada X tiempo, solo para los ejercicios configurados en modo NO-Verifactu.

Envío de facturas

Existe un cron llamado «verifactu-invoice-send» que se encarga de mandar la cola de registros de facturas y los requerimientos.

Cómo descargar la declaración responsable

Desde el menú Administrador → Acerca de, puedes ver información útil sonbre toda la instalación, al final de dicha página puedes descargar la declaración desponsable que emite el creador del plugin.

Si eres un revendedor de FacturaScripts, deberás hacer tu propia declaración responsable entre tú y tus clientes.

Como usar la API de Verifactu

El plugin Verifactu dispone de una API para enviar las facturas a la AEAT entre otras cosas, vamos a explicar los ejemplos posibles.

El plugin añade un endpoint llamado «verifactu», el cual se debe pasar siempre el idfactura y un action.

Enviar factura

Existen dos formas de enviar facturas a la AEAT:

  1. Configurar un estado de factura para que cuando la factura tenga ese estado se mande automáticamente, se explica como hacerlo aquí. De este modo usamos el endpoint crearFacturaCliente, y después solo hay que actualizar la factura para cambiar el idestado por el correcto que haga el envío.
  2. Llamando al endpoint verifactu, pasando el idfactura y el action = alta. De este modo le decimos que factura queremos mandar a hacienda.
Subsanar factura

Exactamente igual que el paso 2 de enviar factura, pero el action = subsanacion.

Anular factura

Exactamente igual que el paso 2 de enviar factura, pero el action = anulacion.

Obtener QR

También podemos obtener el QR de la factura siempre y cuando esta este enviada. Pasando como action = qr, recibiremos la imagen qr codificada en base64.

El Equipo IA

Contacta con nosotros y prepara tu empresa con El EquipoIA.

¿Te gustan este tipo de articulos?
Únete a nuestro equipo de autónomos y empresas que quieren estar al día de las noticias e información relevante a nuestro programa y la factura electrónica en España
Plugins
Sigue leyendo