Verifactu-API v3.0: Nuevas funcionalidades y mejoras de rendimiento

Procesamiento en lote, webhooks inteligentes y una mejora del 40% en los tiempos de respuesta.

← Volver al Blog Ver Documentación

Resumen de la versión

La versión 3.0 se centra en el rendimiento y la fiabilidad en producción. Presentamos procesamiento en lote, webhooks inteligentes y mejoras en la latencia de nuestras rutas críticas.

Procesamiento en lote

Ahora puedes enviar hasta 1,000 facturas en una sola llamada. El procesamiento es asíncrono y el estado se consulta mediante un jobId.

// Node.js
import { VerifactuAPI } from '@verifactu/sdk';
const api = new VerifactuAPI(process.env.VERIFACTU_API_KEY);
const batch = await api.facturas.crearLote([{ /* ... */ }, { /* ... */ }]);
console.log(batch.jobId); // Guarda este id para consultar estado

Consultar estado del lote

const estado = await api.facturas.estadoLote(batch.jobId);
if (estado.completado) {
  console.log(estado.resumen.ok, estado.resumen.error);
}

Webhooks inteligentes

Los webhooks incluyen firma criptográfica, reintentos con backoff exponencial y deduplicación mediante eventId.

// Express.js
app.post('/webhooks/verifactu', (req, res) => {
  const firma = req.header('X-Verifactu-Signature');
  if (!verificarFirma(firma, req.rawBody)) return res.sendStatus(401);
  const evento = req.body; // eventId, type, data
  // idempotencia
  if (yaProcesado(evento.eventId)) return res.sendStatus(200);
  procesarEvento(evento);
  res.sendStatus(200);
});

Mejoras de rendimiento

  • −40% de latencia media en creación de factura.
  • Optimización de consultas internas y caché de destinatarios.
  • Compresión y streaming en descargas de PDFs.

Guía de migración

  1. Actualiza tu SDK a la versión más reciente.
  2. Activa la verificación de firma en tus webhooks.
  3. Revisa los cambios de respuesta en documentación.

Recursos

Probar en Playground
Resumen de la API
Precios

¿Por qué elegir la Verifactu API?

Con la Verifactu API obtienes una plataforma robusta para integrar facturación electrónica sin fricción. Nuestro enfoque prioriza la resiliencia, la observabilidad y la simplicidad para desarrolladores. Además, la documentación y los SDKs hacen que la API Verifactu sea rápida de adoptar en equipos de cualquier tamaño.

Ejemplos prácticos

Node.js con variables de entorno

import { VerifactuAPI } from '@verifactu/sdk';
const api = new VerifactuAPI(process.env.VERIFACTU_API_KEY);

const factura = await api.facturas.crear({
  emisor: { nif: 'B00000000' },
  receptor: { nif: '00000000A', nombre: 'Cliente Demo' },
  lineas: [ { concepto: 'Servicio', cantidad: 1, precio: 9.99 } ],
  fecha: new Date().toISOString()
});
console.log(factura.qr);

Python (HTTP directo)

import os, requests
API_KEY = os.getenv('VERIFACTU_API_KEY')
res = requests.post('https://api.verifactu-api.com/v3/facturas',
  headers={'Authorization': f'Bearer {API_KEY}'},
  json={
    'emisor': {'nif': 'B00000000'},
    'receptor': {'nif': '00000000A', 'nombre': 'Cliente Demo'},
    'lineas': [{'concepto': 'Servicio', 'cantidad': 1, 'precio': 9.99}]
  }
)
print(res.json().get('qr'))

Errores comunes y cómo resolverlos

  • 401 Firma inválida en webhooks: verifica la cabecera y el cuerpo crudo antes del parseo. Consulta Webhooks inteligentes.
  • 409 Factura duplicada: usa idempotencyKey en llamadas críticas.
  • 422 Validación de destinatario: utiliza la ruta de validación previa y normaliza campos.

FAQs

¿La Verifactu API sirve para entornos multi-tenant?

Sí. Puedes aislar credenciales por CIF/NIF y registrar metadatos por cliente para auditoría.

¿Cómo escalo el rendimiento?

Activa procesamiento en lote y controla concurrencia en workers. Revisa esta guía de rendimiento.

Enlaces internos recomendados