View a markdown version of this page

Analisando faturas e recibos - Amazon Textract

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Analisando faturas e recibos

O Amazon Textract extrai dados relevantes, como informações de contato do fornecedor e do destinatário, de praticamente qualquer fatura ou recibo, sem a necessidade de nenhum modelo ou configuração. As faturas e recibos geralmente usam vários layouts, tornando difícil e demorado extrair dados manualmente em grande escala. O Amazon Textract usa ML para entender o contexto de faturas e recibos. Ele extrai automaticamente dados como data da fatura ou recebimento, número da fatura ou recibo, preços dos itens, valor total e condições de pagamento.

O Amazon Textract também identifica nomes de fornecedores que são essenciais para seus fluxos de trabalho, mas que podem não estar explicitamente identificados. Por exemplo, o Amazon Textract pode encontrar o nome do fornecedor em um recibo, mesmo que ele esteja indicado apenas em um logotipo na parte superior da página, sem uma combinação explícita de pares de valores-chave.

O Amazon Textract também facilita a consolidação de entradas de diversos recibos e faturas que usam palavras diferentes para o mesmo conceito. Por exemplo, o Amazon Textract mapeia relacionamentos entre nomes de campo em documentos diferentes, como número da fatura, número da fatura, número do recibo, gerando a taxonomia padrão como. INVOICE_RECEIPT_ID Nesse caso, o Amazon Textract representa dados de forma consistente em diferentes tipos de documentos. Os campos de endereço são categorizados como 'destinatário', 'fornecedor', 'fornecedor', 'faturar para', 'enviar para' e 'remeter para'. Quando os documentos de despesas não tiverem valores exclusivos para cada uma dessas categorias, o Amazon Textract retornará somente as categorias com valores exclusivos.

Os campos que não se alinham com a taxonomia padrão são categorizados como. OTHER

A seguir está uma lista de campos padrão suportados pelas operações de análise de despesas.

  • Data de recebimento da fatura — INVOICE_RECEIPT_DATE

  • ID do recibo da fatura — INVOICE_RECEIPT_ID

  • ID do contribuinte da fatura — TAX_PAYER_ID

  • Número do cliente — CUSTOMER_NUMBER

  • Número da conta — ACCOUNT_NUMBER

  • Nome do fornecedor — VENDOR_NAME

  • Nome do destinatário — RECEIVER_NAME

  • Endereço do fornecedor — VENDOR_ADDRESS

  • Endereço do destinatário — RECEIVER_ADDRESS

  • Data do pedido — ORDER_DATE

  • Data de vencimento — DUE_DATE

  • Data de entrega — DELIVERY_DATE

  • Número do PO — PO_NUMBER

  • Condições de pagamento — PAYMENT_TERMS

  • Total — TOTAL

  • Valor devido — AMOUNT_DUE

  • Valor pago — AMOUNT_PAID

  • Subtotal — SUBTOTAL

  • Imposto — TAX

  • Taxa de serviço — SERVICE_CHARGE

  • Gratuidade — GRATUITY

  • Saldo anterior — PRIOR_BALANCE

  • Desconto — DISCOUNT

  • Taxa de envio e manuseio — SHIPPING_HANDLING_CHARGE

  • Número ABN do fornecedor — VENDOR_ABN_NUMBER

  • Número GST do fornecedor — VENDOR_GST_NUMBER

  • Número PAN do fornecedor — VENDOR_PAN_NUMBER

  • Número de IVA do fornecedor — VENDOR_VAT_NUMBER

  • Número ABN do receptor — RECEIVER_ABN_NUMBER

  • Número GST do receptor — RECEIVER_GST_NUMBER

  • Número PAN do receptor — RECEIVER_PAN_NUMBER

  • Número de IVA do destinatário — RECEIVER_VAT_NUMBER

  • Telefone do fornecedor — VENDOR_PHONE

  • Telefone receptor — RECEIVER_PHONE

  • URL do fornecedor — VENDOR_URL

  • Item/Item Descrição da linha — ITEM

  • Linha Item/Quantity — QUANTITY

  • Item/Total Preço da linha — PRICE

  • Item/Unit Preço da linha — UNIT_PRICE

  • Linha Item/ProductCode — PRODUCT_CODE

  • Endereço (cobrança para, envio, remessa para, fornecedor) — ADDRESS

  • Nome (fatura para, envio, remessa para, fornecedor) — NAME

  • Endereço principal (fornecedor, destinatário, cobrança, envio, envio, fornecedor) — ADDRESS_BLOCK

  • Endereço (fornecedor, destinatário, cobrança, destino da remessa, destino da remessa, fornecedor) — STREET

  • Cidade (fornecedor, destinatário, fatura para, envio, remessa para, fornecedor) — CITY

  • Estado (fornecedor, destinatário, fatura para, envio, remessa para, fornecedor) — STATE

  • País (fornecedor, destinatário, cobrança, envio, envio, fornecedor) — COUNTRY

  • CEP (fornecedor, destinatário, cobrança, envio, envio, fornecedor) — ZIP_CODE

A AnalyzeExpense API retorna os seguintes elementos para uma determinada página do documento:

  • O número de recibos ou faturas em um documento representado como ExpenseIndex

  • O nome padronizado para campos individuais representados como Type

  • O nome real do campo conforme ele aparece no documento, representado como LabelDetection

  • O valor do campo correspondente representado como ValueDetection

  • O número de páginas no documento enviado representado como Pages

  • O número da página na qual os itens de campo, valor ou linha são detectados, representado como PageNumber

  • A geometria, que inclui a caixa delimitadora e a localização das coordenadas dos itens individuais de campo, valor ou linha na página, representada como Geometry

  • A pontuação de confiança associada a cada dado detectado no documento, representada como Confidence

  • A linha inteira de itens de linha individuais comprados, representada como EXPENSE_ROW

A seguir está uma parte da saída da API de um recibo processado pela AnalyzeExpense que mostra o total: $55,64 no documento extraído como campo padrão. TOTAL O texto real no documento aparece como “Total”, a Pontuação de Confiança como “97,1”, o número da página como “1” e o valor total como “$55,64”. Isso também inclui as coordenadas da caixa delimitadora e do polígono:

{ "Type": { "Text": "TOTAL", "Confidence": 99.94717407226562 }, "LabelDetection": { "Text": "Total:", "Geometry": { "BoundingBox": { "Width": 0.09809663146734238, "Height": 0.0234375, "Left": 0.36822840571403503, "Top": 0.8017578125 }, "Polygon": [ { "X": 0.36822840571403503, "Y": 0.8017578125 }, { "X": 0.466325044631958, "Y": 0.8017578125 }, { "X": 0.466325044631958, "Y": 0.8251953125 }, { "X": 0.36822840571403503, "Y": 0.8251953125 } ] }, "Confidence": 97.10792541503906 }, "ValueDetection": { "Text": "$55.64", "Currency": { "Code": USD } "Geometry": { "BoundingBox": { "Width": 0.10395314544439316, "Height": 0.0244140625, "Left": 0.66837477684021, "Top": 0.802734375 }, "Polygon": [ { "X": 0.66837477684021, "Y": 0.802734375 }, { "X": 0.7723279595375061, "Y": 0.802734375 }, { "X": 0.7723279595375061, "Y": 0.8271484375 }, { "X": 0.66837477684021, "Y": 0.8271484375 } ] }, "Confidence": 99.85165405273438 }, "PageNumber": 1 }

Você pode usar operações síncronas para analisar uma fatura ou recibo. Para analisar esses documentos, você usa a AnalyzeExpense operação e passa um recibo ou fatura para ela. AnalyzeExpenseretorna todo o conjunto de resultados. Para obter mais informações, consulte Análise de faturas e recibos com o Amazon Textract.

Para analisar faturas e recibos de forma assíncrona, use StartExpenseAnalysispara começar a processar um arquivo de documento de entrada. Para obter os resultados, ligue GetExpenseAnalysis. Os resultados de uma determinada chamada para StartExpenseAnalysissão retornados porGetExpenseAnalysis. Para obter mais informações e um exemplo, consulte Processando documentos de forma assíncrona.