Où se trouve le bouton et qui le voit
Où trouver le bouton ?
Ouvrez le menu Verifactu / SIF › Privacy / GDPR › DSAR Wizard. Sur la fiche du DSAR Wizard se trouve le bouton Generate Erasure Refusal (art.17). Ce bouton existe dans les branches publiées du module pour Odoo 17, 18, 19 et 20.

Quand le bouton apparaît-il ?
La vue n'y met aucune condition : il s'affiche sur la fiche de l'assistant dans Odoo 17, 18, 19 et 20. Ce qui dépend de votre profil, c'est l'accès à l'assistant, car chaque niveau du menu demande ses propres droits et, si vous n'en avez pas un, vous ne voyez pas ce niveau. Les droits demandés par le niveau Privacy / GDPR sont Privacy Officer et SIF Manager. Ceux du niveau Verifactu / SIF sont Accountant, Asesoría Operator, Auditor (read-only), Privacy Officer et SIF Manager.
Que dois-je remplir avant de cliquer ?
Dans le groupe Request Details de la fiche, les deux champs utilisés par ce bouton sont Data Subject NIF / Name et Request Reference. Le premier est écrit dans le document comme personne concernée et donne aussi son nom au fichier généré. Le second est écrit comme référence de la demande ; si vous le laissez vide, le code utilise un texte vide et le processus continue.
Ce qu'il fait au clic
Que génère-t-il exactement ?
Un document de refus de la demande d'effacement, au format JSON. Le texte de la décision et des fondements est déjà rédigé dans le module : ce qui change d'un document à l'autre, ce sont la personne concernée, la référence et les données de l'entreprise. Le document comprend :
- le type de document, la personne concernée et la référence de la demande ;
- les données du responsable du traitement : nom, identifiant fiscal et e-mail de l'entreprise de l'assistant ;
- la décision, marquée comme refusée, avec le fondement de l'art.17(3)(b) du RGPD (conservation nécessaire pour respecter une obligation légale) ;
- la durée de conservation et la voie de réclamation auprès de l'Agence espagnole de protection des données (AEPD) ;
- une note indiquant que, sur demande, une exportation d'accès de l'art.15 est disponible et qu'il faut contacter le responsable à l'adresse figurant dans le document lui-même.
Le fichier s'appelle dsar_erasure_refusal_ suivi des 20 premiers caractères du NIF ou du nom de la personne concernée et de l'extension .json.
Quelles normes le document cite-t-il ?
Selon le code, outre l'art.17(3)(b) du RGPD, il cite l'art.30 du Code de commerce, l'art.66 de la LGT et l'art.8 du RRSIF. Le texte de la durée de conservation indique qu'il s'agit d'au moins 6 ans à compter de la dernière écriture comptable (Code de commerce, art.30) et que les enregistrements ne peuvent être ni modifiés ni supprimés sans rompre la garantie d'inaltérabilité de la chaîne d'empreintes de l'art.8 du RRSIF. C'est ce que le module écrit dans le document, pas un avis juridique sur votre cas.
Qu'est-ce qui change en plus du document ?
Trois choses, dans cet ordre :
- Le module enregistre le JSON dans l'assistant lui-même et, s'il parvient à le générer, aussi un PDF du même document, nommé
dsar_erasure_refusal_plus les 20 premiers caractères du NIF ou du nom et l'extension.pdf. - Il enregistre un événement du module. Ce faisant, il lui transmet une description avec le NIF ou le nom de la personne concernée et, comme contexte, la référence de la demande, les bases légales et la voie de réclamation auprès de l'AEPD.
- Il rouvre le même assistant dans une fenêtre contextuelle, sur le même enregistrement : vous pouvez donc revoir
Data Subject NIF / NameetRequest Referencedans le groupeRequest Details.
Le bouton agit sur un seul assistant à la fois.
Que se passe-t-il si le PDF ne peut pas être généré ?
Le code tente le PDF dans un bloc qui capture toute erreur. En cas d'échec, il laisse un avertissement dans le journal technique du serveur et continue : le JSON est enregistré, l'événement est inscrit et l'assistant est rouvert. Si le PDF n'est pas généré, cet avertissement du journal technique est l'endroit où regarder.
Questions d'utilisation
Que se passe-t-il si je clique plusieurs fois ?
Chaque clic exécute de nouveau tout le processus : il génère le document avec les valeurs présentes à ce moment, enregistre à nouveau le JSON (et le PDF, s'il y parvient) et émet un autre événement. Si, lors d'un clic, le PDF n'est pas généré, seuls le JSON et son nom sont écrasés, et le PDF précédent reste tel quel. Si vous changez la personne concernée ou la référence entre deux clics, le nouveau document reprend les valeurs actuelles.
Est-ce identique dans toutes les versions d'Odoo ?
Le bouton existe dans les branches 17, 18, 19 et 20, et le module est publié sur Odoo Apps pour ces quatre versions. Le processus décrit (ce qui est enregistré, quel événement est émis) est celui du code d'Odoo 20.0. Si vous travaillez avec 17, 18 ou 19, testez-le d'abord sur une base de test, avec des données fictives.
Avec Odoo en français, le bouton s'appelle Generate Erasure Refusal (art.17) ; en catalan, Generar Denegació de Supressió (art.17).

Si vous le mettez en place
FlexigoTech met en place Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure ; si vous avez besoin d'adapter ce flux de confidentialité à vos droits d'accès et à votre façon de travailler, écrivez-nous. Vous pouvez consulter le module sur sa fiche Odoo Apps. Un autre bouton du module, expliqué avec la même approche : ce que fait le bouton « Run Pre-flight ».
À lire aussi
Vérifié dans le code du module (version 20.0) et dans les sources citées
Sources
- Code du module : flexigo_spain_verifactu 20.0 (1fdc980f): wizards/verifactu_dsar_wizard_views.xml
- Code du module : flexigo_spain_verifactu 20.0 (1fdc980f): wizards/verifactu_dsar_wizard.py
- apps.odoo.com/apps/modules/20.0/flexigo_spain_verifactu
- flexigotech.com/en/services.html
