Skip to main content

Novo Agente

Objetivo principal

Agente daemon Node.js/TypeScript que roda como serviço Windows ou daemon Linux em pontos de venda do varejo brasileiro, lendo saídas de impressoras fiscais/ECF (cupons e reduções Z) e sincronizando dados de vendas, produtos e promoções com o backend do Novo Avanço.

Principais tecnologias

Node.js / TypeScript / Express / Socket.io / lowdb / superagent

Principais funcionalidades

  • Daemon multiplataforma de PDV: roda como serviço Windows ou Linux, com tipos (novoAvanco, cupom, novoAvancoOutros, supervisor) e subtipos (PDV, balança, terminal)
  • Leitura e envio de cupons fiscais: monitora pastas geradas pelo ECF e envia cupons e reduções Z ao backend em tempo real
  • Sincronização com o ERP/backend: recebe cargas de produtos e preços e grava localmente em DBF (Linux) ou SQLite (Windows) para o PDV consumir
  • Sincronização de balança e terminal de consulta: fluxos equivalentes para esses periféricos
  • Promoções Scanntech: busca periodicamente promoções ativas/rejeitadas e gera arquivos lidos pelo PDV para aplicar descontos
  • Consulta de clientes: expõe busca local de clientes cadastrados a partir de base exportada pelo ERP
  • Atualização automática: verifica e baixa novas versões do próprio agente via S3, com canais prod/qas/beta
  • Status em tempo real: reporta conexão, autenticação e progresso de sincronização via Socket.io e SSE local
  • Instalação e gestão como serviço: instala, remove e configura via linha de comando (flags --servico, --instalar, --remover, --config)

 

Principais integrações

  • API Novo Avanço: autenticação, dados de usuário, lojas/filiais e configuração de integrações
  • API CDV: integração com sistema legado de varejistas (obtenção e validação de token)
  • Centralizador Infovarejo: resolve dinamicamente a URL do ambiente do cliente a partir do e-mail
  • API Scanntech: consulta promoções ativas e rejeitadas por loja/empresa
  • Socket.io (backend Novo Avanço): canal bidirecional para eventos de cupom, carga e redução Z
  • SSE local: expõe status de sincronização em tempo real para consumidores locais
  • Amazon S3: distribuição de binários para atualização automática do agente
  • Banco SQLite de clientes (dblite): leitura local de base exportada pelo ERP para consulta de clientes