# Supabase → Sheet VENDAS ## O que faz Busca `fechamentos_web` do Supabase e faz **append** na sheet VENDAS, incremental por `atualizado_em` UTC. ## Pré-requisitos 1. **Supabase account 2 (self-hosted)** — credencial n8n com service role JWT 2. **Google Sheets account** — OAuth com acesso ao spreadsheet `1RGa7Qigu5kWJGCOx3kJ3Oa8wTTJeD-CzGjBYazrjsWk` 3. **Sheet "Sincronizacao"** no spreadsheet — célula A1 com o UTC timestamp do último sync (para o primeiro run, deixar vazio ou usar `1970-01-01T00:00:00Z`) ## Mapa de colunas | Sheet Col | Supabase | |-----------|----------| | DATA | `data` | | EMPRESA | `loja` → `Aliança`/`União` | | SANGRIA | `total_sangrias` | | DINHEIRO | `fechamento_dinheiro` | | PIX_TAXA | `total_pixcnpj` | | PIX_LOJA | `saldo_pixcnpj` | | PRAZO | `total_areceber` | | CREDITO | `total_cartao_credito` | | DEBITO | `total_cartao_debito` | | VOUCHER | `total_cartao_alimentacao` | | CARTAO | `fechamento_cartoes` | | VALES | `total_vales` | | DESPESAS | `total_despesas` | | CANCELADOS | `total_cancelamentos` | | DIFERENCA | `diferenca` | | CAIXA | `operador` | | PG | `status_diferenca === 'ok'` | | T_VENDA | `0` (fórmula na Sheet) | | TX_CAIXA | `0` (fórmula na Sheet) | | SISTEMA | `0` (fórmula na Sheet) | | CLIENTES | `0` (não existe em fechamentos_web) | ## Como instalar 1. Exportar workflow: `Workflows → Add workflow → ⋮ → Import from Code` 2. Copiar o conteúdo de `workflow.js` 3. Configurar credenciais: - Node `Fetch from Supabase` → `Supabase account 2 (self-hosted)` - Nodes `Read Last Sync` / `Append to VENDAS` / `Update Last Sync` → `Google Sheets account` 4. Criar aba `Sincronizacao` no spreadsheet com célula A1 vazia (primeiro sync vai buscar tudo) 5. Activar workflow ## Notas - **Schedule**: `0 20 * * *` (20h BRT = 23h UTC) - O nó `Filter + Map` detecta se há linhas novas; se não houver, faz update do sync marker sem append - Se o Kong do Supabase mudar de IP (erro 502), corrigir em `/opt/supabase/docker/volumes/api/kong.yml`