
Tela de acesso do aplicativo Expo. Cotação, envios e carteira usam a mesma API do painel web; esses fluxos estão descritos ao lado.
Envio Fácil Encomendas
Software de logística para cotar fretes, emitir etiquetas e acompanhar envios.
Produto em operação
- Minha entrega
- Desenvolvi o recebimento de webhooks de e-commerce com persistência antes do enfileiramento, além de fluxos de frete, pagamentos e emissão de etiquetas.
- Decisão técnica
- Gravar o evento no PostgreSQL antes de depender do Redis. Uma rotina recupera os eventos pendentes e tenta enfileirá-los novamente.
- Comportamento implementado
- Se o enfileiramento falha, o evento recebido permanece registrado para retomada. A confirmação de PIX também pode retomar a emissão vinculada ao pagamento.
- 01Webhook recebido
- 02Evento persistido
- 03Fila e retomada
- TypeScript
- NestJS
- React / Next.js
- Expo
- PostgreSQL
- Redis
Sobre o projeto
Problema
Reunir cotação, contratação e rastreamento de transportadoras com regras e respostas diferentes, mantendo a consistência entre envio, cobrança e etiqueta.
Solução
Painel web e aplicativo Expo para cotações, envios, destinatários, clientes e carteira. O backend integra transportadoras, canais de e-commerce e recargas via PIX.
Minha participação
Desenvolvimento e manutenção de backend, interface web e app Expo; integrações de frete e e-commerce, fluxos financeiros e tratamento de erros operacionais.
Arquitetura e desafios técnicos
Monólito modular NestJS/TypeScript, com domínio, casos de uso e adaptadores separados. PostgreSQL/TypeORM persistem a operação; Bull/Redis executam filas e rotinas agendadas. Outbox/inbox liga eventos a efeitos como emissão de etiquetas após confirmação de PIX. React/Next.js e Expo consomem a API com TanStack Query.
Qualidade e confiabilidade
Validação HTTP, autenticação e permissões por contexto. Transações, consumidores idempotentes, verificação de webhooks e retries com backoff tratam reenvios e falhas externas. Há testes Jest de fluxos e adaptadores, métricas operacionais e ambiente Docker.
Entregas
- Cotação, emissão, rastreamento, destinatários e gestão de envios no painel e no app.
- Carteira, recargas PIX e retomada da emissão vinculada à confirmação do pagamento.
- Webhooks de e-commerce persistidos antes do enfileiramento, com recuperação após falhas de Redis.
Situação atual
Produto em operação e manutenção, com evoluções em desenvolvimento. Conectores como Tray e Bling têm implementação técnica e validações documentadas; homologação e aceite externo são acompanhados separadamente.


