Ir al contenido

Veri*Factu ​

Cuando emites una venta, Bilteo genera su registro de facturación Veri*Factu, lo encadena con el anterior mediante una huella y lo remite a la AEAT. Es automático: no tienes que construir ni firmar nada.

Qué genera Bilteo ​

  • Un registro de alta (RegistroAlta) al emitir una venta.
  • Un registro de anulación (RegistroAnulacion) al anular una emitida.
  • Cada registro incluye una huella SHA-256 calculada sobre sus campos clave y la huella del registro anterior del tenant → forman una cadena inalterable.
Factura A (alta) ──huella──▶ Factura B (alta) ──huella──▶ Factura A (anulación) ─▶ …
        └── encadenamiento por tenant: cada registro referencia la huella del previo

Remisión y estados del registro ​

La generación y el envío están desacoplados: el registro nace pendiente y un proceso posterior lo remite a la AEAT. Su estado refleja la respuesta:

EstadoSignificado
pendingGenerado, pendiente de envío.
in-processEnviado, esperando respuesta.
acceptedAceptado por la AEAT.
accepted_errorAceptado con errores (registrado).
rejectedRechazado (no registrado en la AEAT).
unknown_responseSin respuesta firme: error de transporte o respuesta no interpretable. response_code indica la causa (SOAP_CLIENT, HTTP_<status>, INVALID_JSON, INVALID_TYPE). No es un rechazo fiscal; requiere revisión.

Los errores transitorios de red o de la AEAT no cambian el estado: el registro vuelve a pending y se reintenta solo.

Un registro con respuesta firme (rejected, accepted o accepted_error) puede subsanarse.

No hagas polling: usa webhooks

En vez de consultar el estado en bucle, suscríbete a verifactu.accepted / verifactu.rejected y Bilteo te avisa cuando la AEAT responde. Ver Webhooks.

Código QR ​

Cada factura emitida lleva su QR de cotejo de la AEAT (NIF, nº de serie, fecha e importe total), que permite al receptor verificarla. Bilteo lo incrusta al renderizar el PDF.

Lectura de los registros

Con el scope verifactu:read puedes consultar los registros y su estado vía la API. Ver la Referencia.

En pruebas ​

En un tenant de pruebas la remisión va a la homologación de la AEAT, nunca a producción. Incluso puedes desactivar la generación del registro para probar solo tu integración. Ver Entorno de pruebas.

Bilteo · Documentación