Toda empresa que cresce chega ao mesmo ponto: o ERP guarda o dado oficial, o time comercial trabalha em outro sistema, o financeiro exporta planilha e o cliente quer acompanhar o pedido pelo portal. Integração de sistemas é o que decide se essa cadeia anda sozinha ou se alguém vai passar a manhã copiando linha por linha. Na prática, a maior parte desses projetos não fracassa por limitação técnica, e sim por tratar o assunto como transporte de dados em vez de acordo entre áreas.
Integração de sistemas começa com um contrato, não com um endpoint
Antes de escolher ferramenta, responda três perguntas:
- Quem é o dono de cada dado? Um sistema é a fonte da verdade para cada entidade, os outros são cópia.
- Qual o sentido do fluxo? Uma via, duas vias ou espelho de leitura, definido campo por campo, não por tabela inteira.
- O que acontece quando os dois lados discordam? Se o cadastro de cliente pode ser editado no ERP e no CRM, alguém precisa decidir quem vence a divergência.
Sem essas definições, você não tem integração, tem dois sistemas com verdades diferentes se sobrescrevendo em silêncio. O custo disso não aparece na área técnica. Aparece em nota emitida com endereço velho, cobrança enviada para quem já pagou e fechamento que trava porque ninguém sabe qual número é o certo.
O ERP dita o meio, e raramente é uma API elegante
ERPs de mercado costumam oferecer REST razoável em algumas rotas, exportação em CSV em outras e arquivo de posição fixa no que envolve banco. Remessa bancária ainda é CNAB 240, layout posicional com regras próprias de cada instituição. Aceite isso e trate o arquivo como um contrato de verdade: parser com validação de layout, fixtures de teste e versionamento, porque o banco muda especificação e o ERP muda geração.
Um exemplo que aparece direto: quebra de linha embutida em campo de texto do cadastro. O ERP aceita, o arquivo sai com registro deslocado e o banco rejeita o lote inteiro. Não é falha do banco, é saneamento ausente na borda. E lote rejeitado significa pagamento atrasado, com juros que ninguém orçou.
Evento, polling ou lote: escolha pelo ritmo da operação
- Webhook, quando o sistema de origem oferece e você consegue lidar com eventos fora de ordem.
- Polling com marca d'água em
updated_at, quando não há webhook, guardando o último carimbo processado. - Lote noturno, quando o consumidor é contábil e a madrugada resolve.
Latência é decisão de negócio, não preferência de arquitetura. Estoque de e-commerce erra venda se atrasar minutos. Relatório gerencial sobrevive tranquilo a uma janela diária. Exigir tempo real onde ninguém precisa multiplica infraestrutura e plantão sem ganho nenhum.
Idempotência e reprocessamento separam integração de gambiarra
Toda integração vai falhar em algum momento: timeout, janela de manutenção do fornecedor, campo obrigatório que apareceu sem aviso. O que distingue solução sustentável de gambiarra é o que acontece depois da falha. O básico não negociável:
- Chave de idempotência, para que o mesmo evento processado duas vezes não gere dois pedidos.
- Fila com retentativa e backoff, em vez de laço que insiste até derrubar o fornecedor.
- Fila de mensagens mortas, para o que não passou ficar visível em vez de sumir.
- Registro do payload original, para reprocessar sem depender de reenvio do outro lado.
Duplicidade de nota fiscal não é bug de sistema, é problema fiscal.
Traduza na borda para não contaminar o seu domínio
Aqui o DDD entra de forma prática, com a camada anticorrupção. Nomes e formatos do ERP param na fronteira da integração e são traduzidos para a linguagem do seu domínio. Nenhum campo abreviado do fornecedor deveria circular pelas regras de negócio da sua aplicação.
O retorno é direto: quando o cliente troca de ERP, adiciona uma segunda operação ou migra de versão, você reescreve um tradutor, não o sistema. É a diferença entre um mês de projeto e um trimestre.
Como a Alcance Tech conduz esse tipo de projeto
Começamos pelo mapa de fluxos e donos do dado, não pelo código. Depois entregamos a fatia mais fina que já roda em produção, com log e alerta desde o primeiro dia, e só então ampliamos. Integração feita em big bang tende a estrear justamente no fechamento do mês.
Integração madura é invisível. O sinal de que deu certo não é o painel de monitoramento bonito, é ninguém mais precisar conferir se os dois sistemas estão dizendo a mesma coisa.
