Integração Pipedrive → Omie (Pedidos de Venda)¶
Cenário Make.com
2912018(Org 115055 Bepex) que recebe orçamentos do sistema FlowTech (bepex.flowtech.net.br) via webhook, atualiza o Pipedrive, identifica em qual Omie (DALE Metais / ONIX / ATARES) o pedido entra, cria/reusa o cliente (PJ ou PF), e cria o Pedido de Venda completo com itens, produtos secundários e estrutura (BOM). 46 módulos.
Status atual¶
EM PRODUÇÃO. Suporte a PJ desde sempre; PF habilitado em 2026-04-29 (com bug silencioso
30/04–04/05, corrigido em 2026-05-04). Fixes posteriores: estado nome-completo → sigla UF via
switch() de 27 estados (2026-06-19); guard de UF desacoplado por sub-router 91 (2026-07-03); guard
quebrando CNPJ multi-endereço resolvido com SetVariable + GetVariables + length() (2026-07-07);
validação em produção 8/8 (2026-07-08). Cronologia completa em historico.md.
Como operar no dia a dia¶
| Quero... | O que fazer |
|---|---|
| Disparar um pedido (Daiane/Andrei) | Marcar o orçamento como "concluído" no FlowTech — dispara o webhook automaticamente |
| Ver histórico de execuções | https://us1.make.com/115055/scenarios/2912018/logs |
| Editar o cenário | https://us1.make.com/115055/scenarios/2912018/edit |
| Investigar orçamento que "não subiu" | Achar a execução (geralmente "Success" mesmo com erro silencioso). Abrir [57] AdicionarPedido e checar status 200. Se 500/Invalid JSON, ver onde código cliente omie se perdeu. Se [31] filtrado, checar [93] GetVariables (uf_guard deve resolver pra sigla escalar) |
| Rollback (emergência) | PATCH com o backup do blueprint (ver referencia-tecnica.md § Backups) |
| Falar com vendas sobre a integração | Daiane / Andrei via WhatsApp Bepex (account 3, inbox 26, convs 94 e 30) |
Sistemas envolvidos¶
| Sistema | Papel |
|---|---|
FlowTech (bepex.flowtech.net.br) |
Origem do orçamento; dispara o webhook e recebe callback /marcar-concluido |
| Make.com (cenário 2912018, Org 115055) | Orquestrador, 46 módulos |
Pipedrive (bepex.pipedrive.com) |
Fonte de dados do deal: organização, person, endereço, vendedor |
DateCode (api.datecode.com.br) |
Enriquecimento por CNPJ/CPF (aceita tipoPessoa: "PF") |
| Omie (multi-tenant) | ERP destino — DALE / ONIX / ATARES, cada um com app_key/app_secret/conta próprios |
Casos cobertos¶
Cliente PJ novo/existente ✅ · Cliente PF novo/existente ✅ (desde 04/05, o Omie infere
pessoa_fisica pelos 11 dígitos do CPF) · produto final novo/existente ✅ (5 rotas cobrindo variantes
do "já cadastrado") · produto secundário + estrutura BOM ✅ · erro fiscal/NF-e ⚠️
(codigo_cenario_impostos e CFOP: 5.102 hardcoded — pode falhar em tenant com cenário fiscal
diferente ou venda inter-estadual).
Lição CRÍTICA (aprendida na prática)¶
Filter em módulo do Make aborta TODA a rota sequencial seguinte, não só pula o módulo filtrado. Foi
a causa do bug silencioso de PF (30/04–04/05) e do bloqueio do guard de UF (03/07). Preferir
condicionar mappings (if(cond; A; B)) em vez de filtrar. Corolários: (1) nunca colocar
...array[].campo... cru num filtro de router (vira array — resolver pra escalar num SetVariable
antes); (2) filtro de router não lê variável por referência crua — envelopar em função
(length(N.var)) e ler via GetVariables. Padrão de guard: SetVariable → GetVariables → length().
Pendências / próximos passos sugeridos¶
- [ ] Cancelar 1 pedido duplicado do cliente de Xangri-lá/RS (07/07, criado 2× na recuperação).
- [ ] Validar
codigo_cenario_impostosem DALE e ONIX (hoje validado só na ATARES). - [ ] Tornar
CFOPcondicional (suportar venda inter-estadual). - [ ] Migrar secrets hardcoded (app_secret Omie, token FlowTech, Basic auth DateCode) pra Make Connections.
- [ ] Tornar idempotente:
codigo_pedido_integracao=9.data.orcamento.idem vez de{{timestamp}}. - [ ] Alerta Slack/WhatsApp pros erros (hoje vão por email — fácil perder) + checagem de status real no Omie como módulo final.
Vendedores envolvidos (WhatsApp Bepex — Chatwoot account 3, inbox 26)¶
Andrei (conv 30) · Daiane (conv 94) · Enríco Bertanha (conv 56).
Índice da subpasta¶
| Documento | Conteúdo |
|---|---|
README.md (este) |
Visão executiva, status, como operar, casos, lição crítica, pendências |
arquitetura.md |
Fluxo nó-por-nó dos 46 módulos, padrões de design (multi-tenant, guard UF, PF vs PJ, produto já existente) |
historico.md |
Cronologia datada de bugs/fixes (abr–jul 2026) + 12 lições aprendidas |
referencia-tecnica.md |
IDs, URLs, credenciais (placeholders), custom fields, paths no blueprint, snippets de payload, dados de teste |
handoff-fallback-uf.md |
Playbook (resolvido 06/19) — tradução nome do estado → sigla UF no fallback Pipedrive |
handoff-guard-uf.md |
Playbook (resolvido 07/07) — fix do Guard UF; referência de reuso do padrão SetVariable+GetVariables+length |
ARQUIVOS.md |
Manifesto dos backups de blueprint e docs legados que vivem no Drive/origem |
Consolidação (S7): os docs soltos da pasta-fonte —
PIPEDRIVE_TO_OMIE_INTEGRACAO.md(doc inicial de 29/04, superada porarquitetura.md),PLANO_PIPEDRIVE_TO_OMIE_CPF.md(plano da Fase 1 PF, já executado) ePLANO_CONSOLIDACAO_CAMPOS_NAO_UTILIZAR.md(housekeeping de custom fields do Pipedrive — tema correlato, one-off) — foram incorporados/registrados (verARQUIVOS.md). Os originais permanecem na pasta-fonte.