Saltar al contenido

Producto propio · En producción

Factu

Facturación electrónica v4.4 para el Ministerio de Hacienda

Factu emite comprobantes electrónicos de punta a punta: reserva el consecutivo, genera la clave numérica de 50 dígitos, arma el XML v4.4, lo firma con XAdES usando el certificado del emisor y lo envía a Hacienda — para después consultar el estado y entregar el comprobante al cliente final. Todo detrás de una API REST que su sistema puede llamar.

TypeScriptFastify 5PrismaPostgreSQLDocker

209

Pruebas automatizadas

7

Tipos de comprobante

v4.4

Versión de Hacienda

Por qué existe

01

La norma no perdona detalles

Clave de 50 dígitos, consecutivo de 20, XML exacto y firma XAdES válida. Un carácter fuera de sitio es un rechazo, y el rechazo llega después, no en el momento.

02

Construirlo en casa sale caro

Criptografía de firma, sesión OAuth contra el IDP de Hacienda y renovación de tokens no son el negocio de un comercio ni de un ERP vertical.

03

La numeración es un punto crítico

Dos ventas simultáneas que reciben el mismo consecutivo son un problema contable, y un consecutivo quemado por un envío fallido también.

Qué hace Factu

7 tipos de comprobante

Factura, Tiquete, Nota de Crédito, Nota de Débito, Factura de Compra, Factura de Exportación y Recibo Electrónico de Pago (REP, nuevo en v4.4), más el Mensaje Receptor.

Consecutivos sin colisiones

Contador atómico por emisor, sucursal, terminal y tipo. Dos emisiones simultáneas nunca repiten número, y el que no llega a Hacienda se devuelve a la serie.

Firma y sesión gestionadas

Firma XAdES-BES/EPES con el .p12 del emisor y sesión OAuth contra el IDP de Hacienda con renovación automática de tokens.

Estado con re-consulta

Envío a recepción y polling hasta aceptado o rechazado, con re-consulta periódica de los comprobantes que Hacienda dejó sin veredicto.

Entrega al cliente

Correo automático con PDF y XML tras la aceptación, con reintentos, historial y reenvío manual cuando hace falta.

Documentos recibidos

Buzón IMAP o carga manual de las facturas que le emiten a usted, con generación y envío del Mensaje Receptor.

Documentación

Módulo por módulo

01

Emisión

El camino completo de un comprobante, desde la llamada a la API hasta el veredicto de Hacienda.

  • Reserva de consecutivo con contador atómico por emisor, sucursal, terminal y tipo
  • Clave numérica de 50 dígitos y consecutivo de 20 generados según la norma
  • XML v4.4 armado y validado antes de salir
  • Firma enveloped XAdES-BES / EPES con el certificado .p12 del emisor
  • Envío a recepción y consulta de estado con polling hasta aceptado o rechazado
  • Re-consulta periódica de los que Hacienda deja sin veredicto
02

Validación previa

Las reglas de negocio se comprueban antes de contactar al Ministerio, así el error aparece en su flujo y no como un rechazo tardío.

  • Comprobación de estructura y de reglas de negocio antes del envío
  • Errores devueltos en el momento de la llamada, no horas después
  • Menos consecutivos quemados por documentos mal formados
03

Sesión con Hacienda

La parte que más mantenimiento suele exigir, resuelta y persistida.

  • OAuth contra el IDP del Ministerio de Hacienda
  • Renovación automática de tokens, sin intervención manual
  • Tokens persistidos y cifrados en reposo
04

Entrega y documentos recibidos

El comprobante no termina en Hacienda: termina en manos del cliente, y los que usted recibe también hay que responderlos.

  • Correo automático con PDF y XML tras la aceptación
  • Reintentos, historial de entregas y reenvío manual
  • Buzón IMAP o carga manual de las facturas que le emiten
  • Generación y envío del Mensaje Receptor correspondiente
05

Organizaciones, roles y accesos

Pensado para operar varias empresas o varios emisores desde una sola instalación.

  • Multi-tenant: organizaciones aisladas entre sí, con varios usuarios cada una
  • Roles admin, facturador y lector, con permisos diferenciados
  • Acceso por JWT, por OAuth con Google o Microsoft, y por API key para integraciones
  • Límite de peticiones: 300 por minuto en general y 10 por minuto en los endpoints de acceso
06

Integraciones y avisos

Cada evento de negocio puede salir hacia donde su equipo ya trabaja.

  • Webhooks firmados con HMAC hacia su ERP o su contabilidad
  • Eventos: comprobante aceptado, comprobante rechazado, documento recibido y entrega al cliente
  • Canales de notificación: SMS, WhatsApp, Slack, Teams y Bitrix24
  • Listados paginados y documentación OpenAPI para construir encima

Casos de uso

Dónde encaja

01

Su sistema factura, Factu cumple

El ERP o el punto de venta sigue siendo el dueño de la venta; Factu se encarga de clave, consecutivo, firma, envío y estado. No hay que construir criptografía en casa.

02

Validación antes de Hacienda

Las reglas de negocio se comprueban antes de contactar al Ministerio, así que los errores se detectan en su flujo y no como un rechazo días después.

03

Cobros parciales con REP

El Recibo Electrónico de Pago de la v4.4 permite documentar abonos sobre una factura a crédito sin recurrir a notas de ajuste.

04

Cuentas por pagar ordenadas

Las facturas que recibe entran por IMAP, se registran y se responden con el Mensaje Receptor correspondiente, sin revisar el correo a mano.

Cómo se integra en su entorno

  • API REST con OpenAPI/Swagger, JWT, OAuth (Google/Microsoft) y API keys
  • Webhooks firmados con HMAC hacia su ERP o su contabilidad
  • Eventos de negocio: comprobante aceptado, rechazado, documento recibido y entrega al cliente
  • Notificaciones a SMS, WhatsApp, Slack, Teams y Bitrix24
  • Multi-tenant con roles: administrador, facturador y lector
  • Listados paginados y respuestas consistentes para construir su propia interfaz

Seguridad y aislamiento

  • Certificados .p12, tokens del IDP y credenciales SMTP/IMAP cifrados en reposo con AES-256-GCM
  • Sesión en cookie httpOnly y comprobación de Origin contra CSRF en los métodos que cambian estado
  • Cabeceras de seguridad con helmet y límite de 10 peticiones por minuto en login y recuperación
  • Documentación interactiva apagada en producción, porque expone el mapa completo de la API
  • Aislamiento por organización: los comprobantes de un tenant no son visibles desde otro

Despliegue

Dónde puede vivir

Docker Compose

`docker compose up` levanta la API junto a PostgreSQL, listo para probar en una laptop.

PostgreSQL con Prisma

Esquema versionado con migraciones de Prisma, para actualizar sin sorpresas.

Documentación interactiva

Scalar y Swagger UI incluidas en entornos no productivos para explorar la API antes de integrar.

Servidor propio o nube

Contenedor estándar: funciona igual en su servidor, en un VPS o en un servicio gestionado de contenedores.

Preguntas frecuentes

Lo que suelen preguntarnos

¿Necesito mi propio certificado de Hacienda?

Sí. Factu firma con el certificado .p12 del emisor, que es personal e intransferible. Se sube una vez y queda cifrado en reposo.

¿Qué pasa si Hacienda no responde?

El comprobante queda registrado y entra en la re-consulta periódica hasta obtener veredicto. No hay que reenviarlo a mano ni se pierde el consecutivo.

¿Sirve para el REP de la versión 4.4?

Sí. El Recibo Electrónico de Pago está soportado, junto con los otros seis tipos de comprobante y el Mensaje Receptor.

¿Puedo facturar desde mi propio sistema?

Es el uso previsto. Su ERP o punto de venta llama a la API con los datos de la venta y Factu devuelve el comprobante emitido y su estado.

¿Puedo manejar varias empresas?

Sí. Es multi-tenant: cada organización tiene sus usuarios, emisores y comprobantes aislados, y el contador de consecutivos es independiente por emisor, sucursal y terminal.

Siguiente paso

¿Quieres ver Factu funcionando?

Agendamos una demo sobre su caso concreto y le decimos con franqueza si encaja o no.

También desarrollamos

Wapi

Plataforma de conversaciones sobre la WhatsApp Cloud API oficial: mensajería, flujos con IA, colas de atención y campañas.

Escríbenos