Pillar page

Integració de sistemes per a empreses

Connectem ERP, CRM, sistemes comptables, RH-nòmines, KRS, MS Graph, Salesforce i SAP. Integracions mitjançant API, cues, ETL i webhooks — amb control de qualitat total, rastre d'auditoria i monitoratge de producció.

Una empresa mitjana utilitza entre una desena i diverses dotzenes d'aplicacions de negoci. Cadascuna emmagatzema fragments de les mateixes dades — clients, factures, treballadors, comandes. Sense integració, els treballadors dediquen hores cada dia a reintroduir, exportar i importar dades manualment entre sistemes.

La integració de sistemes no és un luxe — és la base de la transformació digital. Amb una bona integració: el client afegit al CRM apareix a l'ERP sense intervenció, la factura emesa per comptabilitat actualitza el dashboard financer del director, l'estat de la comanda és coherent a la botiga online, el magatzem i l'atenció al client.

Per què són difícils les integracions?

Cada sistema té el seu propi model de dades, el seu nom per als mateixos camps, la seva seqüència d'operacions i les seves limitacions d'API (límits, latències, errors transitoris). Dos sistemes poden semblar «compatibles» en teoria, però a la pràctica requereixen setmanes de feina amb mappings, transformacions, gestió de casos límit i resolució de conflictes.

La segona capa de dificultat és la fiabilitat en producció. Una integració que funciona correctament a l'entorn de dev és el ~30% del camí. El 70% restant és la gestió de situacions excepcionals: el sistema extern no està disponible, ha canviat el contracte d'API, retorna dades inesperades, s'ha introduït un client nou al CRM amb caràcters polonesos que l'ERP antic no admet. Cadascun d'aquests casos requereix anàlisi, prova i alerta quan passa.

Tipus d'integracions

Sis patrons bàsics. En la majoria de projectes en combinem diversos, escollint el mètode adequat per a cada cas.

REST API / GraphQL

Comunicació síncrona entre aplicacions. JSON com a format d'intercanvi, OAuth2/JWT per a l'autorització, OpenAPI/Swagger per a la documentació. L'opció més freqüent per a sistemes núvol moderns.

Cues de missatges

RabbitMQ, Redis Streams, Kafka — intercanvi asíncron quan l'emissor no espera al receptor. Ideal per a notificacions, esdeveniments de negoci i operacions de llarga durada. Garantia de lliurament + retry.

ETL / ELT

Càrrega per lots cap a un magatzem (Snowflake, BigQuery, Redshift, PostgreSQL local). Airflow o dbt com a orquestrador, validació de qualitat de dades (Great Expectations) i monitoratge de lineage.

Webhooks

Notificacions push del sistema origen (Stripe, GitHub, Slack, Salesforce) cap a la nostra aplicació. Verificació de signatura HMAC, idempotència i dead-letter queue per a lliuraments fallits.

SOAP / XML

Sistemes enterprise més antics (SAP, Oracle, banca, assegurances) — suport complet a WSDL, validació XSD i WS-Security. Adaptador a protocols moderns per a la resta del sistema.

Bases de dades — rèplica, CDC

Change Data Capture (Debezium, AWS DMS) per a la rèplica en streaming dels canvis de la base origen a la destí. Logical replication de PostgreSQL per a alta disponibilitat i informes.

Sis reptes clau de producció

Aspectes als quals parem atenció en cada projecte d'integració. La manca de qualsevol d'aquests elements = bomba de rellotgeria.

Idempotència

Cada petició executada diverses vegades produeix el mateix resultat. Claus idempotents a les capçaleres, deduplicació a nivell d'aplicació i transaccions al voltant d'operacions crítiques.

Retry i backoff

Els errors temporals de xarxa són habituals. Exponential backoff (1s, 2s, 4s, 8s...), jitter per evitar thundering herd, circuit breaker després d'N intents fallits.

Mappings i transformacions

El sistema A anomena un camp «client_id», el sistema B «customerId», el sistema C «id_client». Catàleg central de mappings, transformacions en un únic lloc i proves de cada transformació.

Eventual consistency

Les dades en dos sistemes mai no estan al 100% sincronitzades en temps real. Acceptem latències (típicament segons), monitoritzem el drift i alertem davant divergències més llargues.

Auditoria i compliance

Cada operació d'integració registra: qui/què/quan/d'on/cap a on, el payload (anonimitzat si conté PII) i el resultat. L'audit log compleix els requisits del RGPD i ISO 27001.

Escalabilitat i costos

Les integracions creixen amb el negoci. Escalat horitzontal (més instàncies), rate limiting (protecció contra peticions excessives) i monitoratge de costos per integració.

Com executem un projecte d'integració

  1. Discovery (1-2 setmanes): mapeig dels fluxos de dades actuals, identificació de les fonts de veritat per a cada entitat, recull dels contractes d'API, avaluació de riscos i dependències.
  2. Disseny d'arquitectura (1 setmana): tria de patrons (síncron vs. asíncron, push vs. pull, hub-and-spoke vs. point-to-point), esquema de l'audit log i pla de monitoratge.
  3. Pilot sobre una entitat (2-3 setmanes): executem la integració per a un tipus de dades (p. ex. clients) end-to-end. Validació de contractes, proves de càrrega i dry-run en l'entorn de test.
  4. Extensió a la resta d'entitats (4-8 setmanes): sincronitzacions successives (factures, comandes, productes) amb el mateix patró. Cada desplegament va precedit d'un Change Request i proves de regressió.
  5. Migració històrica (1-3 setmanes): trasllat de les dades existents. Dry-run, auditoria, pla de rollback. Migració incremental o en finestra de manteniment.
  6. Hypercare (4 setmanes després de producció): monitoratge intensiu, reacció ràpida davant incidents i ajustament d'alertes. Després de l'hypercare es passa al manteniment estàndard.

Exemples d'integracions realitzades

KRS + CRBR — RejestrFirm

Microservei que connecta dades del Registre Judicial Nacional polonès (KRS, més de 740 mil empreses) amb el Registre Central de Beneficiaris Reals (CRBR). Smart caching (24 h), dual-source amb fallback automàtic i més de 15 endpoints REST. S'utilitza en processos de KYC, verificació de contraparts i generació d'informes de compliance.

SSO amb múltiples aplicacions

Plataforma central Keycloak (realm eskom-ai) integrada amb una desena d'aplicacions client. OAuth2/OIDC + PKCE, login social (Google, Microsoft, Apple, Facebook), provisioning d'usuaris i facturació basada en consum de tokens LLM. Single sign-on per a tots els productes d'ESKOM AI.

Microsoft Graph — calendaris, correu, OneDrive

Integració amb Microsoft 365 per a l'automatització del calendari (programació de reunions per l'assistent d'IA), enviament de correus transaccionals i arxivat de documents. OAuth2 amb permisos delegats, refresh tokens a Vault i monitoratge dels rate limits de Graph API.

LLM Proxy — routing multi-proveïdor

Cua central que connecta diversos proveïdors LLM (Anthropic, OpenAI, Ollama local). Routing per tasca (petites — model local, complexes — Claude Opus), cache de respostes, monitoratge de costos per projecte i fail-over entre proveïdors.

Preguntes freqüents

Què significa integració de sistemes?
La integració de sistemes és el procés de connectar dues o més aplicacions perquè puguin intercanviar dades, activar esdeveniments entre elles i mantenir la coherència de la informació. A la pràctica: quan s'afegeix un client al CRM, apareix automàticament a l'ERP; quan es factura a comptabilitat, les dades viatgen al CRM i a l'analítica. Sense integració, l'empresa mou dades a mà (exportacions CSV, còpies entre sistemes), cosa que genera errors, retards i costos.
Quines tecnologies d'integració utilitzeu?
L'elecció tecnològica depèn del context: REST API i webhooks per a sistemes núvol moderns, SOAP/XML per a ERP/banca antics, message queues (RabbitMQ, Redis Streams, Kafka) per a intercanvis asíncrons, ETL/ELT per a alimentar magatzems de dades, GraphQL quan el client necessita flexibilitat. Sovint combinem enfocaments — síncron allà on l'usuari espera el resultat, asíncron allà on importa el rendiment.
Les integracions es trenquen amb les actualitzacions dels sistemes origen?
És un dels grans problemes de les integracions — i per això construïm adaptadors amb aïllament (anti-corruption layer). El sistema extern canvia el contracte → només canvia l'adaptador, la resta de la integració no es toca. A més: els contractes es versionen (v1, v2), les proves d'integració s'executen cada dia contra el sandbox d'API, i les alertes de Sentry/Wazuh notifiquen canvis en el format de resposta. El client se n'assabenta del problema abans no afecti l'usuari final.
Quant dura una integració típica?
Integracions simples (un sistema amb un altre, ~5 endpoints, una sola direcció de sincronització) les executem en 1-2 setmanes. Les complexes (sincronització bidireccional, una desena d'entitats, mappings, transformacions, deduplicació) duren 4-8 setmanes. Les integracions amb múltiples sistemes a la vegada (hub-and-spoke) les dissenyem per fases, aportant valor de negoci en iteracions de 2-3 setmanes.
Què passa amb les dades històriques en una integració nova?
Cada projecte d'integració té una etapa pròpia de migració històrica. Primer, una anàlisi completa: quants registres, quins tipus de dades, on hi ha duplicats, quins camps són obligatoris i quins opcionals. Després, un script de migració amb dry-run, rastre d'auditoria (què s'ha mogut, què s'ha descartat i per què) i pla de rollback. La migració s'executa en finestra de manteniment o de manera incremental, segons el risc de negoci.
Cal que la integració funcioni 24/7?
Depèn de la criticitat de negoci. Els processos online (pagaments, autoritzacions) requereixen alta disponibilitat — els dissenyem amb redundància (load balancer, múltiples instàncies, health checks, auto-restart). Els processos nocturns (informes, sincronitzacions per lots) poden funcionar en finestres de manteniment. Cada integració es classifica en un SLA: temps de resposta p95, downtime mensual acceptable i RTO/RPO.
Com monitoritzeu les integracions en producció?
Cada integració envia mètriques a Prometheus (request rate, error rate, latència p50/p95/p99), logs al SIEM central (Wazuh) i errors a Sentry. Hi ha alertes quan baixa el rendiment, augmenta l'error rate o apareixen timeouts. Un dashboard mostra l'estat de totes les integracions en un sol lloc — l'operador veu que, per exemple, la integració amb el proveïdor X té un 3% d'errors, mentre la resta funciona amb fluïdesa.
Què passa amb la seguretat en integracions externes?
Cada integració utilitza els permisos mínims necessaris (least privilege). Les claus i tokens es guarden a HashiCorp Vault (no en fitxers .env ni al codi). La comunicació sempre és per TLS 1.2+, amb certificats verificats (mai verify=False). Els webhooks entrants tenen verificació de signatura HMAC. Davant una filtració de token: rotació immediata, i l'audit log mostra què s'ha fet i quan.
En què es diferencia la integració via ESKOM AI d'un ESB clàssic (Enterprise Service Bus)?
Els ESB clàssics (Mule, BizTalk, WebMethods) són plataformes monolítiques, amb llicències cares i que requereixen un equip dedicat. El nostre model: microserveis d'integració, cada integració com a component independent amb el seu desplegament i monitoratge, infraestructura sobre open source (FastAPI, RabbitMQ, Redis, PostgreSQL, Vault). Menor cost de llicències, manteniment més senzill i sense vendor lock-in. Per a alguns clients és un argument financer, per a altres és estratègic.
Us integreu amb sistemes públics polonesos (KRS, CRBR, KSeF, ePUAP)?
Sí. A producció tenim un microservei integrat amb KRS i CRBR (rejestrfirm.eskom.ai — dades de més de 740 mil empreses amb beneficiaris reals). KSeF (e-facturació) — disposem de components d'integració al projecte Kontroling. ePUAP i e-doręczenia (e-notificacions) — disponibles via Microsoft Graph API i integracions directes. Conformitat total amb la legislació polonesa (RGPD, obligacions de reporting).

Tens un projecte d'integració?

Comencem amb una auditoria gratuïta — mapem els fluxos de dades actuals, identifiquem els colls d'ampolla i proposem un pla en etapes clares.