Naar hoofdinhoud
VeriFactu

Wat de knop Run Pre-flight van VeriFactu España doet

De knop Run Pre-flight leest het bestand van een migratie, controleert elke rij (NIF, factuurnummer en dubbele nummers), slaat de meldingen op samen met het totaal aantal records en wijzigt de status van de migratie. Meldingen per rij stoppen hem niet; een ontbrekend bestand of een bestand dat niet te analyseren is wel.

FlexigoTech · Verantwoordelijk: Víctor Gómez · Bijgewerkt op 5 november 2026

In het kort

Module
VeriFactu
Versies
Odoo 17, 18, 19 en 20
Gecontroleerd
in de broncode van de module, versie 20.0 · in de bronnen onderaan
Leestijd
5 min

Waar de knop staat en wanneer je hem ziet

De migratieformulieren open je via het menu Verifactu / SIF › Configuration › Migration Runs. Zie je een deel van het menu niet, dan ontbreekt er een recht: het onderdeel Configuration vraagt SIF Manager, en het onderdeel Verifactu / SIF vraagt Accountant, Asesoría Operator, Auditor (read-only), Privacy Officer of SIF Manager.

Schema gemaakt met code van het menu Verifactu / SIF, Configuration, Migration Runs, met de knop Run Pre-flight en de meldingen No file uploaded. en Could not parse file die hem kunnen stoppen
Schema gemaakt met code op basis van de gepubliceerde code van de module (geen Odoo-scherm): het menu, de knop en de meldingen die hem kunnen stoppen. De labels zijn in het Engels, zoals in de code.

De knop Run Pre-flight staat in het scherm Migration Runs in alle gepubliceerde branches van de module: Odoo 17, 18, 19 en 20. In alle vier is hij verborgen wanneer het veld Estado niet de standaardwaarde heeft; met de standaardwaarden zie je hem.

Wanneer de controle zonder te stoppen eindigt, verandert het veld Estado en verdwijnt de knop. Stopt de controle door een ontbrekend bestand of omdat het bestand niet te analyseren is, dan verandert de status niet en blijft de knop beschikbaar.

Schema gemaakt met code van de knoptekst in het Spaans, Ejecutar Comprobación Previa, en in het Catalaans, Executar Comprovació Prèvia
Schema gemaakt met code op basis van de gepubliceerde vertalingen (geen Odoo-scherm): met Odoo in het Spaans heet de knop Ejecutar Comprobación Previa; in het Catalaans Executar Comprovació Prèvia.

Stap voor stap: wat er gebeurt als je klikt

Wat volgt komt uit de code van Odoo 20.

  1. Hij kiest de bestandslezer op basis van het bronsysteem van de migratie. Er zijn lezers voor meerdere facturatie- en boekhoudprogramma's (bijvoorbeeld Holded, Quipu of Contasol) en een generieke CSV-lezer, die wordt gebruikt als het systeem met geen enkele overeenkomt.
  2. Hij controleert of het bestand is geüpload. Het bestand staat in het veld Fichero Origen, in de groep Source van het migratieformulier. Is het leeg, dan stopt de knop met No file uploaded. en wordt er niets opgeslagen.
  3. Hij analyseert het bestand met de gekozen lezer. Faalt de lezer, dan stopt de knop met Could not parse file: …, met de details van de fout in plaats van de puntjes. Ook dan wordt er niets opgeslagen.
  4. Hij loopt door de verkregen rijen en noteert meldingen (de details staan in de volgende sectie). Een melding noteren stopt de doorloop niet.
  5. Hij slaat het resultaat op: de lijst met meldingen in het logboek van de controle, het totaal aantal gelezen records en de wijziging van het veld Estado.
  6. Hij vervangt de regels van de migratie: hij verwijdert de bestaande regels voor die migratie en maakt er één aan per gelezen rij, met het oorspronkelijke nummer, de datum en het totaal, en een beginstatus.

Een handig detail: de voorafgaande controle laat geen rijen vallen. Ook als er meldingen zijn, maakt stap zes een regel aan voor elke gelezen rij.

Wat hij per rij controleert

De module loopt de rijen in volgorde door, te beginnen bij de eerste, en kan per rij het volgende noteren.

  • NIF van de tegenpartij. Alleen als de rij een identificatie van de tegenpartij bevat, haalt hij die door de NIF-validator van de module, met het identificatietype van de rij (bevat de rij geen type, dan gebruikt hij NIF). Valideert die niet, dan noteert hij Row … (…): Invalid NIF/CIF/NIE "…". Tussen haakjes staat het factuurnummer van die rij, of een vraagteken als het ontbreekt; aan het eind staat de identificatie zoals die binnenkwam.
  • Leeg factuurnummer. Heeft de rij geen nummer, dan noteert hij Row …: missing invoice number (column not recognized or empty).
  • Herhaald nummer. Kwam het nummer al in een eerdere rij voor, dan noteert hij Row …: Duplicate series number "…" (also row …). De tweede genoemde rij is de eerste waarin dat nummer voorkwam.
  • Waarschuwingen van de lezer. Heeft de lezer de rij van een eigen waarschuwing voorzien, dan noteert hij die als Row …: …, met de tekst van de waarschuwing.

Het rijnummer telt de rijen die de lezer heeft verkregen, en de meldingen worden genoteerd in dezelfde volgorde als waarin ze worden gecontroleerd.

Wat er verandert als de controle klaar is

Wanneer de doorloop zonder te stoppen eindigt, schrijft de module drie dingen weg in de migratie:

  • De lijst met meldingen, opgeslagen als tekst, met accenten en speciale tekens ongewijzigd.
  • Het totaal aantal records, dat is het aantal gelezen rijen.
  • De Estado, die een andere waarde krijgt dan die hij had. Met die wijziging verdwijnt de knop.

Bovendien worden de eerdere regels van die migratie verwijderd en opnieuw aangemaakt met wat net is gelezen.

Wat te doen als hij stopt

  • No file uploaded. Upload het bestand in Fichero Origen, in de groep Source van het formulier, en klik opnieuw op de knop. Er was niets opgeslagen: de status is gebleven zoals hij was en de knop blijft zichtbaar.
  • Could not parse file: … Lees de details na de dubbele punt en controleer of het bestand overeenkomt met het bronsysteem van de migratie, want de lezer wordt op basis van dat systeem gekozen. Ook nu is er niets opgeslagen en blijft de knop beschikbaar.

Zie je meldingen per rij, dan is de knop niet gestopt: de controle is afgerond en heeft ze opgeslagen. Rijen met een ongeldige NIF, zonder nummer of met een herhaald nummer zijn de rijen die je in het bronbestand kunt nakijken. Wil je weten wat de module van branch tot branch verandert, lees dan wat er verandert tussen de gepubliceerde Odoo-versies.

Zo helpt FlexigoTech

Ben je Odoo aan het implementeren en ga je facturen uit een ander programma overbrengen? FlexigoTech implementeert Odoo 17, 18, 19 en 20 en ontwikkelt connectoren en integraties op maat. De app vind je op de Odoo Apps-pagina, gepubliceerd voor de versies 17, 18, 19 en 20.

Lees verder

VeriFactu España voor Odoo 17, 18, 19 en 20: wat verandert er tussen versiesWat verandert er in VeriFactu España (AEAT RRSIF Compliance) tussen Odoo 17, 18, 19 en 20: twee velden, één scherm en de meldingen bij creditfacturen.
Gecontroleerd in de broncode van de module (versie 20.0) en in de gelinkte bronnen

Bronnen