Pular para o conteúdo

Automatizar faturas com IA: do PDF à planilha em 6 passos

Automatizar faturas com IA sem programar: puxe os PDFs do Gmail, extraia fornecedor, data e totais para Excel ou Google Sheets, confira e envie ao contador.

Por Yotam DahanAtualizado 16 min de leituraAutomação e agentes

Automatizar faturas com IA: o Claude Code depois de extrair 8 faturas para CSV, explicando um formato numérico alemão, um desconto, uma nota de crédito, uma digitalização e uma data que ele se recusou a chutar

Para automatizar faturas com IA, você reúne os PDFs das faturas da sua caixa de entrada, deixa um modelo de IA como o Claude puxar os campos que o seu contador precisa, confere os números com um script e entrega o resultado em uma planilha ou ao seu contador. O Claude Code faz isso como um lote mensal que você revisa no seu próprio computador, enquanto o n8n roda como um fluxo sempre ligado que trata cada e-mail de fatura assim que ele chega. Abaixo estão as duas rotas, com custos reais, as checagens que pegam totais lidos errado e os pontos de privacidade que você precisa resolver primeiro.

Como funciona o processamento de faturas com IA

Processar faturas com IA significa que um modelo de IA lê cada fatura como uma pessoa leria e devolve sempre a mesma lista fixa de campos, pronta para uma planilha. Ferramentas clássicas de OCR muitas vezes precisam de um modelo para cada layout de fornecedor; um modelo de linguagem lida com um layout novo logo na primeira tentativa, mas ainda pode ler um número errado, e é por isso que existe a etapa de conferência.

As quatro etapas da automação de faturas
  1. Reunir

    PDFs de faturas chegam por e-mail ou caem em uma pasta

  2. Extrair

    Um modelo de IA lê cada um e puxa os campos

  3. Conferir

    Um script confirma que os totais batem e que nada está duplicado

  4. Entregar

    As linhas vão para uma planilha e os arquivos para o contador

Claude Code ou n8n: escolha sua rota

As duas rotas usam as mesmas quatro etapas. A diferença é quando rodam e quanto você vê.

Claude Coden8n
Quando rodaQuando você pede, ou em uma agenda pelo app desktop do ClaudeEm cada verificação que encontra um novo e-mail de fatura, por exemplo a cada hora
Melhor paraUm lote mensal que você revisa de uma vezFaturas tratadas conforme chegam
ConfiguraçãoUma pasta, um prompt e um conector opcional do GmailCinco nós conectados, um modelo de IA e credenciais do Google
Custo principalSeu plano do ClaudeUm plano do n8n ou seu próprio servidor, mais o uso do modelo de IA
Precisa programarNãoNão, mas você configura cada nó

Novo no lado do n8n? Comece pelo tutorial de n8n para iniciantes.

Quanto custa automatizar faturas com IA

$20

por mês pelo Claude Pro, que inclui o Claude Code

€20

por mês pelo n8n Cloud Starter, no plano anual

2.500

execuções de fluxo por mês no n8n Starter

$0,10

por milhão de tokens de entrada no Claude Haiku 5.5

Dados de claude.com/pricing, n8n.io/pricing e da página de preços da API da Anthropic, outubro de 2026.

Rota do Claude Code: o trabalho conta dentro da cota de uso do seu plano do Claude, então não existe cobrança por fatura. O Pro custa $20 por mês (página de preços do Claude).

Rota do n8n: uma verificação que encontra faturas novas conta como uma execução, e a documentação de execuções do n8n diz que uma verificação que não encontra nada não conta, então mesmo checando a cada hora você fica bem abaixo das 2.500 do Starter. O plano mensal custa mais; o guia de preços do n8n traz todos os planos.

A etapa de IA: a documentação de PDF da Anthropic calcula uma página em 1.500 a 3.000 tokens de texto. No limite mais alto, 100 faturas de uma página dão uns 300.000 tokens de entrada: 3 centavos de dólar no Haiku 5.5 ou 60 centavos no Sonnet 5.5, mais um pouco pelas respostas curtas.

Qual é o melhor modelo de IA para processar faturas?

Comece pelo modelo mais barato que a sua ferramenta oferece, como o Claude Haiku 5.5. No nosso teste abaixo, ele não errou mais que o Sonnet 5.5, e o relatório de custos do Claude Code calculou cada execução do Haiku em 1 a 2 centavos, contra uns 25 centavos do Sonnet (preços de tabela da API). Só suba de modelo se as suas checagens continuarem marcando números lidos errado em PDFs limpos.

Extração de dados de faturas: decida os campos primeiro

Combine os campos com o seu contador antes de montar qualquer coisa. Mudar depois significa corrigir cada linha que você já tem.

CampoExemploPor que importa
Tipo de documentoinvoiceImpede que notas de crédito contem como custos
Nome do fornecedorNorthwind SuppliesAgrupa os custos por fornecedor
Número da faturaINV-2041Pega duplicatas
Data da fatura2026-10-03Coloca o custo no período certo
MoedaEUREvita misturar valores
Subtotal400.00O valor antes dos impostos
Outras cobranças0.00Frete, taxas e descontos, para a conta continuar fechando
Impostos80.00Necessário para as declarações fiscais
Total480.00Precisa ser igual a subtotal mais outras cobranças mais impostos
Nome do arquivo2026-10_northwind_INV-2041.pdfLiga cada linha ao original

Os valores de exemplo são inventados para mostrar o formato.

Qual é a precisão da extração de faturas com IA? Testamos 8 faturas

A tela no topo deste guia é uma dessas execuções, em uma sessão interativa com o CLAUDE.md já corrigido: as oito linhas salvas, a digitalização lida a partir da imagem e a data ambígua 10/09/2026 deixada vazia e listada para revisão em vez de chutada.

Criamos oito faturas falsas que parecem a caixa de entrada de um mês real: uma limpa, rótulos diferentes ("Bill #", "Amount due"), uma data americana que pode ser lida de duas formas (10/09/2026), formato numérico alemão (1.234,50 €), uma linha de frete, um desconto, uma digitalização com ruído e uma nota de crédito. Rodamos o prompt de extração da Rota A nelas no Claude Code dez vezes, sete com o Haiku 5.5 e três com o Sonnet 5.5, adicionando Outras cobranças, Tipo de documento e depois a regra de datas do CLAUDE.md abaixo ao longo do caminho.

FaturaO que aconteceu
Limpa, rótulos diferentes, formato alemãoTodos os valores certos nas 10 execuções, 1.234,50 € incluído
Digitalização com ruídoLida corretamente nas 10 execuções; um extrator simples de texto de PDF (pdftotext) não tirou nada dela
10/09/2026 de um estúdio do BrooklynDeixada vazia para revisão em 9 execuções; uma execução do Haiku escolheu 9 de outubro por conta própria, antes de adicionarmos a regra de datas
Linha de frete e descontoLidas certo, mas com os campos originais a checagem de subtotal mais impostos marcou as duas faturas corretas em todas as execuções
Nota de créditoCampos originais: deixada de fora em 3 execuções, adicionada uma vez sem moeda. Com Tipo de documento: uma linha negativa todas as vezes
  • Nenhum valor errado. Todo valor que o modelo preencheu batia com a fatura. As falhas foram campos em branco, que é exatamente o que a regra "nunca chute" pede.
  • Não confie na conferência que o próprio modelo faz das contas. Uma execução do Haiku informou que subtotal, impostos e total "batem em todos os casos" quando duas linhas não batiam. É por isso que o Passo 4 usa um script.
  • Dois campos a mais acabaram com os alarmes falsos. Com Outras cobranças e Tipo de documento na lista de campos, a checagem aprovou todas as faturas corretas nas seis execuções seguintes.

Rota A: Claude Code, passo a passo

Esta rota entrega um lote revisado, normalmente uma vez por mês. Ela serve para quem quer ver cada fatura antes de ela ir para qualquer lugar; para outras tarefas que o Claude Code pode assumir em uma empresa, veja Claude Code para pequenas empresas.

Passo 1: monte a pasta e as regras

text
invoices/
  CLAUDE.md
  inbox/       os PDFs de faturas novas vêm para cá
  processed/   cópias renomeadas depois da extração
  reports/     a planilha e o resumo do mês

Coloque as regras no CLAUDE.md da pasta, o arquivo que o Claude Code lê no início de cada sessão:

markdown
# Faturas
- Extraia só estes campos: document_type, vendor_name, invoice_number, invoice_date, currency, subtotal, other_charges, tax, total, file_name.
- document_type é invoice ou credit_note. Notas de crédito recebem valores negativos.
- other_charges é frete, taxas e descontos somados em um único número (descontos negativos, 0 se não houver).
- Se uma data puder ser lida de duas formas, como 10/09/2026, deixe vazia.
- Nunca chute um valor. Deixe vazio e liste o arquivo em "needs review".
- Nunca apague nem edite arquivos em inbox/. Salve cópias renomeadas em processed/.
- Nunca envie e-mail. Crie apenas rascunhos.

Passo 2: leve as faturas para a pasta

O começo mais simples é você mesmo salvar os anexos PDF do mês em inbox/. Para garantir que nenhuma falte, conecte o conector do Gmail do Google em claude.ai/customize/connectors; o Claude Code passa a usá-lo automaticamente quando você está conectado com o seu plano do Claude. O conector consegue pesquisar seus e-mails, mas a página dos conectores do Google Workspace da Anthropic diz que ele só vê os metadados dos anexos, não os arquivos em si. Então deixe o Claude montar a lista de conferência, usando os operadores de pesquisa do Gmail:

Encontre os e-mails de faturas deste mês
Pesquise no meu Gmail: has:attachment filename:pdf {subject:fatura subject:invoice subject:recibo} newer_than:1m
Liste cada resultado em uma tabela: data, remetente, assunto e nomes dos anexos.
Depois compare os remetentes com os fornecedores do mês passado em @reports/ e liste quem ainda não mandou fatura.
Não encaminhe, não rotule e não apague nada.

Baixe os anexos dessa tabela em inbox/ e cobre os fornecedores da lista de faltantes. Para o básico de segurança ao conectar ferramentas, veja o que é um servidor MCP.

Passo 3: extraia dados de faturas em PDF para Excel ou Google Sheets

O Claude Code lê arquivos PDF diretamente, então a extração é um único prompt. O CSV que ele gera abre no Excel ou no Google Sheets.

Extraia os dados das faturas
Leia cada PDF em @inbox/. Para cada fatura, adicione uma linha em reports/invoices-[MÊS].csv com os campos do CLAUDE.md.
Escreva as datas como AAAA-MM-DD e os valores como números simples, sem símbolo de moeda.
Copie cada arquivo para processed/ com o nome AAAA-MM_fornecedor_numero-da-fatura.pdf e coloque esse nome em file_name.
Se um valor não estiver claro, deixe vazio e adicione o arquivo a uma lista "needs review" no final.

Passo 4: confira os números

Confira as faturas extraídas
Escreva um pequeno script que confira reports/invoices-[MÊS].csv e depois rode o script:
1. subtotal + other_charges + tax = total em todas as linhas (aceite diferença de 0.01 por arredondamento)
2. nenhum par de fornecedor e número de fatura aparece duas vezes
3. toda data de fatura cai em [MÊS]
4. toda linha tem moeda
Mostre o total de todas as faturas por moeda e liste cada linha que falhou em alguma checagem, com o motivo.

Veja como fica uma execução em um arquivo de exemplo com quatro problemas plantados, incluindo dois dígitos trocados (1404 em vez de 1440):

Saída do script de checagem marcando um total errado, uma duplicata, uma data fora do mês e uma moeda faltando, a etapa de segurança quando você automatiza faturas com IA
Uma execução real de um script de checagem em faturas de exemplo inventadas, outubro de 2026. As linhas marcadas ficam fora dos totais até você corrigi-las.

Passo 5: prepare o pacote para o contador

Prepare o pacote para o contador
Compacte os arquivos de processed/ de [MÊS] em reports/invoices-[MÊS].zip.
Escreva um resumo curto: número de faturas, totais por moeda e a lista "needs review".
Crie um rascunho no Gmail para [E-MAIL DO CONTADOR] com esse resumo como mensagem. Não envie.

Abra o rascunho no Gmail, anexe você mesmo o zip e o CSV, leia uma vez e envie.

Passo 6: deixe mensal

Quando as etapas rodarem sem problemas, peça ao Claude Code para salvar os Passos 3 a 5 como uma skill chamada month-end-invoices, um procedimento salvo que você inicia com um comando; como criar uma skill do Claude mostra o formato. Depois, em qualquer sessão no app desktop do Claude, peça para agendar essa skill para o dia 1 de cada mês.

Segundo a documentação de tarefas agendadas do desktop da Anthropic, essas tarefas locais só rodam enquanto o app está aberto e o computador está acordado; se ele dormir durante o dia 1, uma execução de recuperação começa quando ele acordar.

Rota B: automação de faturas no n8n, passo a passo

O n8n é uma plataforma de automação em que cada etapa é um nó, uma caixa em uma tela que faz uma única tarefa, e os dados passam de nó em nó. Este fluxo processa cada e-mail de fatura assim que ele chega:

O fluxo de faturas no n8n
  1. Gmail Trigger

    Detecta um novo e-mail de fatura e baixa o PDF

  2. Gmail

    Envia o PDF para o seu contador

  3. Extract From File

    Tira o texto de dentro do PDF

  4. Information Extractor

    Um modelo de IA transforma o texto em campos

  5. Google Sheets

    Adiciona ou atualiza uma linha por fatura

A etapa de envio do Gmail sai do gatilho em um ramo próprio. As etapas de extração não levam o arquivo PDF adiante, então a etapa de envio pega o anexo direto do gatilho.

  1. Gmail Trigger. Escolha o evento Message Received e defina Poll Times, por exemplo a cada hora. Em Filters > Search, digite has:attachment filename:pdf {subject:fatura subject:invoice subject:recibo}. Desligue Simplify, depois em Options adicione Download Attachments e ligue. O primeiro anexo chega como um campo de arquivo chamado attachment_0.
  2. Gmail, ramo de envio. Conecte um nó do Gmail ao gatilho e escolha a operação Send para mensagem. Coloque em To o endereço do seu contador, no assunto algo como Fatura: {{ $json.subject }} e uma mensagem de uma linha, e em Options > Attachments digite attachment_0 como nome do campo.
  3. Extract From File. Conecte ao gatilho como um segundo ramo. Escolha Extract From PDF e defina Input Binary Field como attachment_0. O texto do PDF sai em um campo chamado text.
  4. Information Extractor. Defina Text como {{ $json.text }} e Schema Type como From Attribute Descriptions, depois adicione um atributo por campo da tabela acima, cada um com uma descrição de uma linha, e defina Type como Number para os quatro valores. Conecte um modelo de chat, como o nó Anthropic Chat Model, em Model. As respostas chegam dentro de um campo chamado output.
  5. Google Sheets. Escolha Append or Update Row, para as suas faturas caírem no Google Sheets automaticamente. Adicione uma coluna key na planilha e use-a para a correspondência, preenchendo com {{ $json.output.vendor_name }}-{{ $json.output.invoice_number }}, para que uma fatura reenviada atualize a linha dela em vez de criar uma cópia. Mapeie as outras colunas manualmente, como {{ $json.output.total }}. Se a sua contabilidade fica no QuickBooks Online, o nó dele no n8n pode criar uma Bill lá, quando o seu contador já confiar nos dados.
  6. Teste e depois publique. Mande para você mesmo um e-mail com uma fatura de exemplo, coloque o seu próprio endereço no lugar do contador na primeira execução e execute o fluxo. Quando a linha e o e-mail estiverem certos, volte o endereço do contador e clique em Publish para ele rodar sozinho.

As configurações dos nós vêm da documentação do n8n para o Gmail Trigger e o Information Extractor, conferidas com o código-fonte dos nós.

Prefere começar do fluxo de outra pessoa? Pesquisar "invoice" na biblioteca de modelos do n8n retorna mais de 300 fluxos da comunidade. Trate qualquer modelo de processamento de faturas do n8n como ponto de partida: confira cada nó, e principalmente para onde ele envia os seus dados, antes de adicionar credenciais.

Privacidade e proteção de dados

Faturas contêm nomes, endereços, dados bancários e valores. Resolva estes pontos antes da primeira fatura real passar; os termos do Claude vêm da página de uso de dados da Anthropic.

0 de 6 feitas

Problemas comuns e soluções

Problema ou mensagemCausa provávelSolução
This operation expects the node's input data to contain a binary file 'attachment_0', but none was foundSimplify está ligado, Download Attachments está desligado ou o e-mail não tinha arquivoDesligue Simplify, ligue Download Attachments e mantenha has:attachment na pesquisa
Alguns e-mails de fatura nunca disparam o gatilhoRead Status está em Unread emails only e alguém abriu esses e-mailsMude Read Status para Unread and read emails
O Extract From PDF devolve texto vazioO PDF é uma digitalizaçãoUse Analyze Document no lugar
pdftoppm is not installed no Claude CodeO PDF tem mais de 10 páginas, o que exige as ferramentas do popplerRode brew install poppler em um Mac e tente de novo
is Anthropic-hosted and doesn't support local OAuthVocê adicionou o Gmail com claude mcp addRode claude mcp remove com esse nome e conecte o Gmail pelo claude.ai
O conector do Gmail não aparece no Claude CodeO Claude Code está usando uma chave de API, não o seu planoRode /status, remova a variável ANTHROPIC_API_KEY e rode /login
Um total não bateUm número lido errado, ou frete ou desconto fora de Outras cobrançasConfira other_charges primeiro e depois leia o original

As mensagens do n8n vêm do código-fonte dos nós, e as do Claude Code vêm da documentação de MCP da Anthropic e da referência de ferramentas.

Teste rápido0 de 2 corretas

O total de uma fatura não é igual ao subtotal mais outras cobranças mais impostos. O que deve acontecer?

Você pede ao Claude para buscar os PDFs das faturas deste mês pelo conector do Gmail. O que acontece?

O que fazer agora

Escolha sua rota: Claude Code se você quer um lote mensal que você revisa, n8n se as faturas devem ser tratadas conforme chegam. Depois rode com as faturas do mês passado, que você já conhece, antes de confiar nela com as deste mês.

O curso de Claude Code tem uma aula que monta este agente da caixa de entrada ao contador passo a passo. Para automações que mantêm suas ferramentas conectadas o tempo todo, nosso curso de automação com IA, Autopilot, está em acesso antecipado, e o que é automação com IA explica onde ela se encaixa.

Kit de configuração da automação de faturas

A lista de campos com formatos, um prompt de extração pronto com checagens embutidas, cada configuração dos nós do n8n em uma tabela e um modelo de e-mail para o contador.

Digite seu e-mail e a seção completa abre aqui mesmo. Você também ganha uma aula grátis do curso.

Sem spam. Cancele com um clique. Usamos seu e-mail para enviar o curso e dicas de IA.

Perguntas frequentes

Qual é a precisão do processamento de faturas com IA?

Nas nossas oito faturas de teste, incluindo uma digitalização, uma fatura alemã e uma nota de crédito, o Claude não preencheu nenhum valor errado em dez execuções; os problemas vieram de datas ambíguas e de totais que incluem frete ou descontos. Arquivos reais variam, e fotos de celular, digitalizações apagadas e escrita à mão causam mais erros de leitura, então mantenha as checagens por script e olhe cada linha marcada.

Existe um jeito grátis de automatizar faturas com IA?

Em parte. A Community Edition do n8n não custa nada para auto-hospedar, mas você mesmo roda o servidor, e a etapa do modelo de IA é cobrada pelo provedor, normalmente alguns centavos por lote. O Claude Code precisa de um plano pago do Claude ou de créditos de API.

A IA também consegue ler recibos e fotos de faturas?

Sim. O Claude lê imagens PNG e JPEG além de PDFs, então recibos e faturas fotografadas funcionam na rota do Claude Code. Espere mais itens na sua lista de revisão, porque desfoque, sombras e dobras causam erros de leitura.

Funciona com o Outlook em vez do Gmail?

Sim. No n8n, o nó Microsoft Outlook Trigger tem a sua própria opção Download Attachments, então você pode trocar os nós do Gmail pelos do Outlook. Na rota do Claude Code, a Anthropic oferece um conector do Microsoft 365.

A automação pode pagar as faturas também?

Ela pode preparar uma lista do que vence e quando, mas mantenha os pagamentos manuais. O dinheiro só deve sair por você ou pelo seu contador, com as etapas de aprovação do próprio banco.

Por quanto tempo devo guardar as faturas originais?

Depende das regras fiscais do lugar onde a sua empresa está registrada, então pergunte ao seu contador. Seja qual for o prazo, a automação deve copiar dados das faturas, nunca apagar os e-mails ou arquivos originais.

Continue lendo