Extrair Itens de Notas Fiscais de Vários Fornecedores
de Alimentos em uma Única Planilha
Uma terça-feira típica de entregas em um restaurante gera três notas fiscais. Sysco: um PDF de 5 páginas com 52 itens, códigos de produto, tamanhos de embalagem e uma coluna para peso variável das proteínas. US Foods: um PDF de 3 páginas enviado por e-mail com um layout completamente diferente — a coluna de preço unitário está duas posições à esquerda, as descrições usam abreviações diferentes. O fornecedor local de hortifrúti: um comprovante de entrega manuscrito listando 15 itens com quantidades rabiscadas a caneta. São cerca de 100 itens chegando simultaneamente em três formatos incompatíveis. No r/smallbusiness, um empresário fez a pergunta que operadores de restaurantes enfrentam toda semana: "Nossos fornecedores enviam notas fiscais em PDF e precisamos delas no Excel. Quais ferramentas vocês usam?" As respostas naquele tópico apontam para a digitação manual como padrão. Este artigo descreve a alternativa automatizada — e por que as notas fiscais de distribuidores de alimentos exigem mais das ferramentas de extração do que uma nota fiscal de material de escritório comum jamais exigirá.
Principais Conclusões
- 52 itens e mais de 750 valores individuais estão em uma única nota fiscal da Sysco, mas ferramentas baseadas em modelos extraem silenciosamente "40 lbs pedidos" quando a nota foi realmente precificada com base em 38,7 lbs recebidos (peso real, onde o fornecedor cobra pelas libras efetivamente entregues, não pelo que foi pedido), escondendo a discrepância por linha até a conciliação de fim de mês expô-la.
- Precificação por peso real, tamanhos de embalagem que variam por fornecedor e substituições manuscritas pelo motorista não são casos raros — aparecem na maioria das notas fiscais de alimentos — e a extração por modelo falha sistematicamente porque esses campos não estão em posições fixas de grade que um modelo possa apontar.
- Defina os nomes das colunas uma vez — Qtd Pedida, Qtd Recebida, Flag de Peso Real — e o ImageToTable.ai extrai cada item da nota da Sysco em PDF, da US Foods em PDF e de um bilhete manuscrito de hortifrúti em um único lote, lendo o que os dados significam em vez de onde estão, transformando duas horas de digitação em minutos de verificação.
Por que uma Nota Fiscal de Distribuidora de Alimentos é Mais Complexa que uma Nota Padrão
Uma nota fiscal padrão de material de escritório é direta: nome do fornecedor no topo, número da nota, data e uma tabela curta de itens — descrição, quantidade, preço unitário, total do item. O documento inteiro cabe em uma página. Os campos são rotulados de forma consistente. A extração resolve um problema de layout.
Uma nota fiscal de distribuidora de alimentos resolve cinco problemas de uma só vez. Primeiro, o tamanho: uma nota da Sysco tem rotineiramente de 4 a 5 páginas, com 40 a 60 itens espalhados por tabelas contínuas que frequentemente quebram no meio de uma categoria entre páginas. Um único pedido para um restaurante movimentado pode incluir hortifrúti, laticínios, proteínas, secos, descartáveis e produtos de limpeza — cada um em uma seção separada na mesma nota, às vezes com subtotais por seção que se parecem com itens, mas não são.
Segundo, a variação no tamanho da embalagem: o mesmo ingrediente aparece em unidades diferentes conforme o fornecedor. Peito de frango da Sysco é vendido em caixa de 40 libras. O mesmo produto da US Foods vem em caixa de 50 libras. O fornecedor local de aves vende por libra diretamente. A extração dos itens precisa capturar o tamanho da embalagem e a unidade de medida de cada linha — não apenas o preço da nota — porque comparar preços entre fornecedores exige normalizar para uma unidade comum. Uma extração em nível de cabeçalho que captura apenas o total da nota é inútil para qualquer análise de custo posterior.
Terceiro, peso real: proteínas (carne bovina, frango, peixe) costumam ser precificadas pelo peso real, não pelo peso pedido. A nota fiscal mostra "Pedido: 40 lbs" e "Recebido: 38,7 lbs" na mesma linha, com o preço calculado a partir do peso real. Uma ferramenta que lê cegamente o primeiro número que vê ao lado de um campo de peso extrairá a base de preço errada. A extração precisa identificar qual campo de peso determina o preço e extrair aquele — não o outro.
Quarto, ajustes manuscritos: entregas de alimentos geralmente incluem substituições. O motorista risca "Carne Moída 80/20 — 2 caixas" e escreve "Substituído por 85/15 — mesmo preço." Ou um item de hortifrúti é reduzido: "Tomate Roma — pedido 25 lbs, reduzido 5 lbs." Essas anotações são escritas à mão diretamente na nota fiscal impressa. O OCR tradicional lê texto impresso e texto manuscrito como blocos não relacionados; não consegue conectar "substituído" ao item da linha acima. Um modelo de visão que lê para entender o significado pode identificar que a caligrafia pertence ao item adjacente e ajustar a extração adequadamente.
Quinto, lote de múltiplos fornecedores: as três notas fiscais de terça-feira não compartilham um formato. A Sysco usa um layout. A US Foods usa outro. A anotação manuscrita do fornecedor de hortifrúti não usa nenhum dos dois. Uma ferramenta de extração baseada em modelos precisa de três configurações separadas — e a anotação manuscrita fica sem nenhuma, porque não é possível criar modelos para caligrafia livre. Toda a promessa de processamento em lote desmorona quando você precisa configurar cada fornecedor individualmente.
Notas fiscais de distribuidoras de alimentos não são "notas com comida nelas". São documentos estruturados de várias páginas com exceções embutidas, conteúdo escrito e impresso compartilhando a mesma página, e diversidade de formatos que torna a configuração por fornecedor um custo recorrente. Qualquer abordagem de extração que as trate como notas fiscais comuns vai perder os dados que mais importam.
O Que Você Está Realmente Extraindo — Dados de Cabeçalho vs. Itens de Linha
A extração de notas fiscais se divide em dois níveis. Os dados de cabeçalho respondem "quem enviou isso e quando": nome do fornecedor, número da nota fiscal, data de emissão, data de vencimento, número do pedido de compra e valor total da nota. Para notas fiscais de distribuidoras de alimentos, a extração apenas do cabeçalho quase não te dá nada — você sabe quanto gastou na Sysco esta semana, mas não em quê.
A extração de itens de linha responde "o que comprei e quanto custou cada coisa". Cada linha na saída representa um item da nota fiscal, com colunas para:
Campos de nível de cabeçalho (um valor por fatura):
Nome do Fornecedor | Número da Fatura | Data da Fatura | Data de EntregaCampos de item de linha (uma linha por item, repetido para cada linha):
Código do Item / SKU | Descrição do Item | Categoria (Hortifrúti/Laticínios/Proteína/Seco/Papel)
Quantidade Pedida | Quantidade Recebida | Unidade (lb/cx/unidade/galão)
Tamanho da Embalagem | Preço Unitário | Total da Linha
Peso Variável (S/N) | Peso Recebido | Base de Preço (Pedido/Real)
Nota de Substituição | Lote / Número do LotePara uma fatura da Sysco com 52 itens de linha, são 52 linhas de saída × ~15 colunas = 780 valores individuais extraídos — de uma única fatura. Em três fornecedores, um dia de entrega produz cerca de 1.500 pontos de dados extraídos. A entrada manual a 5 segundos por valor levaria mais de duas horas. A extração descrita abaixo lida com isso em segundos, com verificação levando minutos em vez de horas.
Os campos destacados em negrito — Quantidade Recebida, Peso Real, Base de Preço, Observação de Substituição — são os que diferenciam a extração de notas fiscais de distribuidoras de alimentos da extração genérica de faturas. São os campos onde a maioria das ferramentas falha silenciosamente: elas extraem a Quantidade Pedida porque é o primeiro número que veem, mas o preço da nota foi calculado com base na Quantidade Recebida, e a discrepância passa despercebida até a reconciliação de inventário no final do mês.
O Fluxo de Extração Passo a Passo
O fluxo abaixo utiliza a extração por nome de coluna: em vez de marcar campos de formulário no layout da nota de cada fornecedor, você digita os nomes das colunas desejadas, e a IA encontra os dados correspondentes em cada página, entendendo o significado da informação — não sua posição. Uma única definição de coluna funciona no PDF da Sysco, no PDF da US Foods e na nota manuscrita do fornecedor local, sem necessidade de configuração por fornecedor.
Passo 1 — Defina os nomes das colunas uma vez. Eles são salvos como um modelo e reutilizados para cada lote de entregas:
Nome do Fornecedor | Nº da Nota | Data da Nota | Data da Entrega
Código do Item | Descrição do Item | Categoria
Qtd. Pedida | Qtd. Recebida | Unidade (lb/cx/un)
Tamanho da Embalagem | Preço Unitário | Preço Total (Total da Linha)
Peso Real (S/N) | Peso Real Recebido
Observação de Substituição / AjusteEtapa 2 — Envie todas as notas fiscais de uma vez. Arraste o PDF da Sysco (5 páginas), o PDF da US Foods (3 páginas) e uma foto do celular com a nota manuscrita dos produtos em um único upload em lote. Sem configuração por fornecedor. Sem criação de modelos. A IA lê os três simultaneamente, associando o nome de cada fornecedor à sua respectiva nota fiscal.
Etapa 3 — Revise o resultado, não o transcreva. O resultado é um único arquivo Excel onde cada linha é um item, cada coluna corresponde aos nomes de campos que você definiu, e a coluna Nome do Fornecedor indica de qual nota fiscal cada linha veio. A etapa de verificação — examinar a planilha em busca de valores sinalizados ou com baixa confiança — leva minutos por lote de entrega, em vez das horas de digitação manual que substitui:
| Fornecedor | Cód. Item | Descrição do Item | Categoria | Qtd Ped | Qtd Rec | Unid | Tam. Embalagem | Preço Unit. | Preço Total | Peso Captura | Obs. Sub |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Sysco | 472819 | PEITO FRANGO S/PELE S/OSSO 170G | Proteína | 2 | 2 | cx | 18 kg | $2.82 | $225.60 | N | |
| Sysco | 883412 | CARNE MOÍDA 80/20 4,5KG | Proteína | 3 | 3 | cx | 4,5 kg | $3.45 | $103.50 | N | |
| Sysco | 556201 | TOMATE ROMA 11KG | Hortifrúti | 2 | 2 | cx | 11 kg | $1.50 | $75.00 | N | |
| US Foods | CHK-BR-6 | PEITO DE FRANGO DESOSSADO 170G | Proteína | 2 | 2 | cx | 23 kg | $2.70 | $270.00 | N | |
| US Foods | BEEF-8020 | CARNE MOÍDA 80/20 FRESCA | Proteína | 3 | 3 | cx | 4,5 kg | $3.60 | $108.00 | N | |
| US Foods | SALM-ATL-8 | FILÉ DE SALMÃO ATLÂNTICO 227G | Proteína | 15 | 14,3 | kg | — | $12.50 | $178.75 | S | Peso real: 14,3 kg |
| Produtor Local | — | Tomates Roma | Hortifrúti | 20 | 18 | kg | — | $1.35 | $24.30 | N | Faltaram 2 kg |
Observe as diferenças que a IA resolve automaticamente. A Sysco codifica peito de frango como "472819" com uma abreviação de 12 caracteres. A US Foods codifica como "CHK-BR-6" com uma descrição mais longa. Os nomes dos itens parecem diferentes — mas ambos mapeiam para a mesma categoria (Proteína) e podem ser comparados em uma tabela dinâmica. O salmão do Atlântico da US Foods tem peso real: 15 lbs pedidos, 14,3 lbs recebidos, precificado pelo peso real. Os tomates Roma locais estão com 2 lbs a menos, e a nota de substituição captura isso. A extração captura todos esses casos extremos em uma única passagem por três formatos diferentes de nota fiscal.
Os Casos Extremos Que Quebram a Extração Baseada em Modelos — e Como a IA Lida com Eles
As notas fiscais de distribuidores de alimentos têm modos de falha que não existem em notas fiscais padrão. Entendê-los explica por que as ferramentas baseadas em modelos exigem manutenção constante — e por que uma abordagem de extração semântica não precisa.
Ajustes manuais em itens de linha. Um motorista escreve "trocou 85/15 por 80/20 — mesmo preço" na linha da carne moída. Para uma ferramenta baseada em modelo, isso é ruído — o OCR pode ler os caracteres, mas o modelo espera um valor específico na célula "Total da Linha" e não sabe o que fazer com texto livre ao lado. Um modelo de visão que lê semanticamente reconhece que o texto manuscrito pertence contextualmente ao item de linha adjacente e o extrai para a coluna "Observação de Substituição". O pedido original — carne moída 80/20 — ainda é capturado. O fato de ter sido substituído é capturado. A cozinha sabe o que realmente recebeu.
Precificação por peso real. Quando salmão, bife ou queijo é precificado pelo peso real, a nota fiscal mostra duas colunas de peso para a mesma linha: pedido e recebido. O total da nota usa o peso recebido. Uma ferramenta que extrai ambos os números, mas não identifica qual deles determina o preço, cria um erro de conciliação que aparece na contagem de estoque. A extração por IA com nomes de colunas claros — "Qtd. Pedida" e "Qtd. Recebida" como colunas separadas, mais uma flag "Peso Real (S/N)" — preserva ambos os valores e torna explícita a base de precificação.
Quebras de página no meio de uma tabela. A tabela de itens de linha de uma nota fiscal da Sysco abrange as páginas 2 e 3, com a quebra de página ocorrendo entre os itens 28 e 29. Os cabeçalhos das colunas não se repetem na página 3. Um modelo que espera que a tabela comece em uma posição fixa na página 1 perde o controle de todas as linhas após a quebra de página. A extração por IA, que busca descrições de itens e valores numéricos associados, não se importa com limites de página — ela continua lendo o documento como um fluxo contínuo.
Unidades de medida mistas. Uma mesma nota fiscal pode listar hortifrútis por caixa (25 lb de tomate Roma), laticínios por galão (leite integral), proteínas por libra (salmão) e secos por unidade (saco de 50 lb de farinha). A coluna de unidade muda de significado a cada linha. A extração baseada em modelos geralmente assume uma única unidade de medida por nota e classifica valores incorretamente. A extração por IA que lê o campo de unidade de cada linha de forma independente lida corretamente com essa mistura, pois trata cada linha como seu próprio contexto de extração.
De Itens Extraídos a Planilhas Acionáveis
Extrair os itens é o primeiro passo de uma rotina operacional semanal. O que vem a seguir transforma os dados em decisões.
Atualizar custos de receitas. Cada item extraído traz um preço unitário. Para restaurantes que monitoram custos por prato, essa é a entrada para o cálculo da porcentagem de custo de alimentos. Quando a nota da Sysco mostra peito de frango a $2,82/lb, mas a US Foods tem a $2,70/lb, o preço do fornecedor mais barato alimenta o custo da receita do prato de frango — e o custo do prato cai pela diferença multiplicada pelo tamanho da porção. A extração semanal garante que os custos das receitas estejam sempre atualizados, e não baseados no preço inserido há três meses na última atualização do cardápio.
Criar um histórico de preços para cada ingrediente. Salvar a saída da extração de cada semana — com estrutura de colunas consistente — cria um registro pesquisável de cada preço de ingrediente de cada fornecedor, semana após semana. Exporte as linhas de peito de frango ao longo de 12 semanas, faça um gráfico do preço unitário e você terá um histórico visual da variação de preços. O gráfico mostra se a afirmação do representante da Sysco de que "os preços estão estáveis" corresponde aos dados.
Conciliação do inventário de insumos. A coluna Qtd. Recebida, somada entre categorias, é a entrada para o inventário semanal. Se a extração indicar que 80 lbs de peito de frango foram recebidas de todos os fornecedores nesta semana, e o estoque físico mostrar 55 lbs restantes, a diferença é o consumo real da semana — e a base para calcular o custo real versus o custo teórico dos alimentos. A entrada manual de dados introduz erros de transcrição que tornam essa conciliação pouco confiável. Os dados extraídos eliminam a variável da transcrição.
Apoie negociações com fornecedores. Quando um fornecedor propõe um aumento de preço, o histórico da extração fornece dados objetivos. "O preço do seu peito de frango subiu de R$ 2,70 para R$ 2,95 nas últimas seis semanas — um aumento de 9,2%. O índice de commodities para peito desossado subiu 3,1% no mesmo período. Você pode explicar a diferença?" A conversa passa de opinião para evidência, e o fornecedor sabe que há um rastro documental.
Para uma forma prática de começar a extrair dados de notas fiscais sem configurar modelos, experimente nossa ferramenta de extração de dados de notas fiscais com IA — ela processa notas de múltiplos fornecedores de alimentos, anotações manuscritas e preços por peso variável em um único lote.
Perguntas Frequentes
Consegue processar notas fiscais com várias páginas onde a tabela continua entre páginas?
Sim. A IA lê o documento inteiro como um fluxo contínuo de informações — ela não trata cada página como um documento separado nem espera que as tabelas estejam confinadas a uma única página. Quando a tabela de itens de uma nota da Sysco se estende pelas páginas 2 e 3 (sem repetir os cabeçalhos das colunas na página 3), a IA continua extraindo os itens de onde a tabela parou. Você não precisa enviar as páginas separadamente ou configurar intervalos de páginas. Faça o upload em lote de todas as páginas de todas as notas juntas, e a extração produz um único arquivo de saída com todos os itens de todas as páginas.
A IA entende diferentes tamanhos de embalagem e conversões de unidades de medida?
A IA extrai o tamanho da embalagem e a unidade exatamente como impressos na nota fiscal — ela não converte unidades automaticamente (por exemplo, convertendo libras para kg). O que ela faz é capturar ambos os valores para que você possa normalizá-los na planilha: "Tamanho da Embalagem: 40" e "Unidade: lb" são extraídos em suas próprias colunas, fornecendo os dados brutos necessários para qualquer conversão ou cálculo de custo unitário posterior. Para equipes que desejam que a conversão seja feita durante a extração, uma coluna calculada pode ser definida — por exemplo, "Custo Unitário (Preço Total ÷ Quantidade Recebida, duas casas decimais)" — e a IA realiza o cálculo antes da saída, de modo que cada item já tenha um preço por unidade normalizado, independentemente do tamanho da embalagem.
E se o motorista escrever anotações de substituição diretamente na nota fiscal impressa?
Anotações manuscritas em notas fiscais impressas — substituições, faltas, ajustes de preço feitos pelo entregador — são lidas pela IA e capturadas na saída. Por exemplo, se "Carne Moída 80/20 — 2 caixas" tiver uma anotação à mão dizendo "substituído por 85/15 — mesmo preço", o item original (carne moída 80/20) ainda é extraído como descrição do item, e a nota de substituição aparece na coluna designada. Essa é uma capacidade que diferencia a extração por modelo de visão do OCR tradicional, que lê texto impresso e manuscrito de forma independente e não consegue conectá-los contextualmente. A limitação prática: a caligrafia precisa ser razoavelmente legível e a foto precisa mostrar a anotação claramente. Uma foto tirada com boa iluminação, de frente, de uma nota fiscal plana produz resultados confiáveis. Uma foto escura e inclinada de uma nota dobrada gera menor precisão nas partes manuscritas.
Como isso difere de usar uma plataforma de automação de AP como Restaurant365 ou xtraCHEF?
Plataformas de automação de AP oferecem fluxos de trabalho completos de contas a pagar — elas ingerem notas fiscais, classificam itens em contas contábeis, roteiam aprovações e integram-se com sistemas contábeis. Para grupos de restaurantes com várias unidades processando centenas de notas por mês, a profundidade da integração e os benefícios de automação justificam o custo da plataforma. Para um único restaurante ou grupo pequeno processando de 10 a 20 notas por semana de três fornecedores, a mesma extração de itens pode ser feita com extração de IA de foto para planilha, produzindo saída padrão em Excel que funciona com qualquer sistema de rastreamento baseado em planilha que você já usa. A diferença é o escopo: plataformas de AP automatizam todo o processo de contas a pagar. A extração de itens resolve o problema específico de colocar dados de notas fiscais em uma planilha — e pode ser um trampolim para uma plataforma completa ou uma solução leve permanente, dependendo da sua escala.
E se um fornecedor enviar um aviso de crédito ou uma fatura de ajuste em vez de uma fatura padrão?
Os avisos de crédito, avisos de débito e faturas de ajuste são tratados da mesma forma que as faturas padrão: a IA lê o documento e extrai os campos que você definiu. Se o aviso de crédito fizer referência ao número da fatura original, essa referência é capturada na saída. O segredo é incluir uma coluna para o tipo de documento — por exemplo, "Tipo de Documento (Fatura/Aviso de Crédito/Ajuste)" — para que a saída diferencie entre cobranças e créditos. Os avisos de crédito para itens devolvidos ou correções de preço fluem para a mesma estrutura de planilha das faturas regulares, com a coluna de tipo de documento permitindo cálculos precisos de custo líquido.
Posso salvar o modelo de colunas e reutilizá-lo toda semana?
Sim. Os nomes das colunas que você define — Nome do Fornecedor, Código do Item, Descrição do Item, Qtd. Recebida, Preço Unitário e todos os outros campos — são salvos como um modelo após o primeiro uso. Cada lote de entrega das semanas seguintes usa o mesmo modelo com um único clique, produzindo uma saída com estrutura idêntica todas as vezes. É isso que torna o histórico de preços e o acompanhamento de tendências descritos acima práticos: uma estrutura de colunas consistente entre as semanas significa que os dados podem ser consolidados automaticamente em uma planilha mestre, sem necessidade de reformatação entre os lotes.