SaaS multi-tenant propio de sincronización SAP ↔ ecommerce con IA embebida
ConexFlow
Imbra y Mapache pagaban Yuju para conectar su SAP con las tiendas, pero el SaaS global no resolvía sus casos específicos. Armé una integración a medida en el VPS de cada uno: flujos en n8n que bauticé "Caja de Cristal". Cuando la misma arquitectura empezó a servirle a más empresas, la convertí en producto: SaaS multi-tenant con planes, facturación, panel de agencia y diagnóstico de errores asistido por Gemini. Cada cliente sigue con su instancia en su propio VPS, con datos soberanos. Hoy conecta SAP Business One con WooCommerce, Shopify y MercadoLibre sin errores de sobreventa.
El problema
Una empresa que vende en varios canales (tienda propia, marketplaces) pero controla inventario, precios y facturación desde un ERP, necesita que esos datos viajen sin fricción entre ambos mundos: sin sobreventa, sin cargar pedidos a mano, y sin que cada marca tenga que construir su propia integración desde cero.
La solución
Catálogo & MercadoLibre
- OAuth con MercadoLibre resuelto en varios puntos del sistema: alta inicial manual, refresco automático programado, y cada flujo que habla con la API refresca su propio token al arrancar en vez de depender de caché compartida.
- Actualización de precio y stock en MercadoLibre uno por ítem (MercadoLibre no ofrece batch de actualización), frente a WooCommerce que acepta lotes de 25 productos.
- Extracción "espejo" completa en cada corrida (borra y reconstruye la tabla de búsqueda), paginando por los 5 estados reales de una publicación en MercadoLibre (activa, pausada, cerrada, inactiva, en revisión).
- Creación automática de productos ya resuelta en WooCommerce, con el mismo patrón que el resto de la sincronización; llevarla a MercadoLibre es la extensión natural sobre la arquitectura ya construida.
Pedidos
- El webhook de pedidos distingue una orden individual de un "pack" (varias órdenes en un mismo envío) y aborta con un error controlado si los datos no calzan, en vez de arriesgar una consulta con datos inconsistentes.
- Dirección de envío y documento de identidad reales del comprador se piden a los endpoints dedicados de MercadoLibre, no al dato incompleto que trae el pedido por defecto.
- Toda la lógica de cruce y reconciliación vive en funciones de Postgres atómicas, no en el flujo de n8n (evita el bug real que alguna vez vació el panel de cruce por una hora entera por no serlo), con locking distribuido (restricción UNIQUE de Postgres como mutex) para que reintentos solapados no dupliquen un pedido en SAP.
- El pedido se entrega al flujo de creación en SAP por llamada nativa a subflujo, no por HTTP, para más confiabilidad ante fallos de red.
Clientes & facturación en SAP
- Cada comprador se resuelve a un cliente de SAP por una clave determinística sobre su documento de identidad (sin búsqueda difusa): si ya existe se reutiliza, si no se crea desde cero.
- El alta de cliente arma más de 20 campos en SAP (dirección de facturación y de envío, retención en la fuente, código de municipio, tipo de documento) para que la facturación colombiana salga bien desde el primer intento.
- Manejo explícito de un error real de SAP ("cliente ya existe"): se reconoce como éxito para que el pedido no quede trabado, en vez de fallar toda la sincronización.
Envíos
- Cron horario que toma de SAP las facturas con guía asignada, filtradas del lado de SAP para excluir automáticamente las de MercadoLibre.
- Resuelve la transportadora real contra un catálogo propio, con un rodeo real a un defecto de paginación del SAP Service Layer: siempre reconsulta cada factura por su endpoint de entidad antes de confiar en un dato crítico como el transportador.
- Aguanta fallos parciales: si falla la tienda igual queda registrado en la base, y si falla la base sigue con la siguiente factura sin detener el lote.
Plataforma SaaS multi-tenant
- Arquitectura multi-tenant real: catálogo de planes con precios, límites de usuarios y de pedidos, y funciones habilitadas por plan; credenciales de cada cliente cifradas (AES-256-GCM) y aisladas por tenant.
- Panel de agencia propio, aparte del panel de cada cliente: KPIs, ingreso recurrente y gestión de planes de todos los clientes activos.
- Acceso sin contraseña (enlace de un solo uso) y 18 pantallas funcionales: dashboard, monitor de pedidos y clientes con vista 360°, envíos, centro de alertas, consola de acciones manuales auditada, gestión de usuarios con roles.
- Diagnóstico de errores asistido por Gemini, integrado al flujo operativo del propio sistema.
