Para desarrolladores

API de Facturatum: integra tu facturación con claves de API y permisos por ámbito

La API REST de Facturatum es la misma que usa su aplicación web, documentada en Swagger y OpenAPI, con claves de API por usuario, ámbitos, caducidad y validación previa de cada factura. El acceso externo con clave se está abriendo de forma gradual: si quieres integrar tu ERP, tu tienda online o tus scripts, pide acceso y te acompañamos.

Probar Facturatum 15 días gratis
Tipo
API REST con JSON, la misma que usa la aplicación
Autenticación
Cabecera `X-Api-Key` con una clave `fkt_…` (o `Authorization: ApiKey …`)
Empresa
Cabecera `X-Company-Id` con el identificador numérico de la empresa
Caducidad
90 días por defecto; sin caducidad solo si lo pides expresamente
Escritura de facturas
Validate-first: token de validación de un solo uso y 30 minutos
Disponibilidad
En despliegue: acceso bajo petición en contacto

Qué es la API de Facturatum y para qué sirve

La API de Facturatum es la API de usuario del producto: las mismas operaciones que hace la aplicación web (facturas, clientes, contabilidad, tesorería, bancos, modelos de Hacienda) disponibles para tus propios programas. No es una versión reducida ni un segundo sistema: lo que creas por API aparece en la app, cuenta para la contabilidad y, al emitirse, genera su registro Verifactu.

Acceso bajo petición. Hoy no hay una pantalla en la aplicación para crear claves de API y el acceso externo con clave se habilita por cliente. Escríbenos contándonos tu integración. Si lo que quieres es usar un asistente de IA, el servidor MCP ya está disponible para todos los usuarios.

Sirve para no teclear dos veces: crear facturas desde los pedidos de tu tienda online, sincronizar clientes con tu CRM, llevar los datos de tesorería a tu cuadro de mando o consultar el resultado del IVA antes de cerrar el trimestre.

Para quién es

  • Equipos técnicos de pymes que quieren unir su ERP, su tienda o su TPV con la facturación.
  • Desarrolladores freelance e integradores que montan automatizaciones para sus clientes.
  • Asesorías con herramientas propias que necesitan leer datos contables o fiscales de sus clientes.
  • Quien quiera usar agentes de IA: para ese caso está el servidor MCP, con OAuth y sobre esta misma API.

Autenticación con claves de API

Cada clave tiene el formato `fkt_<prefijo>_<secreto>` y se envía en la cabecera `X-Api-Key`. Una clave actúa como el usuario que la creó: se aplican sus permisos en cada empresa, su suscripción y sus cuotas, igual que si trabajara en la app. Por eso una clave nunca da más poder que su propietario: si el usuario tiene rol de solo lectura, la clave recibe un 403 al intentar escribir aunque tenga el ámbito de escritura.

  • El secreto se muestra una sola vez, al crear la clave; Facturatum guarda solo su hash.
  • Caduca a los 90 días por defecto; una clave sin caducidad hay que pedirla de forma explícita.
  • La API tiene operaciones para crear, listar (sin secretos) y revocar claves con una sesión de usuario, pero aún no hay pantalla en la aplicación: mientras tanto, las claves se emiten bajo petición. Si no se indican ámbitos, la clave nace con `invoices:read`, `invoices:validate`, `clients:read` y `dashboard:read`.
  • Si creas la clave indicando una empresa (`X-Company-Id`), solo sirve para esa empresa: usarla con otra responde 403.
  • Cada usuario puede tener hasta 10 claves activas, y revocar una no afecta a las demás.
Ámbitos (scopes) disponibles
ÁmbitoPermite
`invoices:read`Consultar facturas
`invoices:validate`Validar una factura antes de crearla o editarla
`invoices:write`Crear y modificar facturas
`clients:read` / `clients:write`Consultar y gestionar clientes
`dashboard:read`Leer el resumen de actividad y las analíticas
`treasury:read` / `banking:read`Leer tesorería, cuentas y movimientos bancarios
`accounting:read`Leer la contabilidad
`tax:read`Leer los modelos de Hacienda y el estado Verifactu
  1. 1

    Consigue una clave con los ámbitos justos

    Pide acceso; para facturar necesitas al menos `invoices:validate` e `invoices:write`. Guarda el secreto en tu gestor de secretos.

  2. 2

    Valida la factura

    Envías el contenido a `POST /api/invoices/validate`. Si es válida, la respuesta incluye un `validationToken`.

  3. 3

    Crea el borrador

    Llamas a `POST /api/invoices` con `asDraft: true` y la cabecera `X-Validation-Token`. El token vale una vez, durante 30 minutos, y está ligado a tu usuario, la empresa y ese contenido. Sin `asDraft`, la factura se emite en la misma llamada.

  4. 4

    Edita si hace falta

    Para un `PUT /api/invoices/{id}` repites la validación y envías un token nuevo.

  5. 5

    Emite con cuidado

    Emitir genera el registro Verifactu y lo remite a la AEAT: es irreversible y exige el permiso de emisión del usuario.

Si creas o editas una factura con clave de API sin `X-Validation-Token`, o con uno ya usado, la API responde 428 Precondition Required y no guarda nada. Emitir no tiene vuelta atrás: una factura emitida solo se corrige con una rectificativa.

Códigos de respuesta que conviene tratar

CódigoQué significa
401Falta la clave o no es válida (caducada o revocada)
402El usuario no tiene una suscripción activa
403La clave no tiene el ámbito necesario, es de otra empresa o el rol del usuario no permite la operación
404El recurso no existe o pertenece a otra empresa
428Escritura de factura sin token de validación válido

Documentación y contrato

El contrato completo está en Swagger (`/swagger-ui/index.html`) y en OpenAPI (`/v3/api-docs`), con los esquemas de autenticación por JWT y por `X-Api-Key`; en producción requieren autenticación. Te damos acceso cuando habilitamos tu integración. La documentación técnica de Politeia Soft está en docs.politeiasoft.com. Si tienes dudas sobre una integración, escríbenos.

Buenas prácticas de integración

  • Crea una clave por integración y dale solo los ámbitos que usa.
  • Usa un usuario con el rol mínimo: solo lectura si la integración solo consulta.
  • No subas las claves al repositorio ni las pegues en un chat; si se filtran, revócalas.
  • Renueva las claves antes de que caduquen en lugar de pedirlas sin caducidad.
  • Envía siempre `X-Company-Id` y comprueba que es la empresa correcta antes de escribir.
  • Crea siempre con `asDraft: true` y emite en un paso aparte: la emisión es irreversible.

Cuánto cuesta

Las claves funcionan con la suscripción del usuario a Facturatum Pro (5,99 € al mes o 59,90 € al año, IVA incluido) y respetan las mismas cuotas que la aplicación. Para pedir acceso, escríbenos.

Preguntas frecuentes

¿Puedo usar ya la API de Facturatum?

El acceso externo con clave de API se habilita bajo petición mientras termina su despliegue. Escríbenos desde la página de contacto con tu caso. Las claves funcionan con la suscripción a Facturatum Pro del usuario; sin suscripción activa, la API responde 402.

¿Puede una clave de API saltarse los permisos del usuario?

No. La clave actúa como su propietario: en cada empresa se aplican su rol y sus permisos. Los ámbitos solo pueden restringir lo que el usuario ya puede hacer, nunca ampliarlo.

¿Por qué tengo que validar antes de crear una factura?

Para que ninguna integración guarde una factura incorrecta. La validación devuelve un token de un solo uso, válido 30 minutos y ligado al contenido; sin él, crear o editar responde 428.

¿Cuánto dura una clave?

90 días por defecto. Puedes crear una sin caducidad indicándolo expresamente, pero es más seguro renovarlas. Cualquier clave se puede revocar en cualquier momento.

¿Puedo conectar un asistente de IA en lugar de programar?

Sí. El servidor MCP de Facturatum usa esta misma API y permite conectar ChatGPT, Claude, Grok u otros clientes MCP con tus permisos y confirmación antes de las acciones irreversibles.