ERP Integração

Omie Integration Worker | JavaScript

Fluxo de trabalho de integração ERP conectando Omie vendas e produtos API a relatórios e operações downstream em vários sistemas de negócios

Contexto do problema, stack e tipo de sistema

Este worker sincroniza dados do ERP Omie de vendas e produtos para análises e relatórios operacionais. Aplica paginação controlada e higienização para sincronização estável de dados.

Escopo Técnico

  • Stack: JavaScript, Node.js, Omie API, Google Sheets API, GitHub Actions
  • Tipo de sistema: sistema de integração de APIs, automação ERP, pipeline de dados de backend
  • Palavras-chave no contexto: APIs em Node.js, sistema de automação, integração de APIs

Projetos relacionados: SIGE Integration Worker e Zoho Integration Worker.

Documentação completa do projeto

Omie Integration Worker

Código Fonte Portfólio Autor

Um worker Node.js ETL que extrai dados de pedidos de vendas Omie e sincroniza conjuntos de dados normalizados de vendedores e produtos/serviços no Google Sheets.

Visão geral

Este worker foi projetado para pipelines de relatórios leves, onde os dados comerciais Omie precisam ser centralizados em fluxos de trabalho de planilhas.

A integração se concentra em dois alvos analíticos:

  • Vendedor planilha (linhas de vendas no nível do vendedor)
  • Produtos e Servicos planilha (linhas no nível do item de linha)

Arquitetura

graph TB
		A[Google Auth Worker] -->|repository_dispatch| B[Omie Integration Worker]
		B --> C[Omie API]
		B --> D[Google Sheets API]
		C --> E[Pedidos]
		E --> F[Vendedor Dataset]
		E --> G[Produtos e Servicos Dataset]
		F --> D
		G --> D

Componentes de implementação

index.js

  • Recebe token OAuth para Google Sheets
  • Define a janela de data (DATA_INICIO / DATA_FIM ou dia atual)
  • Chama o serviço de listagem Omie
  • Divide o payload em conjuntos de dados de vendedor e de item
  • Acrescenta linhas às planilhas de destino

omieService.js

  • Envolve solicitações Omie API usando axios
  • Injeta APP_KEY e APP_SECRET do meio ambiente
  • Implementa paginação recursiva (ListarPedidos)
  • Adiciona higienização anti-fórmula antes da gravação da saída

Recursos principais

  • Suporte à paginação recursiva para extração completa do período
  • Transformação estruturada para análise de vendedores e produtos
  • Gravações seguras apenas com acréscimos nas guias existentes do Google Sheets
  • Mitigação de injeção de fórmula com higienização de strings
  • Registro mínimo seguro com semântica de status de execução

Configuração

Variáveis de ambiente necessárias

APP_KEY=your_omie_app_key
APP_SECRET=your_omie_app_secret
GOOGLE_TOKEN=oauth_access_token
SPREADSHEET_ID=target_spreadsheet_id
DATA_INICIO=optional_dd/mm/yyyy
DATA_FIM=optional_dd/mm/yyyy

Acionador de fluxo de trabalho

O fluxo de trabalho do repositório é configurado para execuções baseadas em despacho e despacho manual:

on:
	repository_dispatch:
		types:
			- report_token_ready
	workflow_dispatch:

Modelo de saída

Vendedor

  • data
  • nome do vendedor
  • total do pedido
  • número do pedido

Produtos e Serviços

  • data
  • descrição do item
  • quantidade
  • preço unitário
  • nome do vendedor

Notas de segurança

  • As credenciais API nunca são codificadas
  • Segredos injetados no ambiente são necessários em tempo de execução
  • A sanitização evita injeção de payload de fórmula de planilha

Licença

Este projeto está licenciado sob a licença MIT. Veja o notas de licença no repositório.

Autor

Patrick Araujo - Engenheiro de Computação
GitHub: https://github.com/PkLavc
Portfólio: https://pklavc.com/projects/


Omie Integration Worker - Pipeline prático ETL para ERP inteligência de vendas e operações baseadas em planilhas.

GitHub Sponsors

Stack tecnológica

JavaScript
GitHub Actions
Google Sheets
Omie ERP
Node.js

Veja o código-fonte

Abrir em GitHub