Conector Vhsys ERP: sincronize vendas, notas fiscais e dados financeiros no seu data warehouse

Sincronize vendas, notas fiscais, clientes, produtos e dados financeiros do Vhsys ERP com BigQuery, Redshift ou PostgreSQL usando a Erathos.

New Connector - Vhsys

Conector Vhsys ERP: sincronize vendas, notas fiscais e dados financeiros no seu data warehouse

O conector Erathos para Vhsys sincroniza pedidos, notas fiscais, clientes, produtos, ordens de serviço e dados financeiros do ERP Vhsys direto para o seu data warehouse. BigQuery, Redshift, PostgreSQL e mais, sem nenhum código de pipeline para escrever ou manter.

O Vhsys é o ERP usado por mais de um milhão de micro e pequenas empresas brasileiras para gerenciar vendas, notas fiscais (NF-e, NFC-e, NFS-e), estoque, ponto de venda e gestão financeira. Ele expõe uma API REST v2 autenticada que, em teoria, torna possível uma extração customizada. Na prática, isso significa construir e manter um pipeline de ETL para lidar com dezenas de endpoints, cursores incrementais espalhados por diferentes campos de timestamp, estruturas de entidades pai-filho e campos fiscais em português, um trabalho que a maioria dos times de dados descobre tarde demais que não consegue sustentar. O conector Erathos resolve essa integração como um serviço gerenciado, sem exigir que seu time escreva ou mantenha esse código.

Todo time de dados que dá suporte a um negócio que roda no Vhsys chega ao mesmo gargalo: pedidos, notas fiscais e recebíveis vivem dentro do ERP, o restante do stack de analytics vive no warehouse, e unir os dois se torna um projeto de engenharia que ninguém planejou. O que começa como um script Python em um cron job se transforma, três meses depois, em um pipeline que ninguém entende, que falha silenciosamente e que nenhum engenheiro quer herdar.

O problema de pipelines Vhsys feitos à mão

A API v2 do Vhsys é autenticada com um access token e um secret access token enviados em toda requisição, e seus endpoints de leitura retornam conjuntos grandes de documentos: pedidos de venda com itens, parcelas e histórico de status; notas fiscais com dezenas de campos fiscais; clientes com detalhes de veículos e tabela de preços. A superfície é simples o suficiente para convencer qualquer engenheiro a construir uma integração em uma tarde. O custo real aparece depois, e é previsível.

Cursores incrementais que diferem por entidade. Todo endpoint atualizável no Vhsys carrega seu próprio timestamp de modificação: data_mod_cliente para clientes, data_mod_pedido para pedidos e notas fiscais, data_mod_produto para produtos, data_mod_rec e data_mod_pag para contas a receber e a pagar. Errar um cursor e o pipeline para de capturar registros alterados sem levantar nenhum erro. Ele continua rodando verde com dados desatualizados.

Estruturas pai-filho que quebram silenciosamente. Notas fiscais, pedidos, ordens de serviço, ordens de compra, orçamentos e vendas balcão são todos pais de tabelas de itens, parcelas e status. Um pipeline feito à mão que reprocessa um pai sem seus filhos, ou que perde a chave de ligação durante uma reescrita, deixa o warehouse com itens órfãos que só aparecem quando a receita por produto não bate com a receita por pedido.

Campos fiscais que evoluem. O Vhsys está no centro da conformidade tributária brasileira, com campos como valor_baseICMS, valor_ST, cfop, ncm, beneficio_fiscal e uma onda de campos de ICMS monofásico que continuam crescendo conforme a reforma tributária avança. Quando o Vhsys adiciona ou renomeia um campo, seus modelos dbt downstream ou falham em produção ou continuam rodando sobre uma coluna ausente com um coalesce, e a inconsistência chega ao dashboard antes de chegar ao seu monitoramento.

Backfills que nunca acontecem. Vendas balcão e pedidos mudam de status depois do fato, notas fiscais são canceladas, recebíveis são liquidados com atraso. Capturar esse histórico exige uma estratégia de reprocessamento que a maioria dos pipelines caseiros não tem, então o warehouse diverge lentamente do ERP e ninguém sabe desde quando.

Observabilidade que não existe. Um 200 OK na chamada HTTP não significa que os dados chegaram completos. Sem contagem de registros por endpoint por execução, sem comparação com a janela anterior, sem alertas de queda de volume, você está voando às cegas. O pipeline que rodou com sucesso pode ter sincronizado metade dos pedidos porque um token da API expirou no meio da extração.

O pior caso não é o pipeline que quebra e dispara um alerta. É o pipeline que executa com sucesso e entrega dados errados, e o DRE e os dashboards de vendas já foram calculados sobre uma base incompleta.

O que você pode fazer quando os dados do Vhsys chegam ao seu warehouse

Antes de detalhar o conector, vale documentar o que você realmente ganha quando pedidos, notas fiscais, clientes e registros financeiros saem do ERP e chegam modelados junto ao restante do seu stack.

Uma visão completa de DRE e fluxo de caixa

Com contas_pagar, contas_receber, extratos, saldo_bancos e categorias_financeiras no warehouse, você constrói seu próprio DRE gerencial e fluxo de caixa, com a dimensionalidade que os relatórios nativos do ERP não oferecem: por centro de custo, por vendedor, por categoria financeira, por período, ou qualquer combinação. A flag visivel_dre nas categorias financeiras e a hierarquia completa de categorias tornam possível reproduzir e auditar o DRE do ERP enquanto você adiciona visões customizadas.

Performance de vendas por canal, vendedor e produto

O Vhsys registra vendas por múltiplos canais: pedidos, vendas_balcao (ponto de venda), orcamentos e ordens_servico. Quando todos estão no warehouse, ligados por produto e vendedores, você mede receita por canal, conversão de orçamento em pedido, comissão de vendedor contra os campos comissao_regra e comissao_usuario, e margem por linha de produto usando os campos de custo registrados no momento da venda. Essa visão entre canais só é possível quando toda superfície de venda aterrissa no mesmo banco de dados.

Giro de estoque e planejamento de compras

Com produtos, produtos_estoque, entradas_mercadoria e ordens_compra sincronizados continuamente, você pode calcular o giro por depósito, detectar estoque parado, comparar lead times de compra contra prazo_entrega e construir modelos de ressuprimento sobre a velocidade real de vendas em vez de feeling. O ERP mostra o estoque atual; o warehouse permite modelar o histórico de como esse estoque se moveu.

Customer 360 integrado ao seu CRM e stack de suporte

A tabela clientes carrega dados cadastrais, fiscais, limite de crédito e atribuição de vendedor de cada cliente, com veículos vinculados via clientes_veiculos. Cruzada com seu CRM, plataforma de e-commerce ou ferramenta de suporte em uma chave de negócio compartilhada, você responde: quais clientes do ERP abriram tickets de suporte, quais contas com limites de crédito altos pararam de comprar, como a frequência de compra se moveu após uma campanha. Só é possível com dados do ERP e do CRM no mesmo warehouse.

Trilha fiscal histórica ao longo do tempo

notas_fiscais, notas_consumidor, notas_servico, suas respectivas tabelas de inutilizadas e cartas_correcao, mais o histórico de status de cada documento, fornecem uma trilha fiscal histórica que queries pontuais contra a API não entregam. Quando um auditor ou contador pergunta por que uma série de notas foi cancelada ou quando uma carta de correção foi emitida, o warehouse tem a resposta com datas, usuários e motivos, ano após ano.

Métricas de operação de serviço para oficinas e prestadores de serviço

Para segmentos que rodam em ordens de serviço, ordens_servico com seus registros filhos de produtos, servicos, parcelas e status registra técnico, veículo, horas de mão de obra, peças e cada transição de status com timestamps. No warehouse, você mede tempo de execução por tipo de serviço, taxas de retrabalho, rejeição de peças via id_motivo_rejeicao e produtividade por técnico, nada do que os relatórios padrão do ERP expõem em granularidade de registro.

O que está disponível no conector

O conector Vhsys entrega dezenas de endpoints prontos para serem materializados no seu warehouse de destino:

Endpoint

O que contém

clientes

Registros mestres de clientes com CPF/CNPJ, endereço, contato, limite de crédito, tabela de preços, vendedor atribuído e condições de frete

clientes_detalhe

Detalhes estendidos do cliente incluindo categoria de cadastro e campos completos de registro fiscal

clientes_veiculos

Veículos registrados por cliente: placa, renavam, marca, modelo, combustível, ano, quilometragem e chassi

categorias

Categorias de produtos com subcategorias

categorias_clientes

Categorias de clientes usadas para segmentação

categorias_financeiras

Categorias financeiras com flag de visibilidade no DRE, grupo financeiro e categoria pai

centros_custo

Centros de custo usados nos registros financeiros e de vendas

subcategorias

Subcategorias de produtos vinculadas às categorias pai

produtos

Catálogo de produtos com preços, custo, campos fiscais (NCM, CEST, ICMS, IPI), variações, kits e imagens

produtos_estoque

Movimentações de estoque por produto, depósito e lote com quantidades e valores

pedidos

Pedidos de venda com totais, impostos, frete, condições de pagamento, transporte e status

pedidos_produtos

Itens de cada pedido de venda com quantidades, preços, descontos e alocação de depósito

pedidos_parcelas

Registros de parcelas de cada pedido de venda

pedidos_status

Histórico de status de cada pedido com timestamps e usuários

orcamentos

Orçamentos com validade, condições de entrega e flags de conversão

orcamentos_produtos

Itens de cada orçamento

orcamentos_parcelas

Registros de parcelas de cada orçamento

orcamentos_status

Histórico de status de cada orçamento

vendas_balcao

Vendas balcão (ponto de venda) com tipo de pagamento, troco e metadados do PDV

vendas_balcao_produtos

Itens de cada venda balcão, incluindo quantidades de troca

vendas_balcao_parcelas

Registros de pagamento de cada venda balcão, vinculados ao contas a receber

vendas_balcao_status

Histórico de status de cada venda balcão

notas_fiscais

Notas fiscais eletrônicas NF-e com detalhamento fiscal completo, metadados de autorização e cancelamento

notas_fiscais_produtos

Itens de cada NF-e com campos fiscais no nível do item e dados de lote

notas_fiscais_parcelas

Parcelas de cada NF-e

notas_fiscais_status

Histórico de status de cada NF-e

notas_fiscais_cartas_correcao

Cartas de correção (CC-e) emitidas por nota, com sequência, protocolo e conteúdo

notas_fiscais_inutilizadas

Registros de faixas de números de notas inutilizadas, com motivo e protocolo

notas_consumidor

Notas do consumidor NFC-e com detalhamento de impostos sobre vendas e metadados de cancelamento

notas_consumidor_produtos

Itens de cada NFC-e com campos fiscais no nível do item

notas_consumidor_parcelas

Parcelas de cada NFC-e

notas_consumidor_status

Histórico de status de cada NFC-e

notas_consumidor_inutilizadas

Registros de faixas de números de NFC-e inutilizadas

notas_servico

Notas fiscais de serviço NFS-e com códigos da lista de serviços, retenção de impostos e detalhamento tributário municipal

lista_servicos

Códigos de referência da lista de serviços com alíquotas de imposto nacional, internacional e municipal

ordens_compra

Ordens de compra com fornecedor, totais e condições de entrega

ordens_compra_produtos

Itens de cada ordem de compra

ordens_compra_parcelas

Parcelas de cada ordem de compra

ordens_compra_status

Histórico de status de cada ordem de compra

ordens_servico

Ordens de serviço com técnico, equipamento, garantia, mão de obra, peças e totais de pagamento

ordens_servico_produtos

Peças usadas em cada ordem de serviço, com motivos de rejeição

ordens_servico_servicos

Serviços executados em cada ordem com horas, valores e técnicos atribuídos

ordens_servico_parcelas

Parcelas de cada ordem de serviço

ordens_servico_status

Histórico de status de cada ordem de serviço

entradas_mercadoria

Entradas de mercadoria com totais, impostos e referências de notas fiscais

entradas_produtos

Itens de cada entrada de mercadoria com lote e alocação de depósito

entradas_parcelas

Parcelas de cada entrada de mercadoria

entradas_status

Histórico de status de cada entrada de mercadoria

contas_pagar

Contas a pagar com fornecedor, vencimentos, valores, pagamentos e referências do Open Finance

contas_receber

Contas a receber com cliente, vencimentos, pagamentos e referências de boleto e QR Code Pix

extratos

Lançamentos de extrato bancário com conta, categoria, centro de custo e método de pagamento

saldo_bancos

Saldos de contas bancárias com totais de entradas e saídas

contas_bancarias

Configuração de contas bancárias com parâmetros de boleto, carteiras e flags de integração

transportadoras

Transportadoras com CNPJ/CPF, endereços e dados de contato

vendedores

Vendedores com regras de comissão, dados bancários e status

autoshop_dados_veiculos

Dados de referência de veículos: combustíveis, cores, marcas, modelos e tipos

webhooks

Configurações de webhook registradas na conta Vhsys

A maioria das entidades centrais sincroniza incrementalmente, usando o timestamp de modificação de cada entidade como cursor: clientes, produtos, pedidos, orcamentos, ordens_compra, ordens_servico, vendas_balcao, notas_fiscais, notas_consumidor, contas_pagar, contas_receber, extratos, saldo_bancos e as demais tabelas de configuração. Os filhos de itens, parcelas e status sincronizam em full refresh, que é o comportamento correto para registros que só existem vinculados a um pai. Os relacionamentos entre entidades são preservados no destino: pedidos como pais de itens, parcelas e status; produtos como pais de registros de estoque e itens em toda superfície de venda; clientes como pais de detalhes e veículos.

Como fazer a autenticação

A autenticação exige dois campos:

  • Access token: seu access token da API Vhsys, enviado no header access-token de toda requisição
  • Secret access token: seu secret access token da API Vhsys, enviado no header secret-access-token de toda requisição
  • Onde encontrá-los: faça login na sua conta Vhsys e vá para Configurações → API. Lá você encontrará o access token e o secret access token dos endpoints da API v2. Copie os dois valores e cole-os nos campos correspondentes na plataforma Erathos

Clique em Salvar e fechar para concluir a configuração. O processo completo, passo a passo, está documentado em https://docs.erathos.com/connectors/apis/vhsys.

Por que terceirizar a ingestão para a Erathos

A premissa do conector é direta: o esforço de engenharia de manter a ingestão não deveria ser responsabilidade do seu time de dados. Gestão de cursores, consistência pai-filho, evolução de schema, retry com backoff, alertas de falha, alertas de queda de volume, backfill. Tudo isso é responsabilidade de quem opera a plataforma de ingestão. Com o conector configurado, a plataforma entrega:

Visibilidade de ponta a ponta de cada execução

Tempo de extração por endpoint, contagem de registros por janela, quais janelas foram processadas, onde houve retries. Quando uma métrica se move em um dashboard e um time abre um ticket, você tem a trilha completa para encontrar a causa raiz.

Alertas configurados de fábrica

Falhas de execução, quedas de volume por endpoint e janelas atrasadas são detectadas e roteadas pelas integrações de alerta que seu time já usa, como Slack e e-mail. Você não escreve esse código.

Reprocessamento como operação suportada

Quando você precisa reprocessar uma janela, por exemplo para capturar notas canceladas após mudar a lógica de um modelo ou para corrigir um período afetado por um problema de token, isso é uma operação da plataforma, não uma sequência improvisada de DELETE + INSERT no warehouse.

Cursores corretos, consistência pai-filho, tratamento de evolução de schema e backfill são responsabilidade da plataforma. Seu time de dados foca no modelo, não na encanação.

Pipelines disponíveis

O conector Vhsys está disponível com os seguintes destinos:

  • Vhsys → Azure SQL Server: https://www.erathos.com/pipelines/vhsys-azure-sql-server
  • Vhsys → Azure Synapse: https://www.erathos.com/pipelines/vhsys-azure-synapse
  • Vhsys → BigQuery: https://www.erathos.com/pipelines/vhsys-bigquery
  • Vhsys → ClickHouse: https://www.erathos.com/pipelines/vhsys-clickhouse
  • Vhsys → Databricks: https://www.erathos.com/pipelines/vhsys-databricks
  • Vhsys → PostgreSQL: https://www.erathos.com/pipelines/vhsys-postgresql
  • Vhsys → Redshift: https://www.erathos.com/pipelines/vhsys-redshift
  • Vhsys → S3 Iceberg: https://www.erathos.com/pipelines/vhsys-amazon-s3
  • Vhsys → Snowflake: https://www.erathos.com/pipelines/vhsys-snowflake
  • Vhsys → Supabase: https://www.erathos.com/pipelines/vhsys-supabase

Comece agora

Crie sua conta Erathos em https://app.erathos.com/signup?slug=blog&button=cta&utm_campaign=vhsys_release e conecte o Vhsys ao seu warehouse em minutos. Com seu access token e secret access token, seus primeiros dados aterrissam no destino sem nenhum código de pipeline para escrever, manter ou monitorar.

Dados de vendas, faturamento e finanças gerados todos os dias não deveriam ficar presos dentro de um ERP, desconectados do restante do seu modelo de analytics. Ou pior: presos em um pipeline caseiro que vai continuar custando a atenção do seu time todo mês, para sempre.

Veja a documentação completa do conector em https://docs.erathos.com/connectors/apis/vhsys.