Overslaan naar inhoud
Icône de E-invoicing Foundation — mandates, EDI files, validation, transmission log

E-invoicing Foundation — mandates, EDI files, validation, transmission log

door Omnifloo
Gratis Odoo 20 Module Kwaliteitscontrole: Geverifieerd LGPL-3

Free e-invoicing foundation for Odoo Community 20: versioned registry of national e-invoicing and tax reporting mandates with their sources, format-independent invoice model, pluggable validators, one EDI file per invoice and format with SHA-256 fingerprint, and an append-only transmission log that

E-invoicing foundation

Mandates, EDI files, validation and transmission log, with three results that are never merged into one.

Not tested against a real operator. This foundation is covered by automated tests on a fresh database. It has never exchanged a file with a real operator, and every invoice screen says so until a real transmission is recorded.

The problem

A valid XML file, a file accepted by the operator and a file acknowledged by the recipient are three different results. A single green tick hides the two that matter most: the tick turns green because the file parsed, and nobody sees that the operator rejected it two days later.

National obligations move, too. A date is postponed, a population is split, a threshold is revised. A date written in code is wrong the day the law changes, silently.

What the foundation does

  • Versioned mandate registry. Country, scheme, direction, population, threshold, effective date, source link and date of verification. A regulatory change creates a new version and keeps the old one. The version in force on a date is read from the records, never from the code.
  • "Not found" is a status. Where the research found no general mandate, the record says so, with the research sentence kept as it was written.
  • Formats linked to the standard generators. Peppol BIS Billing 3, Factur-X, ZUGFeRD, XRechnung and others are produced by the generator that ships with the accounting application. The foundation rewrites none of them.
  • One file per invoice, format and content. Stored with its SHA-256 fingerprint. Generating the same content twice returns the existing file.
  • Pluggable validators. Well-formed XML, and minimal checks on a format-independent view of the invoice: seller VAT number, buyer identity, dates, untaxed amount plus tax equal to the total at the currency rounding, at least one line.
  • Append-only transmission log. A closed entry can be neither changed nor deleted. The operator and recipient statuses are derived from it.

Three statuses, side by side

File Operator Recipient
not checked, valid, invalid not sent, sent, accepted, rejected, error no response, received, acknowledged, refused

What it does not do

It talks to no operator and no tax administration: transport belongs to country modules built on top of it. It embeds no official schematron, because the licence of those artefacts has not been checked. It records what happened; it does not declare an invoice compliant.

Mandate data come from a research note dated 28 September 2026, with the source of each line. Check the source before relying on a date.

Wat deze app niet doet

De uitgever heeft nog niet gepubliceerd wat de applicatie niet doet. Dat is een regel van de appstore: vraag het aan de support voordat u zich verbindt.

Vereiste applicaties van de appstore

Gebruikte Odoo Community-modules

account

SerieVersieStatusGepubliceerd op
20.020.0.1.0.0 Beschikbaar 29-09-2026

Fiche gegenereerd uit de code van de uitgever (privé-repository, branch 20.0): de broncode is niet gepubliceerd.

Automatische controle van de appstore (los van de uitgever), toegepast op alle applicaties. Conforme.

ControleResultaatEffect indien afwezig
Manifeste lisible sans exécution conforme bloquant
Licence reconnue (LGPL-3) conforme bloquant
Aucune dépendance vers Odoo Enterprise conforme bloquant
Aucun import de code Enterprise conforme bloquant
Aucun en-tête de licence Enterprise conforme bloquant
Icône static/description/icon.png conforme déclasse
Description (static/description/index.html ou README) conforme déclasse
Tests automatisés (tests/test_*.py) conforme déclasse
Traduction française (i18n/fr.po) conforme info
Section « Ce que le module ne fait pas » absent info
Titre de 70 caractères au plus (74 actuellement) absent info
Résumé en français absent info

Beoordelingen van ingelogde klanten. Eén beoordeling per klant; de uitgever kan erop reageren. Log in om een beoordeling te plaatsen.

Uitgever
Omnifloo (DYONYSOS)
E-mail
contact@omnifloo.com
Omnifloo-klanten
Support inbegrepen volgens uw formule: helpcentrum.