BlogHolded API: 5 ejemplos de automatización que sí merecen la pena
Guías

Holded API: 5 ejemplos de automatización que sí merecen la pena

2026-10-148 minPablo Rodríguez
Holded API: 5 ejemplos de automatización que sí merecen la pena

La API de Holded lleva años disponible, pero la mayoría de los tutoriales se quedan en un GET /contacts y una captura de Postman. Si buscas ejemplos de la API de Holded que resuelvan algo concreto —registrar compras, conciliar el banco, conectar el CRM—, hace falta ir un paso más allá del endpoint de prueba. Aquí van cinco automatizaciones sobre la API v2, con la lógica de cada una y los endpoints que necesitas. Antes de tocar código, conviene entender cómo funciona por dentro —tokens Bearer, permisos granulares, límites de uso—; lo tienes desgranado en nuestra guía de la API de Holded.

Lo que necesitas antes de tocar la API v2 de Holded

Antes de montar cualquiera de estas automatizaciones, necesitas un token de la API v2. No el de la v1: los tokens nuevos (pat_...) no funcionan en la versión anterior. La v2 usa la cabecera Authorization: Bearer <token> y permite configurar permisos granulares: alcance Global o por áreas, con niveles que van de Ninguno a Full, repartidos en 11 áreas distintas.

Las respuestas vienen paginadas en formato {"items": [...]}, los campos en snake_case, y si superas el límite de uso recibes un 429 con la cabecera Retry-After indicándote cuánto esperar. Si el token no tiene permiso para lo que pides, responde 403.

Consejo: empieza con un token de solo lectura. Monta las consultas, valida que llega lo que esperas y, cuando todo cuadre, crea otro con los permisos de escritura que necesites. Es la forma más segura de arrancar sin modificar datos por accidente.

Registro automático de facturas de compra recurrentes

Si tu empresa paga cada mes al mismo proveedor —hosting, herramientas SaaS, suministros, asesoría—, alguien entra en Holded, crea la factura de compra, sube el PDF y le da a aprobar. Multiplicado por diez proveedores, son horas al mes que no aportan nada.

La documentación de la API recoge los endpoints necesarios: POST /api/v2/purchases para crear la compra, /purchases/{id}/attachments para adjuntar el documento y /purchases/{id}/approve para aprobarla. La lógica es sencilla:

  1. Un proceso programado se ejecuta el día 1 de cada mes.
  2. Para cada proveedor recurrente, crea la compra con los datos fijos: contacto, concepto, importe, impuestos.
  3. Adjunta el PDF de la factura del proveedor (que puede llegar por email y extraerse automáticamente).
  4. Aprueba la compra para que pase a contabilidad.

El token necesita permisos de Escritura o Full en el área de Compras. Con solo Lectura, el POST devuelve 403.

Conciliación bancaria sin abrir Holded cada mañana

La conciliación es la tarea que más tiempo roba al administrativo medio. Abrir Holded, revisar los movimientos del banco, buscar a qué factura corresponde cada uno y marcarlos como conciliados. Cada día.

La documentación de la API recoge endpoints para listar cuentas bancarias y sus movimientos, crear movimientos manuales y conciliar un movimiento bancario con su factura. Los campos reconciliation_status en los pagos y payments_pending en las facturas indican exactamente qué está cuadrado y qué no.

La automatización sigue esta lógica:

  • Consulta los movimientos bancarios pendientes de conciliar.
  • Cruza la referencia de cada movimiento (concepto, importe, fecha) con las facturas emitidas o recibidas.
  • Cuando hay coincidencia, llama al endpoint de conciliación.
  • Lo que no cuadra se agrupa en un informe para revisión manual.

No es magia: siempre habrá movimientos que no encajan solos —pagos parciales, transferencias con conceptos raros, comisiones bancarias—. Pero el grueso de los movimientos predecibles se concilia sin que nadie toque Holded.

Sincronizar contactos entre tu CRM y Holded

Este es el ejemplo que más impacto tiene en el día a día y el que menos se monta. El equipo comercial trabaja en el CRM (Zoho, HubSpot, Pipedrive, el que sea), administración trabaja en Holded. Los dos gestionan contactos. Los dos tienen fichas de clientes. Y ninguno sabe lo que cambia el otro.

El resultado: el comercial cierra un trato y administración se entera cuando alguien escribe un email pidiendo la factura. O peor: el cliente cambia la dirección fiscal, se actualiza en el CRM y la factura sale con la dirección antigua porque nadie lo cambió en Holded.

La API v2 expone el endpoint /contacts para lectura y tiene webhooks que notifican cuando un contacto cambia. La sincronización bidireccional funciona con dos piezas:

  • De Holded al CRM: un webhook avisa cuando se crea o modifica un contacto en Holded. Tu middleware actualiza la ficha en el CRM.
  • Del CRM a Holded: cuando el comercial cierra un trato, el CRM dispara un evento. Tu middleware crea o actualiza el contacto en Holded con los datos fiscales.

Si además integras Holded con tu CRM, tu tienda y tu banco, esta sincronización deja de ser un parche y se convierte en el eje de la operativa: lo que entra por ventas llega solo a facturación.

Vigilar Verifactu y cobros pendientes sin mirar Holded

Dos consultas que parecen simples pero que evitan problemas serios.

Estado Verifactu por factura. Cada factura emitida en Holded tiene un campo verifactu_status que indica si se ha enviado correctamente a la AEAT. Un cron diario que recorra las facturas del mes y compruebe ese campo te ahorra descubrir un problema cuando ya es tarde. Si alguna factura tiene un estado inesperado, una alerta al responsable —por Telegram, email o el canal que uses— y se investiga antes de que se acumule.

Sobre las fechas de Verifactu: las vigentes hoy (RD 1007/2023, modificado por el RD-ley 15/2025) son el 1 de enero de 2027 para sociedades y el 1 de julio de 2027 para autónomos. El Gobierno anunció el 5 de octubre de 2026 su aplazamiento a octubre de 2028, pero está pendiente de que se publique la modificación del reglamento —hasta que salga en el BOE, las fechas legales siguen siendo las de 2027—. Si ya lo tienes activo o estás preparándolo, asegúrate de que las series están bien configuradas: qué se envía, qué no y qué certificado usas.

Facturas pendientes de cobro. El campo payments_pending indica qué facturas siguen sin cobrar. Un script semanal que filtre por antigüedad —30, 60, 90 días— y genere un informe ordenado por importe es más útil que cualquier dashboard: te dice a quién llamar hoy, no cuántas facturas tienes en total.

Holded API: ejemplos que funcionan mejor conectados al CRM y a la publicidad

Las cinco automatizaciones anteriores ya ahorran horas por sí solas. Pero donde de verdad cambian el negocio es cuando Holded deja de ser una isla y se conecta al CRM y a las campañas de publicidad.

Piensa en la cadena completa: un lead llega por una campaña de Meta o Google, el comercial lo trabaja en el CRM, cierra el trato y automáticamente Holded genera la factura con los datos fiscales que el lead ya rellenó. Sin copiar-pegar, sin esperar a que administración pregunte «a quién facturamos esto».

Y al revés: cuando Holded marca una factura como cobrada, el CRM actualiza el estado del deal. Ahora sabes el ciclo completo: cuánto gastaste en publicidad para conseguir ese cliente, cuánto facturaste y cuánto tardó en pagar. Eso es lo que permite calcular el coste real por cliente conectando ERP y CRM, no el que dice la plataforma de ads.

Somos Solution Partner oficial de Holded y lo que hacemos es exactamente esto: no implantamos Holded suelto, lo conectamos al CRM y a la publicidad para que ventas y facturación se hablen sin intermediarios humanos.

Si tienes Holded —o estás valorándolo— y quieres que la API trabaje conectada a tu CRM y a tu publicidad, podemos verlo en una reunión de una hora, sin coste y sin compromiso. Miramos qué automatizar primero, qué puede esperar y si lo que necesitas encaja con lo que la API permite hoy.

Preguntas frecuentes

¿Qué puedo automatizar con la API v2 de Holded?

Puedes leer y escribir en la mayoría de áreas del ERP: contactos, facturas de venta, compras, pagos, proyectos, movimientos bancarios, leads, presupuestos y más. La documentación recoge endpoints para crear y aprobar compras, adjuntar archivos, registrar pagos en facturas, listar cuentas bancarias, crear movimientos manuales y conciliar movimientos con facturas. También tiene webhooks que notifican cuando algo cambia. Lo que no aparece en la documentación: enviar facturas por email. Y las series de numeración solo están disponibles en la API v1, no en la v2.

¿Necesito programar para usar la API de Holded?

Sí, para montar las automatizaciones descritas aquí necesitas saber programar o contar con alguien que lo haga. La API de Holded es REST estándar y se consume con cualquier lenguaje: Python, JavaScript, PHP o herramientas no-code como Make o Zapier. Si no tienes equipo técnico, una implantación guiada te ahorra semanas de prueba y error. Lo importante es empezar siempre con un token de solo lectura y validar cada endpoint antes de pasar a escritura.

¿Es seguro dar acceso a la API de Holded a un sistema externo?

Depende del token que configures. La API v2 usa permisos granulares: puedes crear un token que solo lea contactos, otro que escriba compras y un tercero que no toque contabilidad. Si conectas una herramienta externa, dale solo los permisos que necesite. Si usas un intermediario como Zapier, Make o un MCP de terceros, ten en cuenta que le estás dando tu token: esa herramienta tendrá el mismo acceso que configures. Por eso la opción más segura es montar la conexión directa sobre la API, con un token de solo lectura por defecto.

¿La API de Holded funciona con Zapier, Make o N8N?

Sí. Zapier y Make tienen módulos específicos para Holded, y con N8N puedes llamar a la API v2 directamente usando nodos HTTP. Para automatizaciones sencillas —crear una compra cuando llega un email, sincronizar un contacto— las herramientas no-code funcionan bien. Para lógica más compleja, como conciliación con cruce de datos o sincronización bidireccional con reglas de conflicto, la conexión directa vía API da más control. En cualquier caso, el token es el mismo: un Bearer token de la v2 con los permisos que configures.

¿Tiene Holded un MCP para conectar con inteligencia artificial?

No, Holded no tiene un MCP oficial. Existen MCPs de la comunidad mantenidos por terceros —varios repositorios en GitHub y uno de Zapier— que reciben tu API key para conectar Holded con modelos de IA como Claude o GPT. La alternativa más segura es montar la conexión directamente sobre la API v2, con un token de solo lectura por defecto y permisos de escritura limitados solo si se decide dar ese paso. Así el token no sale de tu infraestructura y controlas exactamente a qué tiene acceso la IA.

¿Quieres resultados como estos?

Conectamos tus campañas con tu CRM para que optimices a ventas reales. Reserva una reunión de 30 minutos.

Artículos relacionados