Lucas Ramos
Lucas Ramos21/09/2025 01:08
Compartilhe

Automação de Contratos com n8n: Entendendo o Código de De duplicação

    A transformação digital vem permitindo que empresas otimizem seus processos internos com ferramentas no-code, eliminando tarefas manuais e repetitivas. Uma dessas ferramentas é o n8n, plataforma de automação flexível que conecta diferentes serviços e organiza fluxos de trabalho de forma visual e inteligente.

    No vídeo apresentado, mostramos um fluxo de automação que cria contratos de maneira automatizada, reduzindo falhas humanas e acelerando a entrega. Essa automação é especialmente útil em departamentos jurídicos, áreas administrativas e empresas que trabalham com alto volume de contratos e precisam garantir padronização.

    Como funciona a automação de contratos no n8n

    O fluxo desenvolvido segue etapas que permitem centralizar e organizar a criação dos contratos:

    1. Recebimento dos dados: informações básicas são coletadas de formulários ou sistemas já existentes.
    2. Validação e deduplicação: antes de gerar o documento, o sistema garante que não haja registros duplicados.
    3. Geração do contrato: o documento é criado automaticamente, seguindo um template padrão definido pela empresa.
    4. Envio e armazenamento: o contrato é enviado para as partes interessadas (por e-mail, WhatsApp ou Teams) e uma cópia é salva em nuvem ou banco de dados.

    Estrutura do Código de Deduplicação

    Aqui está o código usado dentro do nó Code do n8n:

    
    // Deduplica pelos IDs e retorna apenas 1 item (primeiro único)
    
    const KEY = 'id';               // campo usado para identificar duplicatas
    const seen = new Set();
    const unique = [];
    
    for (const item of items) {
    const id = item.json?.[KEY];
    if (id == null) continue;     // ignora itens sem id
    if (!seen.has(id)) {
      seen.add(id);
      unique.push(item);          // guarda o primeiro que aparecer para cada id
    }
    }
    
    // Se quiser devolver só 1 arquivo/objeto:
    return unique.length ? [ unique[0] ] : [];
    

    Explicando a Estrutura

    1. Definição da chave de comparação
    
    const KEY = 'id';
    
    1. O código usa a propriedade id como chave única para identificar duplicatas. Caso o dado tenha outro campo de identificação (por exemplo, cpf ou email), basta alterar essa variável.
    2. Criação de um conjunto (Set) para rastrear IDs já vistos
    
    const seen = new Set();
    
    1. O Set é uma estrutura nativa do JavaScript que não permite valores repetidos. Isso facilita identificar se um id já apareceu.
    2. Lista de itens únicos
    
    const unique = [];
    
    1. Aqui armazenamos apenas os registros que passam no filtro de unicidade.
    2. Loop pelos itens recebidos
    
    for (const item of items) {
    const id = item.json?.[KEY];
    if (id == null) continue;     // ignora itens sem id
    if (!seen.has(id)) {
      seen.add(id);
      unique.push(item);
    }
    }
    
    • Para cada item, pegamos o valor do campo id.
    • Se o id não existir, o item é ignorado.
    • Se o id ainda não foi visto, adicionamos ao Set e também na lista unique.
    • Se o id já existir, o item é descartado.
    1. Retorno do resultado
    
    return unique.length ? [ unique[0] ] : [];
    
    1. Aqui definimos a saída:
    • Caso haja registros únicos, retorna apenas o primeiro (unique[0]).
    • Caso contrário, retorna uma lista vazia.
    🔧 Se você quiser que todos os registros únicos sejam retornados, basta substituir essa linha por:
    
    return unique;
    

    Vantagens dessa Estrutura

    • Simplicidade: poucas linhas de código resolvem o problema.
    • Eficiência: o uso de Set torna a busca por duplicatas muito rápida.
    • Flexibilidade: basta trocar a chave (id, cpf, email, etc.) para se adaptar a diferentes cenários.
    • Controle: você escolhe se retorna apenas um registro ou todos os únicos.

    Benefícios da automação de contratos

    • Agilidade: contratos são gerados em segundos.
    • Padronização: todos seguem o mesmo modelo, reduzindo erros.
    • Escalabilidade: pode atender desde pequenas empresas até grandes operações.
    • Segurança: integrações permitem salvar cópias em sistemas confiáveis, como Supabase ou Google Drive.

    Conclusão

    Automatizar contratos com n8n não só reduz o tempo gasto com tarefas repetitivas, como também aumenta a confiabilidade e profissionalismo da empresa. A união entre automação e inteligência de dados é um passo estratégico rumo à eficiência operacional.

    Se sua empresa ainda não utiliza fluxos automatizados para lidar com contratos, esse é o momento certo para começar.

    Compartilhe
    Comentários (0)