Webinaire🇫🇷
Agents IA dans Odoo : le guide complet, avec les notes de frais en cas pratiquele 24 septembre à 15:00
Aidoo AI

Écrire dans Odoo

aidoo_create, aidoo_write, aidoo_workflow, aidoo_execute et aidoo_delete : ce qui borne réellement une écriture, les modes groupés, et comment ouvrir l'écriture sans prendre de risque.

7 min de lectureMis à jour le 24 août 2026

Passer de la lecture à l'écriture change la nature de l'outil : une réponse fausse se corrige, une écriture appliquée reste. Aucune permission d'écriture n'est donc accordée par défaut.

Ce qui borne réellement une écriture

La seule barrière serveur, ce sont vos permissions

Aidoo vérifie à chaque appel que votre clé porte la permission voulue, que le modèle et les champs ne sont pas bloqués, et que l'outil n'appelle que la méthode Odoo qui lui est liée. Ces contrôles s'exécutent côté serveur : l'assistant ne peut pas les contourner. Tout le reste dépend de votre client et de votre vigilance.

L'approbation dans la conversation. Claude ou ChatGPT vous montre l'appel et ses arguments, et attend votre accord. C'est votre meilleur point de contrôle sur les valeurs, mais il appartient au client : réglé sur « Toujours autoriser », il disparaît. Voir Se connecter avec Claude.

Les hints, en garde-fou de qualité. Si le modèle visé porte un hint, l'outil renvoie vos consignes à l'assistant au lieu d'écrire, et lui demande de reprendre ses valeurs. C'est ce qui fait appliquer une règle du type « toute activité doit être assignée au commercial du client, jamais à l'utilisateur courant ».

Ce mécanisme oriente l'assistant, il ne le contraint pas

Le renvoi des hints vit dans l'outil MCP, pas dans le serveur : c'est l'assistant qui décide de confirmer. Comptez dessus pour la justesse des valeurs, jamais comme barrière de sécurité. Pour borner ce qui est possible, ce sont les permissions et le blocage de modèles qui comptent.

aidoo_create

Crée un ou plusieurs enregistrements.

  • Unitaire : model + values
  • Groupé : model + values_list, une liste de dictionnaires

En mode groupé, tout part dans un seul appel Odoo. C'est plus rapide, et surtout plus cohérent : Odoo applique ses contraintes sur l'ensemble.

Crée les trois contacts suivants dans Odoo : Marie Dubois ([email protected]), Paul Martin ([email protected]) et Sophie Bernard ([email protected]), tous rattachés à la société Exemple SA.

aidoo_write

Modifie des enregistrements existants.

  • Unitaire : ids + values, les mêmes valeurs pour tous les identifiants
  • Groupé : batch, une liste de {ids, values}, chaque lot reçoit ses propres valeurs

Le mode groupé renvoie le détail lot par lot : si le troisième échoue, vous savez lequel et pourquoi, et les deux premiers restent appliqués.

Archiver plutôt que supprimer

Passer active à false retire l'enregistrement des vues sans détruire l'information ni casser les documents qui le référencent. Dans la quasi-totalité des cas, c'est la bonne réponse à « supprime ce contact ».

aidoo_workflow

Déclenche une action métier d'Odoo : les boutons de vos écrans. Confirmer un devis, valider une facture, réceptionner un transfert.

Paramètres : model, ids, action. Seules les méthodes préfixées action_ ou button_ sont acceptées ; le serveur rejette tout le reste.

Confirme le devis S00042.

L'intérêt par rapport à aidoo_write : l'action déclenche toute la logique Odoo associée, écritures comptables, mouvements de stock, séquences, e-mails. Modifier le champ state à la main ne ferait rien de tout cela et laisserait votre base incohérente.

Ne forcez jamais un statut par écriture directe

Si l'assistant vous propose de passer state à sale avec aidoo_write, refusez et demandez l'action métier. Un devis « confirmé » sans les écritures associées est une bombe à retardement comptable.

aidoo_execute

Appelle une méthode Odoo arbitraire : la porte de sortie pour ce que les autres outils ne couvrent pas.

Paramètres : model, method, args, kwargs.

Les méthodes qui doublonneraient un outil dédié sont bloquées : create, write, unlink, read, search_read, read_group, fields_get, export_data, load, import_data. Sans quoi une clé disposant de execute pourrait contourner l'absence de create ou de delete.

C'est l'outil le plus puissant du catalogue. Il mérite une décision consciente, pas une case cochée « au cas où ».

aidoo_delete

Supprime définitivement (unlink). Pas de corbeille côté Odoo : seule l'option « Snapshot avant écriture » d'Aidoo (voir ci-dessous) permet d'en revenir.

L'opération la plus risquée du catalogue

Odoo refuse souvent la suppression d'un enregistrement référencé ailleurs : c'est une protection, pas un bug. Quand il l'accepte, l'information est perdue, sauf snapshot Aidoo, et même alors les lignes liées ne reviennent pas. Gardez cette permission fermée en production, et ouvrez-la ponctuellement pour une opération de nettoyage identifiée.

Revenir en arrière (undo)

Chaque écriture réussie reste annulable pendant 7 jours, depuis le panneau latéral de l'opération dans le détail d'un Flux, ou directement dans la bulle du chat du widget Odoo.

  • Création : l'annulation supprime les enregistrements créés. Disponible partout, sans aucun réglage.
  • Modification : l'annulation restaure les valeurs d'avant. Nécessite le réglage Paramètres → Annulation des opérations → Snapshot avant écriture (désactivé par défaut : il ajoute une lecture Odoo avant chaque écriture).
  • Suppression : l'annulation recrée les enregistrements depuis le snapshot, avec de nouveaux identifiants ; lignes liées, pièces jointes et images ne sont pas restaurées. Même réglage requis.

L'annulation s'exécute sous votre propre identité Odoo (la piste d'audit vous nomme) et peut être déclenchée par l'auteur de l'opération ou un administrateur du workspace. Si l'enregistrement a été modifié entre-temps par quelqu'un d'autre, l'annulation est bloquée et les champs en conflit sont affichés : elle n'écrase jamais un travail plus récent.

Tout annuler d'un coup. Le détail d'un Flux propose « Tout annuler » au-dessus de ses étapes, et une bulle du chat affiche le même bouton dès qu'un message porte plusieurs opérations. Les annulations s'exécutent dans l'ordre inverse des écritures (la dernière est défaite en premier), et un refus individuel (conflit, blocage Odoo) n'arrête pas les autres : le résultat détaille ce qui a été annulé et ce qui reste.

Les actions métier ne sont pas annulables

aidoo_workflow et aidoo_execute déclenchent la logique Odoo complète (écritures comptables, mouvements de stock, e-mails…) : il n'existe pas d'inverse générique. Pour revenir sur une confirmation de devis ou une validation de facture, utilisez l'action inverse d'Odoo quand elle existe.

Ouvrir l'écriture sans prendre de risque

Commencez sur l'environnement de test

Si vous disposez d'une copie de votre base, activez create et write sur l'environnement staging uniquement. Les permissions se règlent séparément par environnement.

Écrivez vos règles métier dans les hints

Avant d'ouvrir l'écriture, documentez vos conventions dans le hint du modèle : champs obligatoires, valeurs interdites, qui doit être assigné. Ces consignes sont réinjectées à chaque tentative d'écriture, avant exécution.

Voir Hints et apprentissage.

Ouvrez modèle par modèle, pas en bloc

Bloquez les modèles sensibles, écritures comptables, paie, utilisateurs, même si la permission write est accordée. Le blocage par modèle s'applique avant la permission.

Relisez le journal la première semaine

Le journal de requêtes montre chaque écriture : qui, quoi, quand, avec quelles valeurs. C'est le meilleur moyen de constater ce que l'assistant fait réellement, avant d'élargir.

Diagnostic

« Permission create is required »

La permission n'est pas accordée à votre clé sur cet environnement. Elle se règle dans Clés API.

Page Clés API d'Aidoo : une ligne par clé, avec son utilisateur, son préfixe, ses permissions et un bouton Modifier.
Chaque clé porte ses propres permissions, modifiables à tout moment.

Si vous ne pouvez pas l'accorder, un workflow enregistré peut faire l'opération : validé une fois à la création, il s'exécute ensuite avec la permission workflow.

« Access Denied » côté Odoo

La permission Aidoo est bien là, mais votre compte Odoo n'a pas le droit d'écrire sur ce modèle. Le correctif est dans Odoo, pas dans Aidoo : ajoutez le groupe manquant à votre compte.

L'écriture a réussi mais rien ne bouge dans Odoo

Regardez la société active et les filtres de votre vue. Un enregistrement créé sur une autre société n'apparaît pas dans l'écran courant.

L'assistant boucle sur une demande de confirmation

Le hint du modèle contient une consigne que l'assistant n'arrive pas à satisfaire : une valeur obligatoire dont il ne dispose pas, par exemple. Ouvrez le hint et vérifiez qu'il est applicable ; c'est souvent une règle rédigée pour un cas particulier, appliquée à tous.

Étape suivante