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