Definir qué es cada entidad

Antes de integrar dos sistemas hay que definir con precisión qué es un cliente, qué es una empresa y qué es una solicitud. Una misma persona puede contactar varias veces; eso no significa que deba existir varias veces como cliente, pero tampoco que todas sus solicitudes deban fusionarse en una.

Hay que decidir con qué dato se identifica a cada entidad y cuándo una coincidencia dudosa debe revisarla una persona. También qué sistema es la fuente de verdad de cada campo: si dos sistemas se corrigen mutuamente, se pierde la certeza sobre cuál es el dato correcto.

El mismo evento puede llegar dos veces

Cuando algo falla, muchos sistemas reenvían el mismo evento como medida de seguridad. Es un comportamiento correcto. La integración debe reconocer que esa operación ya se procesó y no crear un registro nuevo. Es lo que en ingeniería se denomina idempotencia: repetir la misma petición no debe repetir su efecto.

En la práctica suele bastar con registrar una referencia única de cada operación y comprobarla antes de actuar. La implementación concreta depende de lo que permitan los sistemas implicados.

No todos los errores se resuelven reintentando

Si se ha interrumpido la conexión, reintentar tiene sentido. Si falta un campo obligatorio o se ha revocado un permiso, el error persistirá y alguien debe corregirlo. El caso más delicado es cuando el sistema de destino registró la operación pero la confirmación se perdió: antes de repetir, hay que verificar si ya existe.

Dejo siempre visible qué operaciones han quedado pendientes y por qué, para que el equipo pueda resolverlas sin sobrescribir datos correctos ni crear registros nuevos por error.

Qué pruebo antes de ponerla en producción

Con datos de prueba, envío el mismo evento dos veces, genero dos solicitudes del mismo cliente, modifico manualmente un registro en el sistema de destino y provoco un error justo después de guardar. También compruebo que las alertas llegan a quien corresponde y que los registros técnicos no almacenan más datos personales de los necesarios.

Que la API devuelva una respuesta correcta no es suficiente. Doy por válida una integración cuando los datos quedan como deben en todos los sistemas y cuando un fallo puede resolverse sin intervención técnica.

Si tus sistemas comparten datos y aparecen duplicados o inconsistencias, aquí explico cómo trabajo o agendamos una reunión y lo analizamos con tu caso.