Como extrair transações de um extrato em PDF

A maioria dos bancos disponibiliza os extratos em ficheiros PDF, que são fáceis de ler, mas pouco úteis para uma folha de cálculo, uma aplicação de gestão de orçamento ou um programa de contabilidade. Estes precisam das transações em formato de dados: CSV ou Excel para folhas de cálculo, OFX ou QIF para aplicações de finanças pessoais e CAMT.053 ou MT940 para programas de contabilidade. Copiar as linhas manualmente é demorado e propenso a erros, por isso este conversor extrai as transações do PDF e guarda-as no formato de que precisa.

Descrição da ferramenta

Todos os conversores de extratos bancários aqui funcionam da mesma forma, desde o Conversor de Extratos Bancários geral até aos que se destinam a um único formato, como Extrato Bancário de PDF para CSV ou Extrato Bancário de PDF para CAMT.053: começam pelos formatos indicados no nome, e os menus Origem e Destino permitem escolher outros.

Arraste um ou mais extratos em PDF para o lado da origem, por exemplo, os extratos mensais de um ano. Cada um é convertido individualmente, e a opção Transferir tudo guarda os resultados em conjunto num ficheiro ZIP. Mude o lado do destino para o separador Texto para ver o resultado antes de o transferir.

Os seus extratos são lidos no navegador e nunca são carregados para lado nenhum.

Como é lido um extrato em PDF

O conversor lê o texto do PDF e localiza a tabela de transações com base na posição do texto na página:

  • Uma transação é uma linha que começa com uma data e inclui um valor. As linhas seguintes sem data nem valor continuam a descrição, e uma linha com um valor, mas sem data, herda a data da linha acima, como acontece nos extratos que indicam a data apenas uma vez por dia.
  • As colunas de valores podem conter um único valor com sinal, colunas separadas para saídas e entradas de dinheiro ou valores identificados como CR e DR, com ou sem saldo corrente. Os cabeçalhos das colunas, em inglês e em muitos outros idiomas, e a verificação de que os saldos batem certo permitem distingui-las, para que as saídas de dinheiro sejam sempre apresentadas como valores negativos.
  • As datas podem estar escritas como 05.01.2026, 01/05/2026, 2026-01-05, 5 Jan 2026 ou Jan 5, com ou sem o ano. Nas datas sem ano, o ano é obtido a partir do período do extrato. Datas como 01/05 são interpretadas como dia/mês ou mês/dia, consoante as outras datas do extrato.
  • O IBAN ou número da conta, o BIC, a moeda, o período do extrato e os saldos inicial e final são identificados no texto à volta da tabela.
  • Os extratos que apresentam primeiro a transação mais recente são ordenados por data.

O PDF tem de conter texto selecionável. Os extratos digitalizados não o contêm: o Extrator de Texto de PDF por OCR consegue ler esse texto, e este conversor aceita-o como origem no formato TXT. Primeiro, é necessário remover a palavra-passe dos extratos protegidos. Pode fazê-lo com o Removedor de Palavra-passe de PDF.

Os extratos podem ter inúmeros formatos, por isso compare o resultado com o PDF, verificando, por exemplo, se o último saldo corresponde ao saldo final.

Formatos

  • CSV e Excel: uma linha por transação, com a data, a data-valor, a descrição, o valor (negativo para saídas de dinheiro), o saldo após a transação e a moeda. Os ficheiros Excel contêm datas e números reais, pelo que é possível ordená-los e fazer cálculos.
  • JSON: a conta, a moeda, o período e os saldos, seguidos das transações.
  • CAMT.053: o extrato bancário em XML segundo a norma ISO 20022, utilizado por bancos na Europa e na Suíça, com um movimento contabilizado por transação. A definição Versão CAMT permite selecionar camt.053.001.08, utilizada atualmente pela maioria dos bancos e programas, ou as versões anteriores .04 ou .02, para programas que só aceitam essas versões.
  • MT940: o formato de extrato SWIFT que ainda é importado por muitos programas de contabilidade, guardado como ficheiro .sta. Os caracteres que não pertencem ao conjunto de caracteres SWIFT são simplificados, e as descrições que excedem o limite do MT940 são encurtadas.
  • OFX: o formato importado pelo Quicken, QuickBooks, GnuCash e pela maioria das aplicações de gestão de orçamento. Cada transação recebe um ID criado a partir da data, do valor e da descrição, para que importar o mesmo extrato duas vezes não duplique as transações.
  • QIF: o formato mais antigo do Quicken, com datas escritas primeiro com o mês, que algumas aplicações ainda preferem.
  • TXT: o extrato como tabela de texto simples, para ler, imprimir ou colar.

Todos os formatos, exceto PDF, também podem ser usados como origem. Assim, o conversor também transforma CAMT.053 em CSV, MT940 em CAMT.053 ou a exportação CSV de um banco em OFX. Os ficheiros CAMT.053, MT940 e OFX indicam sempre os saldos: quando o extrato não os apresenta, são calculados a partir do saldo após cada transação ou começam em 0.

Exemplo

Um extrato com estas linhas:

IBAN GB33 BUKB 2020 1555 5555 55

Data         Descrição                    Saídas      Entradas    Saldo
01 Jan 2026  Saldo transitado                                      1,000.00
03 Jan 2026  TESCO STORES 2041              45.20                  954.80
             Londres GB
05 Jan 2026  SALÁRIO ACME LTD                          2,500.00   3,454.80

fica assim em CSV:

Data,Data-valor,Descrição,Valor,Saldo,Moeda
2026-01-03,,TESCO STORES 2041 Londres GB,-45.20,954.80,GBP
2026-01-05,,SALÁRIO ACME LTD,2500.00,3454.80,GBP
CSV