Integração de sistemas e desenvolvimento de API
Equipamento de terceiro, login corporativo, serviço externo e API própria. A camada que faz sistemas que não se conhecem trabalharem juntos.
Integração é a camada que liga sistemas que não foram feitos pra conversar. Na App.co isso cobre três frentes: a API própria, que expõe o que o seu produto sabe fazer; a conexão com equipamento e serviço de terceiro; e a identidade, que decide quem entra e com qual permissão.
O case mais denso disso é o Farm Tracker. O cliente já tinha um hardware proprietário com GPS e RFID acoplado ao trator, e o que faltava era software: o app em Flutter lê o equipamento por Bluetooth, uma API em C# / .NET sobre PostgreSQL costura hardware, app de campo e dashboard, e o rastreio continua funcionando onde não tem sinal. Na mesma prateleira estão a API em NestJS do ALLTURISMO e o login corporativo do Agrária Ortssippenbuch via Microsoft Entra ID.
O que é integração de sistemas, na prática?
É fazer dois softwares que não se conhecem trabalharem como um só. Pode ser o seu sistema puxando dado de um serviço externo, um equipamento mandando leitura pro aplicativo, ou o seu produto expondo uma API pra outra empresa consumir.
O trabalho quase nunca está na parte que parece difícil. Ligar as duas pontas é rápido. O projeto de verdade é decidir o que acontece quando o outro lado responde diferente do que a documentação promete, quando ele demora, quando ele cai no meio da operação e quando a mesma informação chega duas vezes. Integração boa é a que continua correta no dia ruim.
Dá pra integrar um equipamento que a empresa já usa?
Dá, e é a competência mais rara que a App.co tem documentada. Bluetooth Low Energy é o caminho mais comum quando o software precisa conversar com equipamento, e é onde a maioria dos projetos trava: nesse ponto o app deixa de ser tela e vira parte da operação.
No Farm Tracker o hardware é do cliente, proprietário, com GPS e RFID, feito pra ficar acoplado ao trator durante a aplicação de insumos. O app em Flutter lê esse equipamento por Bluetooth e registra a trajetória da aplicação. O projeto foi tocado em parceria com a Bitzen.
De um equipamento pro outro muda o protocolo e muda o que o fabricante deixa o software enxergar: o que dá pra ler, o que dá pra escrever e com que frequência ele responde. Por isso a investigação do equipamento vem antes do cronograma, com a documentação do fabricante na mesa ou com o aparelho ligado na bancada.
Ver a integração com hardware no case Farm TrackerE quando a integração precisa funcionar sem internet?
Tem operação que acontece onde não chega sinal, e aí a integração não pode depender de resposta do servidor pra seguir. Numa fazenda, o equipamento entra no talhão de manhã e só reencontra a rede no fim do expediente. Se o software para nesse intervalo, a operação para junto.
A saída é tratar a sincronização como um evento à parte, e não como pré-requisito. O dispositivo grava tudo localmente e envia quando a rede volta. A decisão difícil é de modelo de dados: quem é a fonte da verdade e o que fazer quando as duas pontas mudaram enquanto estavam separadas.
É assim que o Farm Tracker registra a trajetória inteira da aplicação de insumos com o celular fora do ar e entrega o dado ao dashboard depois, sem ninguém digitar nada no caminho.
Ver como a App.co constrói app offline-first em FlutterVocês constroem a API do zero também?
Sim, e essa é metade do serviço. Uma API própria é o que permite que o app, o painel administrativo e o parceiro externo consumam a mesma regra de negócio, escrita uma vez só.
A App.co já entregou API em três stacks diferentes: NestJS sobre PostgreSQL no ALLTURISMO, com testes em Jest cobrindo o fluxo de cupom de ponta a ponta; Node.js com Express e Prisma no Agrária Ortssippenbuch, cuidando do modelo genealógico; e C# / .NET no Farm Tracker, costurando hardware, app e dashboard.
A escolha segue o critério de sempre: o que o produto pede e o que a sua equipe consegue manter depois.
Ver a API e o fluxo de cupom no case ALLTURISMODá pra usar o login corporativo que a empresa já tem?
Dá. Autenticação federada é uma integração como outra qualquer, com a diferença de que ela decide quem entra. Usar a identidade que a empresa já mantém evita cadastro paralelo, senha nova e aquele acesso esquecido de quem saiu há seis meses.
No Agrária Ortssippenbuch o acesso é via Microsoft Entra ID, restrito aos membros da cooperativa, com o sistema hospedado no ambiente Azure que a casa já usava.
Ver o login corporativo em uso no case AgráriaCobrança recorrente entra aqui?
Entra. Dentro do aplicativo, Apple e Google exigem que a compra de conteúdo digital passe pela loja, cada uma com seu ciclo de renovação, cancelamento e reembolso. No ALLTURISMO a assinatura foi integrada via RevenueCat e ficou ativa no iOS e no Android, com uma camada só cuidando dos dois lados em vez de duas implementações pra manter.
Fora das lojas, integrar um gateway de pagamento segue o método de qualquer serviço externo: ler a documentação, tratar o retorno assíncrono do provedor, garantir que uma cobrança repetida não vire duas e manter dado de cartão fora do seu sistema. Se você já usa um provedor, a gente estuda a documentação dele antes de assumir prazo.
Como saber se a integração vai aguentar?
Testando o caminho inteiro, não o pedaço. Integração quebra na costura: no formato que mudou sem aviso, na resposta que demorou, no evento que chegou duas vezes.
No ALLTURISMO o fluxo de cupom, que atravessa app, API e dashboard, é coberto por testes automatizados em Jest de ponta a ponta. Quando a ponta é hardware, teste automatizado não substitui campo: parte do trabalho é ir com o equipamento na mão e ver o que acontece quando o pareamento cai no meio do serviço.
Conhecer quem faz arquitetura e code review na App.coA prova
Onde esse serviço já rodou
Farm Tracker
Hardware proprietário do cliente com GPS e RFID lido por Bluetooth pelo app em Flutter, camada offline-first pro rastreio seguir sem rede e API em C# / .NET sobre PostgreSQL costurando hardware, app e dashboard.
Ver o case completoALLTURISMO
API em NestJS sobre PostgreSQL com testes em Jest cobrindo o fluxo de cupom de ponta a ponta, e assinatura recorrente integrada via RevenueCat na App Store e na Google Play.
Ver o case completoAgrária Ortssippenbuch
Login via Microsoft Entra ID restringindo o acervo aos cooperados, backend em Node.js com Express e Prisma e dados divididos entre PostgreSQL, MongoDB e Redis, dentro do ambiente Azure da cooperativa.
Ver o case completoStack
O que a gente usa aqui
Equipamento & IoT
APIs
Dados
Identidade & cobrança
Dúvidas
Perguntas que sempre aparecem
Vocês integram com ERP?
A porta de entrada é sempre a mesma: a API que o fornecedor publica. Se o seu ERP tem documentação e libera acesso, a gente lê a documentação, testa em ambiente de homologação e diz o que dá pra fazer antes de assumir prazo. O que a App.co mostra em portfólio é integração com hardware proprietário, com login corporativo e com cobrança nas lojas, e é sobre isso que a gente mostra código.
E integração com gateway de pagamento?
Vale a mesma régua. Cobrança dentro do aplicativo passa obrigatoriamente pela App Store e pela Google Play, e no ALLTURISMO essa parte foi resolvida com RevenueCat. Cobrança na web passa por um gateway, e aí o trabalho é tratar o retorno assíncrono do provedor, evitar cobrança duplicada e manter dado de cartão fora do seu sistema.
Quanto tempo leva uma integração?
O prazo é ditado pelo outro lado. Serviço com documentação boa e ambiente de teste sai rápido. Equipamento sem documentação, API antiga sem homologação ou fornecedor que demora pra liberar credencial mudam o cronograma inteiro. Por isso a gente investiga o outro lado antes de dar prazo, e não depois.
O que acontece quando o outro sistema sai do ar?
O seu produto precisa continuar de pé. Isso se resolve no desenho: guardar o que ainda não foi enviado, tentar de novo com espera crescente, garantir que uma mensagem repetida não gere efeito duplicado e avisar quem opera quando a fila está parada. É o mesmo raciocínio da camada offline-first do Farm Tracker, onde a falta de rede é regra e não exceção.
Dá pra integrar com um equipamento por Bluetooth?
Dá. É o que o Farm Tracker faz: o app em Flutter conversa por Bluetooth com o hardware de GPS e RFID acoplado ao trator e registra a operação em campo. O que precisa ser checado antes é o protocolo do equipamento e a documentação do fabricante, porque é isso que define o que o software consegue ler e escrever.
Tem dois sistemas que precisam conversar?
Conta o que precisa. A gente responde rápido e fala reto.
Falar no WhatsAppOu por e-mail: gustavo@app-co.net