Uso de la API REST de Dolibarr para conectar una aplicación móvil: Guía completa para desarrolladores y PYMEs
   05/15/2025 00:00:00     Dolibarr , Wiki Dolibarr    0 Comentarios
Uso de la API REST de Dolibarr para conectar una aplicación móvil: Guía completa para desarrolladores y PYMEs

En la era de la transformación digital móvil, integrar aplicaciones empresariales con plataformas móviles ya no es una opción, sino una necesidad estratégica. Dolibarr ERP & CRM, conocido por su arquitectura modular y de código abierto, ofrece una potente API REST que permite a los desarrolladores conectar aplicaciones externas —incluidas aplicaciones móviles— directamente con el sistema central. Esta flexibilidad permite flujos de trabajo optimizados, sincronización de datos en tiempo real y una mejor experiencia de usuario.

Ya sea que seas una pequeña empresa que desea extender sus herramientas internas, una empresa de software que desarrolla un cliente móvil para Dolibarr, o un consultor IT que prepara una solución híbrida, este artículo es tu guía completa. Cubriremos todo: fundamentos de la API, autenticación, endpoints, casos de uso, manejo de errores y buenas prácticas para una integración móvil segura y escalable.

Comprensión de la API REST de Dolibarr

La API REST de Dolibarr ofrece una amplia gama de endpoints que corresponden a los módulos principales del sistema, como facturas, clientes, productos, pedidos y proyectos. Se basa en métodos estándar de HTTP (GET, POST, PUT, DELETE) y sigue los principios RESTful. Esto facilita su uso desde cualquier plataforma que soporte HTTP.

La API fue introducida en la versión 5.0 y mejorada significativamente entre las versiones 10 y 16. En 2025, es totalmente compatible con Dolibarr versión 14 o superior, e incluye las últimas mejoras de seguridad y estructura de datos.

¿Por qué usar la API REST para una app móvil?

Integrar una app móvil con la API de Dolibarr ofrece muchos beneficios:

  • Sincronización en tiempo real de productos, inventario y facturación

  • Acceso personalizado por usuario a módulos de CRM, contabilidad o RRHH

  • Acceso móvil para comerciales, técnicos o repartidores

  • Notificaciones push para nuevos leads o pagos vencidos

  • Funcionalidad offline con sincronización posterior

Requisitos y configuración del entorno

Qué necesitas:

  • Una instalación funcional de Dolibarr (se recomienda versión 14+)

  • Acceso de administrador a Dolibarr

  • Módulo API activado

  • Una clave API o token OAuth

  • Una app móvil o framework de desarrollo (Flutter, React Native, Android Studio, etc.)

Activar el módulo API en Dolibarr:

  1. Ir a Configuración > Módulos/Aplicaciones

  2. Activar el módulo API REST

  3. Ir a Usuarios > Lista > Editar

  4. Generar y copiar la clave API para el usuario

Opcional: Instalar el plugin APIGateway o configurar CORS si la app es web.

Autenticación: clave API vs OAuth2

Dolibarr admite dos métodos de autenticación:

Clave API (Token)

  • Fácil de implementar

  • Ideal para apps internas o de un solo usuario

  • Se envía en el header: DOLAPIKEY: tu_clave

OAuth2

  • Más seguro y escalable

  • Recomendado para apps públicas con múltiples usuarios

  • Requiere ID de cliente, secreto y URI de redirección

Usa OAuth2 para apps públicas o disponibles en tiendas.

Estructura y endpoints de la API REST

Ruta base:

https://tudominio.com/api/index.php

Endpoints comunes:

  • GET /thirdparties – Lista de clientes/proveedores

  • POST /thirdparties – Crear cliente

  • GET /products – Obtener productos

  • POST /invoices – Crear factura

  • GET /users/me – Obtener datos del usuario actual

Las respuestas son en formato JSON y requieren autenticación.

Casos de uso comunes para apps móviles

1. App CRM móvil

  • Ver lista de clientes y datos de contacto

  • Agregar/modificar leads

  • Historial de actividades

  • Programar tareas

2. App de ventas y pedidos

  • Buscar productos con fotos y precios

  • Crear presupuestos o pedidos

  • Verificar disponibilidad

  • Convertir presupuestos en facturas

3. App para técnicos de campo

  • Ver tareas asignadas

  • Actualizar estado de proyectos

  • Registrar horas trabajadas

  • Adjuntar fotos o documentos

4. App de inventario

  • Escanear códigos de barras

  • Ajustar existencias

  • Registrar recepciones

  • Generar movimientos de almacén

Manejo de respuestas y errores

Códigos de estado HTTP:

  • 200 OK – Éxito

  • 201 Created – Recurso creado

  • 400 Bad Request – Datos inválidos

  • 401 Unauthorized – Credenciales incorrectas

  • 403 Forbidden – Acceso denegado

  • 500 Internal Server Error – Error de API

Estructura JSON típica:

{
  "success": true,
  "error": null,
  "data": {...}
}

Es importante mostrar mensajes claros en la interfaz ante errores.

Paginación y filtros

Al consultar listas, puedes usar:

  • limit=25&sortfield=lastname&sortorder=asc

  • sqlfilters=(status:in:(1,2))

Esto mejora la eficiencia y reduce el uso de datos.

Carga de archivos y adjuntos

Se puede subir archivos (contratos, imágenes, PDFs):

POST /documents/upload
Header:
  DOLAPIKEY: tu_clave
Body (multipart/form-data):
  refid, ref, modulepart, file

Ideal para adjuntar documentos a facturas o tareas.

Recomendaciones de seguridad

  • Usar siempre HTTPS

  • Limitar acceso por IP cuando sea posible

  • Usar OAuth2 para apps públicas

  • Aplicar límites de uso (rate limiting) en la app

  • No guardar claves API en el código fuente

Desarrollo móvil: frameworks recomendados

Opciones:

  • Flutter – Rápido y multiplataforma

  • React Native – Basado en JS, gran ecosistema

  • Android/iOS nativo – Máximo rendimiento

Librerías útiles: axios (JS), http (Dart), Retrofit (Java)

Buenas prácticas para el despliegue

  • Versionar la capa API

  • Cachear datos estáticos

  • Registrar errores y monitorear con analytics

  • Sincronización en segundo plano

  • Pruebas en múltiples dispositivos y sin conexión

Problemas comunes y soluciones

401 Unauthorized: Verifica headers y clave válida

Problemas de CORS: Ajusta configuración de servidor o usa proxy

Respuesta HTML en lugar de JSON: Usar el endpoint correcto y Accept: application/json

Ejemplo real: App Flutter para clientes

Una app Flutter básica puede:

  • Autenticarse con API Key

  • Obtener lista de clientes: GET /thirdparties

  • Mostrar datos en lista

  • Ver pedidos: GET /orders?fk_soc=ID

  • Editar cliente: PUT /thirdparties/ID

Conclusión

Conectar una app móvil a Dolibarr mediante su API REST permite una gestión moderna, ágil y escalable. Ya sea para uso interno o comercial, esta integración abre las puertas a automatización, control y movilidad, aprovechando la flexibilidad del ecosistema Dolibarr.

Comentarios

Inicia sesión o regístrate para publicar comentarios