Saltar para o conteúdo principal
VeriFactu

O que faz o botão «Run Pre-flight» do VeriFactu España

O botão Run Pre-flight lê o ficheiro de uma migração, verifica cada linha (NIF, número de fatura e duplicados), guarda as incidências juntamente com o total de registos e altera o estado da migração. As incidências de linha não o interrompem; interrompem-no a falta de ficheiro ou um ficheiro que não se consegue analisar.

FlexigoTech · Responsável: Víctor Gómez · Atualizado em 5 de novembro de 2026

O essencial

Módulo
VeriFactu
Versões
Odoo 17, 18, 19 e 20
Verificado
no código do módulo, versão 20.0 · nas fontes indicadas no fim
Leitura
5 min

Onde está o botão e quando aparece

As fichas de migração abrem-se a partir do menu Verifactu / SIF › Configuration › Migration Runs. Se não vês um dos níveis do menu, falta-te a permissão: o nível Configuration exige SIF Manager, e o nível Verifactu / SIF exige Accountant, Asesoría Operator, Auditor (read-only), Privacy Officer ou SIF Manager.

Esquema feito com código do menu Verifactu / SIF, Configuration, Migration Runs, com o botão Run Pre-flight e as mensagens No file uploaded. e Could not parse file que o podem interromper
Esquema feito com código a partir do código publicado do módulo (não é um ecrã do Odoo): o menu, o botão e as mensagens que o podem interromper. As legendas estão em inglês, como no código.

O botão Run Pre-flight está no ecrã Migration Runs em todas as ramificações publicadas do módulo: Odoo 17, 18, 19 e 20. Nas quatro fica oculto quando o campo Estado não tem o valor com que aparece por defeito; com os valores por defeito, vê-se.

Quando a verificação termina sem se interromper, o campo Estado muda e o botão deixa de se ver. Se se interrompe por falta de ficheiro ou porque não se consegue analisar, o estado não muda e o botão continua disponível.

Esquema feito com código do texto do botão em inglês, Run Pre-flight, e em catalão, Executar Comprovació Prèvia
Esquema feito com código a partir das traduções publicadas (não é um ecrã do Odoo): com o Odoo em português, o botão chama-se Run Pre-flight, porque o módulo não o traduz; em catalão, Executar Comprovació Prèvia.

Passo a passo: o que faz ao carregar

O que se segue vem do código do Odoo 20.

  1. Escolhe o leitor do ficheiro de acordo com o sistema de origem da migração. Há leitores para vários programas de faturação e contabilidade (por exemplo Holded, Quipu ou Contasol) e um genérico de CSV, que se usa se o sistema não coincidir com nenhum.
  2. Verifica que o ficheiro foi carregado. O ficheiro está no campo Fichero Origen, no grupo Source da ficha da migração. Se estiver vazio, o botão é interrompido com No file uploaded. e não se guarda nada.
  3. Analisa o ficheiro com o leitor escolhido. Se o leitor falhar, o botão é interrompido com Could not parse file: …, com o detalhe da falha no lugar das reticências. Também não se guarda nada.
  4. Percorre as linhas obtidas e vai registando incidências (o detalhe, na secção seguinte). Registar uma incidência não interrompe o percurso.
  5. Guarda o resultado: a lista de incidências no registo da verificação, o total de registos lidos e a alteração do campo Estado.
  6. Substitui as linhas da migração: apaga as que existissem para essa migração e cria uma por cada linha lida, com o seu número, a sua data e o seu total originais e um estado inicial.

Um detalhe útil: a verificação prévia não descarta linhas. Mesmo que haja incidências, o passo seis cria uma linha por cada linha lida.

O que verifica em cada linha

O módulo percorre as linhas por ordem, começando pela primeira, e para cada uma pode registar o seguinte.

  • NIF da contraparte. Apenas se a linha trouxer o identificador da contraparte, passa-o pelo validador de NIF do módulo, com o tipo de identificador da linha (se não trouxer tipo, usa NIF). Se não o validar, regista Row … (…): Invalid NIF/CIF/NIE "…". Entre parênteses vai o número de fatura dessa linha, ou um ponto de interrogação se não o tiver; no fim, o identificador tal como vinha.
  • Número de fatura vazio. Se a linha não tem número, regista Row …: missing invoice number (column not recognized or empty).
  • Número repetido. Se o número já tinha aparecido numa linha anterior, regista Row …: Duplicate series number "…" (also row …). A segunda linha citada é a primeira em que esse número apareceu.
  • Avisos do leitor. Se o leitor assinalou a linha com um aviso próprio, regista-o como Row …: …, com o texto do aviso.

O número de linha conta as linhas que o leitor obteve, e as incidências são registadas pela mesma ordem em que são verificadas.

O que muda quando a verificação termina

Quando o percurso termina sem se interromper, o módulo escreve três coisas na migração:

  • A lista de incidências, guardada como texto, com os acentos e caracteres especiais tal e qual.
  • O total de registos, que é o número de linhas lidas.
  • O Estado, que passa a um valor diferente do que tinha. Com essa alteração, o botão deixa de se ver.

Além disso, as linhas anteriores dessa migração são apagadas e voltam a ser criadas com o que acabou de ser lido.

O que fazer se se interrompe

  • No file uploaded. Carrega o ficheiro em Fichero Origen, no grupo Source da ficha, e volta a carregar no botão. Não se tinha guardado nada: o estado continua como estava e o botão continua visível.
  • Could not parse file: … Lê o detalhe que vem a seguir aos dois pontos e verifica se o ficheiro corresponde ao sistema de origem da migração, porque o leitor é escolhido de acordo com esse sistema. Também não se guardou nada e o botão continua disponível.

Se o que vês são incidências de linha, o botão não foi interrompido: a verificação terminou e guardou-as. As linhas com NIF inválido, sem número ou com número repetido são as que podes rever no ficheiro de origem. Se quiseres saber em que muda o módulo de uma ramificação para outra, tens isso em o que muda entre as versões de Odoo publicadas.

Como a FlexigoTech ajuda

Se estás a implementar o Odoo e vais trazer faturas de outro programa, a FlexigoTech implementa Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida. Podes ver a app na sua ficha do Odoo Apps, publicada para as versões 17, 18, 19 e 20.

Continue a ler

VeriFactu Espanha para Odoo 17, 18, 19 e 20: o que muda entre versõesO que muda no VeriFactu Espanha (AEAT RRSIF Compliance) entre o Odoo 17, 18, 19 e 20: dois campos, um ecrã e as mensagens das retificativas.
Verificado no código do módulo (versão 20.0) e nas fontes indicadas

Fontes