Ce que couvre le module selon son README
Le README organise les fonctions en exigences numérotées (FR) et en sections identifiées par une lettre. Le cœur, ce sont ces exigences :
- Génération du XML SAF-T v1.03 (FR-001) : crée les fichiers à partir des données comptables d'Odoo.
- Validation par rapport au schéma XSD (FR-002) : le module contrôle le fichier avec le schéma de l'administration fiscale portugaise.
- Envoi direct au portail ATCUD (FR-003) : avec une logique de nouvelle tentative automatique.
- Erreurs et exceptions (FR-004) : journalisation détaillée des erreurs et messages pensés pour l'utilisateur.
- Interface de configuration (FR-005) : gestion des identifiants, de l'e-mail et des réglages d'envoi.
Autour de ce cœur, le README décrit ces autres éléments :
- Multi-société : suivi des envois par société, avec des pistes d'audit séparées.
- RGPD (section C) : mentionne
10-year mandatory retention overrideet un flux DSAR avec des modèles de réponse juridique. - Notifications par e-mail (section D) : conseils sur DKIM/SPF/DMARC et confirmations d'envoi.
- Statistiques annuelles (section E) : export et envoi du rapport annuel.
- Observabilité (section F) : logs en JSON, métriques Prometheus et intégration avec Sentry.
- Protection anti-abus (section G) : limitation du nombre de requêtes, champs pièges (honeypot) et CAPTCHA sur les formulaires publics.
- Fichiers volumineux (section H) : envoi par morceaux avec analyse antivirus.
- Chatter (section I) : discussion sur les envois, avec confidentialité.
- Performance (section J) : suivi du SLO p99.
- DSAR (section K) : suivi de la base légale et automatisation des réponses.
- Langues (section L) : interfaces multilingues.

Ce que fait le module et ce que vous apportez
Pour décider, distinguez ce que le README attribue au module de ce que vous devez fournir vous-même. Ce tableau réunit les deux, d'après la documentation.
| Besoin | Pris en charge par le module (README) | À préparer de votre côté (README) |
|---|---|---|
| Générer le fichier SAF-T | Génère le XML SAF-T v1.03 à partir des données comptables d'Odoo | Choisir la société et la période dans Generate SAF-T Files |
| Valider le fichier | Valide par rapport au schéma XSD de l'administration fiscale portugaise | Cliquer sur Generate SAF-T ; le système valide ensuite |
| Envoyer à ATCUD | Envoi direct au portail avec nouvelle tentative automatique | URL de l'endpoint ATCUD, identifiants et certificat numérique si ATCUD l'exige |
| Savoir ce qui a échoué | Journalisation détaillée des erreurs et messages pour l'utilisateur | Consulter les erreurs enregistrées |
| Confirmations par e-mail | Confirmations d'envoi et conseils DKIM/SPF/DMARC | Outgoing Mail Server avec identifiants SMTP, expéditeur et adresse pour les confirmations |
| Plusieurs sociétés | Suivi par société avec pistes d'audit séparées | Identifiants d'envoi ATCUD dans les paramètres de la société |
| Rapport annuel | Export et envoi des statistiques annuelles | Non détaillé dans le README |
| Formulaires publics | Limitation des requêtes, honeypot et CAPTCHA | Configurer la limitation des requêtes et la prévention des abus |
C'est la colonne de droite qui vous dit si vous pouvez démarrer tout de suite. L'URL et les identifiants de l'endpoint ATCUD ainsi que le serveur de messagerie sortant font partie des étapes de configuration décrites dans le README. S'il vous manque quelque chose, obtenez-le avant l'installation.

Si vous êtes dans ce cas, c'est pour vous
- Vous tenez la comptabilité d'une société portugaise dans Odoo et voulez en sortir le SAF-T : le module couvre la génération, la validation et l'envoi du fichier (FR-001 à FR-003).
- Vous avez plusieurs sociétés dans la même base de données : le README parle d'un support multi-société avec des pistes d'audit séparées par société.
- Vous n'avez pas encore accès à ATCUD : demandez d'abord l'URL de l'endpoint et les identifiants, car les réglages du module les réclament, tout comme le certificat numérique si ATCUD l'exige.
- Votre équipe technique veut surveiller le service : le README mentionne des logs en JSON, des métriques Prometheus, Sentry et le suivi du SLO p99.
- Vous travaillez en plusieurs langues : le README prévoit des interfaces multilingues (section L).
- Vous avez besoin d'une fonction absente de la liste : ne la tenez pas pour acquise. Posez la question avant d'acheter ou envisagez un développement sur mesure.
Pour voir quels menus il ajoute et comment un enregistrement passe d'un statut à l'autre, consultez comment fonctionne Portugal SAF-T (PT) File Checks en interne.

Ce qu'il faut préparer avant l'installation
Sur le serveur
- Odoo installé : les étapes d'installation du README commencent par
Ensure you have Odoo 19 installed, alors que sur Odoo Apps le module est publié pour 17.0, 18.0, 19.0 et 20.0. Consultez la fiche de la version que vous utilisez. - Paquets Python : le README comporte une étape
Install required Python packages. Vérifiez la liste dans le README du module avant l'installation. - Répertoire des addons : copier le module dans le répertoire des addons d'Odoo.
- Installation : dans Odoo, ouvrir
Apps, rechercherPortugal SAF-Tet cliquer surInstall.
Dans Odoo
- E-mail : dans
Settings → General Settings, sectionEmails, configurerOutgoing Mail Serveravec vos identifiants SMTP et l'adresse de l'expéditeur. - Réglages SAF-T : dans
Accounting → Configuration → SAF-T Accounting → Settings, le NIF (Número de Identificação Fiscal), l'URL de l'endpoint ATCUD avec ses identifiants et le certificat numérique si ATCUD l'exige. - Paramètres de la société : identifiants d'envoi ATCUD, adresse e-mail pour les confirmations d'envoi, ainsi que la limitation des requêtes et la prévention des abus.
Sur les captures, les listes du module apparaissent sous Invoicing, alors que le README écrit les chemins avec Accounting. Si vous ne trouvez pas un menu, cherchez dans les deux.
Le parcours complet des réglages et des champs se trouve dans la mise en route de Portugal SAF-T (PT) File Checks.
Versions d'Odoo et prix
Sur Odoo Apps, il coûte 9 € HT par version d'Odoo, en paiement unique, pour 17.0, 18.0, 19.0 et 20.0. C'est un module avec service local FlexigoTech Cloud, qui coûte 29 €/mois ou 290 €/an HT (Pro : 58 €/mois ou 580 €/an).
Avec l'abonnement, le module pour les nouvelles versions d'Odoo est inclus si vous l'avez acheté sur flexigotech.com ; sur l'Odoo App Store, chaque version d'Odoo s'achète sur place. Sans abonnement, ou si le service est suspendu, ce qu'apporte l'abonnement s'arrête et vos données restent dans votre Odoo.
Comment le tester sur une période avant de décider
Le README décrit ainsi la génération d'un fichier ; vous pouvez suivre ces étapes sur une période pour le voir fonctionner avec vos données :
- Allez dans
Accounting → SAF-T Accounting → Generate SAF-T Files. - Cliquez sur
Createpour lancer une nouvelle génération. - Choisissez la société et la période.
- Cliquez sur le bouton
Generate SAF-T. - Le système valide le fichier par rapport au schéma XSD.
Si la validation ou l'envoi échoue, les messages d'erreur de Portugal SAF-T (PT) File Checks vous indiquent quand chacun apparaît et quoi faire.
Où FlexigoTech peut vous aider
Nous déployons Odoo 17, 18, 19 et 20 et développons des connecteurs et des intégrations sur mesure. Si le module couvre presque tout ce dont vous avez besoin mais qu'il manque une pièce, ou si vous voulez de l'aide pour préparer l'e-mail, le NIF et l'accès à ATCUD, écrivez-nous depuis la page du module. Vous pouvez aussi consulter la fiche sur Odoo Apps de votre version.
À lire aussi
Vérifié dans le code du module (version 20.0) et dans les sources citées
Sources
- Code du module : flexigo_portugal_saf_t_accounting_atcud_submission_tool 20.0 (6935c20f): README.rst
- apps.odoo.com/apps/modules/20.0/flexigo_portugal_saf_t_accounting_atcud_submission_tool
- apps.odoo.com/apps/modules/17.0/flexigo_portugal_saf_t_accounting_atcud_submission_tool
- apps.odoo.com/apps/modules/18.0/flexigo_portugal_saf_t_accounting_atcud_submission_tool
- apps.odoo.com/apps/modules/19.0/flexigo_portugal_saf_t_accounting_atcud_submission_tool
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
