El problema que resuelve
Cuando los sistemas de una empresa no se comunican, las personas se convierten en la integración: copian pedidos de una plataforma a otra, exportan archivos para cargarlos en otro sistema y revisan a mano si los números coinciden. Ese trabajo es lento, propenso a errores y difícil de escalar.
Los síntomas suelen ser claros: inventarios que no coinciden entre la tienda online y el almacén, ventas que tardan en reflejarse en contabilidad, clientes que reciben información distinta según el canal, y reportes que solo pueden armarse a fin de mes.
Situaciones típicas
- Una tienda online o una app de pedidos que debe actualizar stock y registrar ventas en el sistema de gestión.
- Un sistema POS cuyos pedidos o ventas deben llegar a otra plataforma (cocina, despacho, reportes).
- Una plataforma que debe consumir servicios de terceros: pagos, facturación electrónica, mensajería, logística o validación de identidad.
- Varios sistemas que comparten clientes o productos y necesitan una referencia común.
- Procesos que hoy dependen de exportar e importar archivos y se quieren automatizar.
Cómo lo abordamos
Una integración robusta empieza por un mapa, no por el código. Identificamos qué sistemas participan, qué datos se mueven, en qué dirección, con qué frecuencia y, sobre todo, qué sistema es la fuente de verdad de cada dato. Sin esa definición, dos sistemas terminan sobrescribiéndose mutuamente.
- Inventario de sistemasQué existe, qué APIs ofrece cada uno y quién lo administra.
- Fuente de verdadQué sistema manda en cada dato (precio, stock, cliente).
- Contrato de integraciónFormatos, campos, identificadores y errores esperados.
- Patrón de integraciónSíncrono, asíncrono por eventos o por lotes.
- Errores y reprocesosQué pasa cuando algo falla y cómo se corrige.
- MonitoreoSaber que la integración funciona sin esperar a que alguien reclame.
Componentes de una integración
- Adaptadores: traducen el formato y las reglas de cada sistema externo a un modelo común.
- Transformación y mapeo: convierten códigos, unidades, monedas y estados entre sistemas.
- Correspondencia de identificadores: guardan qué registro externo corresponde a cada registro interno, indispensable para actualizar en lugar de duplicar.
- Colas: desacoplan los sistemas para que una lentitud temporal no bloquee al resto.
- Registro y reprocesos: permiten ver qué falló y reenviar sin intervención en la base de datos.
Integraciones posibles
La viabilidad de cada integración depende de lo que el otro sistema permita. En orden de preferencia, trabajamos con:
| Mecanismo | Cuándo se usa | Consideraciones |
|---|---|---|
| API REST o similar | El sistema expone una API documentada. | La opción preferida; hay que revisar límites de uso, autenticación y versionado. |
| Webhooks / eventos | El sistema puede notificar cambios. | Evita consultar constantemente; requiere validar la autenticidad de cada notificación. |
| Archivos programados | Solo hay exportaciones o cargas por archivo. | Viable y robusto si se controla el formato, los duplicados y las cargas parciales. |
| Acceso a base de datos | Sistema propio sin API y con autorización del dueño. | Preferible en solo lectura y sobre réplicas; acopla fuertemente ambos sistemas. |
| Automatización de interfaz | No existe ninguna otra vía. | Último recurso: frágil ante cambios de pantallas; requiere monitoreo cercano. |
Consideraciones técnicas
- Idempotencia: si un mensaje se procesa dos veces, el resultado debe ser el mismo. Es la base para poder reintentar sin duplicar ventas o pagos.
- Orden de los eventos: las notificaciones pueden llegar desordenadas; no se debe asumir que «pagado» llega después de «creado».
- Límites de uso: muchas APIs restringen la cantidad de solicitudes por minuto; la integración debe respetarlos.
- Versiones de terceros: los proveedores cambian sus APIs; conviene aislar esos cambios en el adaptador correspondiente.
- Zonas horarias, monedas y decimales: errores pequeños de formato generan diferencias difíciles de rastrear.
Toda llamada a un sistema externo debe tener un tiempo máximo de espera, una política de reintentos acotada y un registro de su resultado. Lo explicamos en detalle en cómo consumir servicios externos sin detener tu operación.
Seguridad
Cada integración es una puerta entre sistemas. Usamos credenciales separadas por integración y con los permisos mínimos necesarios, comunicación cifrada, verificación de firmas en las notificaciones entrantes y registros que no almacenan contraseñas, tokens ni datos de tarjetas. Las credenciales se guardan fuera del código y se pueden rotar sin modificarlo.
Escalabilidad
Las integraciones síncronas son simples, pero encadenan la disponibilidad de todos los sistemas involucrados. Cuando el volumen crece o un sistema es lento, conviene mover el trabajo a procesamiento asíncrono con colas, procesar por lotes en ventanas definidas y aplicar control de flujo para no saturar al sistema receptor. Comparamos estas opciones en integrar sistemas empresariales: síncrono, asíncrono y archivos.
Operación y mantenimiento
Una integración no termina cuando funciona por primera vez. Necesita alertas cuando aumentan los errores o se detiene el flujo, un procedimiento claro para reprocesar mensajes fallidos y seguimiento de los cambios que anuncian los proveedores externos. Sin observabilidad, la primera señal de un problema suele ser la queja de un cliente; lo abordamos en observabilidad en integraciones.
Relación con los productos de INTEDI
Fidelio conecta la experiencia digital del visitante con la operación del establecimiento, lo que implica integraciones con pedidos y pagos. Paybridge se enfoca en una integración específica: la conexión con pasarelas de pago.
Preguntas frecuentes
¿Qué pasa si mi sistema no tiene API?
Existen alternativas: intercambio de archivos programado, lectura controlada de una base de datos o, como último recurso, automatización de la interfaz. Cada una tiene un costo de mantenimiento distinto, por eso se evalúa caso por caso.
¿La integración debe ser en tiempo real?
No siempre. Muchas necesidades se resuelven bien con sincronizaciones cada pocos minutos o por lotes. El tiempo real tiene sentido cuando una demora afecta directamente al cliente, por ejemplo en la confirmación de un pago o la disponibilidad de stock.
¿Se pueden integrar sistemas POS?
Depende del POS: algunos ofrecen APIs o exportaciones y otros son cerrados. Es necesario revisar la documentación del fabricante o proveedor antes de comprometer una solución.
¿Qué ocurre si un servicio externo deja de responder?
Una integración bien diseñada lo detecta, evita bloquear al resto del sistema, guarda lo pendiente y lo procesa cuando el servicio se recupera, dejando registro de cada paso.