stock.move : champs, relations et API
Le modèle stock.move (« Mouvement de stock ») est un modèle persistant déclaré par le module Inventaire, puis enrichi par 26 autres modules. Il expose 123 champs, dont 117 déclarés directement sur le modèle ; 12 champs d'autres modèles pointent vers lui. Retrouvez ci-dessous chaque champ avec son nom technique, son type, son libellé français et ses relations, puis un exemple d'appel à l'API JSON-2 d'Odoo 19.
Fiche d'identité
- Nom technique
stock.move- Libellé
- Mouvement de stock
- Type
- Persistant (models.Model)
- Table SQL
stock_move- Module d'origine
- Inventaire (
stock) - Étendu par
- stock_account, sale_stock, stock_delivery, stock_picking_batch, point_of_sale, mrp, mrp_account, purchase_stock, stock_landed_costs, product_expiry, repair, mrp_repair, mrp_subcontracting, mrp_subcontracting_account, sale_purchase_stock, mrp_subcontracting_dropshipping, purchase_mrp, mrp_subcontracting_purchase, pos_mrp, project_mrp, project_mrp_account, sale_mrp, project_stock_account, purchase_requisition_stock, sale_project_stock, sale_project_stock_account
- Tri par défaut (_order)
sequence, id- Champ d'affichage (_rec_name)
reference
Champs du modèle
117 champs propres, 0 hérités des mixins et 6 champs automatiques de l'ORM. Cliquez sur un nom pour obtenir le lien direct vers le champ.
123 champs affichés sur 123
| Nom technique | Libellé | Type | Détails |
|---|---|---|---|
| account_move_id | stock_move_id | many2one | ajouté par WMS Comptabilité ( |
| additional | Si le mouvement a été ajouté après la confirmation du transfert ou non | boolean | |
| allowed_operation_ids | Allowed Operation | one2many | related : ajouté par Fabrication ( |
| allowed_uom_ids | Unité de mesure autorisée | many2many→ uom.uom | calculé |
| analytic_account_line_ids | Ligne de compte analytique | many2many | ajouté par WMS Comptabilité ( |
| availability | Quantité prévue Quantité en stock qui peut encore être réservée pour ce mouvement | float | lecture seulecalculé |
| bom_line_id | Ligne de nomenclature | many2one | ajouté par Fabrication ( |
| byproduct_id | Sous-produits Ligne de sous-produit qui génère un mouvement dans un ordre de fabrication | many2one | ajouté par Fabrication ( |
| company_currency_id | Devise de la société | many2one | lecture seule related : ajouté par WMS Comptabilité ( |
| company_id | Société | many2one | requis |
| consume_unbuild_id | Ordre de désassemblage consommé | many2one | ajouté par Fabrication ( |
| cost_share | Partage des coûts (%) Le pourcentage du coût de production final de ce sous-produit. Le total de la part des coûts de tous les sous-produits doit être inférieur ou égal à 100. | float | ajouté par Fabrication ( |
| created_production_id | Ordre de fabrication créé | many2one | ajouté par Fabrication ( |
| created_purchase_line_ids | Lignes de commande créées | many2many | ajouté par Achats Inventaire ( |
| date | Date planifiée Date planifiée tant que le mouvement n'est pas terminé, puis date de l'exécution réelle du mouvement. | datetime | requis |
| date_deadline | Date limite In case of outgoing flow, validate the transfer before this date to allow to deliver at promised date to the customer. In case of incoming flow, validate the transfer before this date in order to have these products in stock at the date promised by the supplier | datetime | lecture seule |
| delay_alert_date | Date d'alerte de retard Traiter à cette date pour être à temps | datetime | calculé, stocké |
| description_picking | Description du transfert | text | calculé |
| description_picking_manual | Description du transfert manuel | text | lecture seule |
| display_assign_serial | Montrer l'assignation des numéros de série | boolean | calculé |
| display_import_lot | Afficher le lot d'import | boolean | calculé |
| forecast_availability | Prévision de disponibilité | float | calculé |
| forecast_expected_date | Date prévue espérée | datetime | calculé |
| has_lines_without_result_package | Contient des lignes sans colis de résultat | boolean | calculé |
| has_tracking | Produit avec suivi | selection | related : |
| inventory_name | Nom de l’inventaire | char | lecture seule |
| is_date_editable | Date modifiable | boolean | calculé |
| is_dropship | Est en dropshipping | boolean | calculé, stocké ajouté par WMS Comptabilité ( |
| is_in | Est entrant (valorisé) | boolean | calculé, stocké ajouté par WMS Comptabilité ( |
| is_initial_demand_editable | La demande initiale est-elle modifiable ? | boolean | calculé |
| is_inventory | Inventaire | boolean | |
| is_locked | Est verrouillé | boolean | lecture seulecalculé |
| is_out | Est sortant (valorisé) | boolean | calculé, stocké ajouté par WMS Comptabilité ( |
| is_quantity_done_editable | La quantité traitée est-elle modifiable ? | boolean | calculé |
| is_storable | Is Storable | boolean | related : |
| is_subcontract | Le mouvement est une réception sous-contractée | boolean | ajouté par MRP Sous-traitance ( |
| is_valued | Est valorisé | boolean | calculé ajouté par WMS Comptabilité ( |
| location_dest_id | Emplacement intermédiaire Les opérations permettent d'acheminer le produit jusqu'à cet emplacement | many2one | requiscalculé, stocké |
| location_dest_usage | Type d'emplacement de destination | selection | related : |
| location_final_id | Emplacement final L'opération amène les produits à l'emplacement intermédiaire. Cependant, cette opération fait partie d'une chaîne d'opérations visant l'emplacement final. | many2one | |
| location_id | Emplacement d'origine L'opération consiste à prendre et à proposer des produits à partir de cet emplacement. | many2one | requiscalculé, stocké |
| location_usage | Type d'emplacement d'origine | selection | related : |
| lot_ids | Numéros de série | many2many | calculé |
| manual_consumption | Consommation manuelle When activated, then the registration of consumption for that component is recorded manually exclusively. If not activated, and any of the components consumption is edited manually on the manufacturing order, Odoo assumes manual consumption also. | boolean | calculé, stocké ajouté par Fabrication ( |
| move_dest_ids | Mouvements de destination Facultatif : mouvement de stock suivant quand ils sont chaînés. | many2many | |
| move_line_ids | Ligne de mouvement | one2many | inverse : |
| move_lines_count | Nombre de lignes de mouvement | integer | calculé |
| move_orig_ids | Mouvement original Facultatif : mouvement de stock précédent quand ils sont chaînés | many2many | |
| never_product_template_attribute_value_ids | Jamais de valeurs d'attributs | many2many | |
| next_serial | Premier numéro de série/lot | char | |
| next_serial_count | Nombre de numéros de séries/lots | integer | |
| operation_id | Opération à consommer | many2one | ajouté par Fabrication ( |
| order_finished_lot_ids | Lot/numéro de série terminé | many2many | related : ajouté par Fabrication ( |
| orderpoint_id | Règle de réapprovisionnement originale | many2one | |
| origin | Document d'origine | char | |
| origin_returned_move_id | Origine du retour Mouvement qui a créé le mouvement de retour | many2one | |
| package_ids | Colis | one2many | calculé |
| packaging_uom_id | Conditionnement Unité d'emballage provenant des commandes clients ou fournisseurs | many2one→ uom.uom | calculé, stocké |
| packaging_uom_qty | Qté de conditionnements Quantité dans l'unité d'emballage | float | calculé, stocké |
| partner_id | Adresse de destination Adresse facultative pour la livraison des biens, utilisée en particulier pour l'allocation des stocks. | many2one | calculé, stocké |
| picked | Transféré Cette case à cocher n'est qu'indicative, elle ne valide ni ne génère aucun mouvement de produit. | boolean | calculé, stocké |
| picking_code | Picking Code | selection | lecture seule related : |
| picking_id | Transfert | many2one | |
| picking_type_id | Type d'opération | many2one | calculé, stocké |
| price_unit | Prix unitaire | float | |
| priority | Priorité | selection | calculé, stocké Valeurs : |
| procure_method | Méthode d'approvisionnement Par défaut, le système prendra dans le stock de l'emplacement d'origine et attendra passivement la disponibilité. L'autre possibilité vous permet de créer d'office un approvisionnement à l'emplacement d'origine (sans tenir compte son niveau de stock actuel) pour acheminer les articles. Pour faire des mouvements chaînés et faire en sorte que celui-ci attende le précédent, la seconde option devra être choisie. | selection | requis Valeurs : |
| procurement_values | Valeurs d’approvisionnement Champ factice utilisé pour stocker les valeurs d’approvisionnement afin de les propager aux étapes suivantes | json | |
| product_category_id | Catégorie de produits | many2one | related : |
| product_id | Produit | many2one | requis |
| product_qty | Quantité réelle Quantité dans l'UdM par défaut du produit | float | calculé, stocké |
| product_qty_available | Quantité de produits en stock | float | related : ajouté par Fabrication ( |
| product_tmpl_id | Modèle de produit | many2one | related : |
| product_uom | Unité | many2one→ uom.uom | requiscalculé, stocké |
| product_uom_qty | Demande Il s'agit de la quantité de produits qu'il est prévu de déplacer. L'abaissement de cette quantité ne génère pas de reliquat. La modification de cette quantité sur les mouvements assignés affecte la réservation de produits et doit être effectuée avec précaution. | float | requis |
| product_virtual_available | Quantité prévue du produit | float | related : ajouté par Fabrication ( |
| production_group_id | Utilisé pour les productions | many2one | ajouté par Fabrication ( |
| production_id | Ordre de production pour les produits finis | many2one | ajouté par Fabrication ( |
| propagate_cancel | Propager les annulations et les fractionnements Si cette case est cochée, lorsque ce mouvement est annulé, le mouvement lié l'est aussi | boolean | |
| purchase_line_id | Ligne de bon de commande | many2one | lecture seule ajouté par Achats Inventaire ( |
| quantity | Quantité | float | calculé, stocké |
| raw_material_production_id | Ordre de production pour les composants | many2one | ajouté par Fabrication ( |
| reference | Référence | char | calculé, stocké |
| reference_ids | Références | many2many | |
| remaining_qty | Quantité restante | float | calculé ajouté par WMS Comptabilité ( |
| remaining_value | Valeur restante | monetary | calculé ajouté par WMS Comptabilité ( |
| repair_id | Réparation | many2one | ajouté par Réparations ( |
| repair_line_type | Type | selection | Valeurs : ajouté par Réparations ( |
| requisition_line_ids | Ligne de demande | one2many | inverse : ajouté par Demande d'achat stock ( |
| reservation_date | Date de réservation Calcule quand un mouvement doit être réservé | date | calculé, stocké |
| restrict_partner_id | Propriétaire | many2one | |
| returned_move_ids | Tous les mouvements de retour Facultatif : tous les mouvements de retour créés à partir de ce mouvement | one2many | inverse : |
| route_ids | Route de destination Route préférée | many2many | |
| rule_id | Règle de stock La règle d'approvisionnement qui a créé ce mouvement de stock | many2one | |
| sale_line_id | Ligne de vente | many2one | ajouté par Gestion des ventes et des entrepôts ( |
| scrap_id | Opération de rebut | many2one | lecture seule |
| sequence | Séquence | integer | |
| should_consume_qty | Quantité à consommer | float | calculé ajouté par Fabrication ( |
| show_details_visible | Détails visibles | boolean | calculé |
| show_lots_m2o | Afficher lot_id | boolean | calculé |
| show_lots_text | Afficher lot_name | boolean | calculé |
| show_operations | Show Operations | boolean | related : |
| show_quant | Afficher la quantité | boolean | calculé |
| show_subcontracting_details_visible | Afficher les détails de sous-traitance | boolean | calculé ajouté par MRP Sous-traitance ( |
| standard_price | Prix standard | float | calculé ajouté par WMS Comptabilité ( |
| state | Statut * New: The stock move is created but not confirmed. * Waiting Another Move: A linked stock move should be done before this one. * Waiting: The stock move is confirmed but the product can't be reserved. * Available: The product of the stock move is reserved. * Done: The product has been transferred and the transfer has been confirmed. | selection | lecture seule Valeurs : |
| to_refund | Mettre à jour les quantités sur les commandes clients/fournisseurs Déclencher une réduction de la quantité livrée/reçue dans la commande client/fournisseur associée | boolean | ajouté par WMS Comptabilité ( |
| unbuild_id | Ordre de désassemblage | many2one | ajouté par Fabrication ( |
| unit_factor | Facteur unitaire | float | calculé, stocké ajouté par Fabrication ( |
| use_expiration_date | Utiliser la date d'expiration | boolean | related : ajouté par Date de péremption des produits ( |
| value | Valeur La valeur actuelle du mouvement. Elle est nulle si le mouvement n’est pas valorisé. | monetary | ajouté par WMS Comptabilité ( |
| value_computed_justification | Description de la valeur calculée | text | calculé ajouté par WMS Comptabilité ( |
| value_justification | Description de la valeur | text | calculé ajouté par WMS Comptabilité ( |
| value_manual | Valeur manuelle | monetary | calculé ajouté par WMS Comptabilité ( |
| warehouse_id | Entrepôt l'entrepôt à considérer pour la sélection de la route lors du prochain approvisionnement (le cas échéant). | many2one | |
| weight | Poids | float | calculé, stocké ajouté par Livraison - Stock ( |
| workorder_id | Ordre de travail à consommer | many2one | ajouté par Fabrication ( |
| create_date | Créé le | datetime | lecture seuleautomatique |
| create_uid | Créé par | many2one | lecture seuleautomatique |
| display_name | Nom affiché | char | lecture seulecalculéautomatique |
| id | ID | integer | lecture seuleautomatique |
| write_date | Dernière mise à jour le | datetime | lecture seuleautomatique |
| write_uid | Dernière mise à jour par | many2one | lecture seuleautomatique |
Relations
Modèles liés depuis ce modèle
- account.analytic.line : analytic_account_line_ids
- account.move : account_move_id
- mrp.bom.byproduct : byproduct_id
- mrp.bom.line : bom_line_id
- mrp.production : created_production_id, production_id, raw_material_production_id
- mrp.production.group : production_group_id
- mrp.routing.workcenter : allowed_operation_ids, operation_id
- mrp.unbuild : consume_unbuild_id, unbuild_id
- mrp.workorder : workorder_id
- product.category : product_category_id
- product.product : product_id
- product.template : product_tmpl_id
- product.template.attribute.value : never_product_template_attribute_value_ids
- purchase.order.line : created_purchase_line_ids, purchase_line_id
- purchase.requisition.line : requisition_line_ids
- repair.order : repair_id
- res.company : company_id
- res.currency : company_currency_id
- res.partner : partner_id, restrict_partner_id
- sale.order.line : sale_line_id
- stock.location : location_dest_id, location_final_id, location_id
- stock.lot : lot_ids, order_finished_lot_ids
- stock.move : move_dest_ids, move_orig_ids, origin_returned_move_id, returned_move_ids
- stock.move.line : move_line_ids
- stock.package : package_ids
- stock.picking : picking_id
- stock.picking.type : picking_type_id
- stock.reference : reference_ids
- stock.route : route_ids
- stock.rule : rule_id
- stock.scrap : scrap_id
- stock.warehouse : warehouse_id
- stock.warehouse.orderpoint : orderpoint_id
- uom.uom : allowed_uom_ids, packaging_uom_id, product_uom
Champs d'autres modèles qui pointent ici
- product.label.layout : move_ids
- product.value : move_id
- purchase.order.line : move_dest_ids
- purchase.requisition.line : move_dest_id
- repair.order : move_id
- stock.move : move_dest_ids, move_orig_ids, origin_returned_move_id
- stock.move.line : move_id
- stock.reference : move_ids
- stock.return.picking.line : move_id
- stock.valuation.adjustment.lines : move_id
Lire ce modèle par l'API
Exemple d'appel à l'API JSON-2 d'Odoo 19 : lecture des cinq premiers enregistrements avec des champs réels du modèle. Remplacez l'instance, la base et la clé API par les vôtres.
curl -X POST "https://votre-instance.odoo.com/json/2/stock.move/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: votre-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["reference","company_id","date","location_dest_id","location_id"],"limit":5}'import requests
BASE_URL = "https://votre-instance.odoo.com/json/2"
headers = {"Authorization": f"bearer {API_KEY}", "X-Odoo-Database": "votre-base"}
res = requests.post(
f"{BASE_URL}/stock.move/search_read",
headers=headers,
json={"domain": [], "fields": ["reference","company_id","date","location_dest_id","location_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())- L'accès à l'API externe est réservé à la formule Custom d'Odoo.
- XML-RPC et JSON-RPC seront retirés dans Odoo 22 (automne 2028) : préférez JSON-2.
- Les droits d'accès et règles d'enregistrement de l'utilisateur de la clé s'appliquent.
Citer cet outil
Vous rédigez un tutoriel, une documentation interne ou une réponse sur un forum ? Copiez ce lien pour renvoyer vos lecteurs vers la fiche à jour.
<a href="https://aidoo.ai/fr/outils/explorateur-modeles-odoo/stock-move">stock.move (Odoo 19.0)</a>Sources
- Code source du modèle sur GitHub
- Documentation Odoo 19 : ORM API
- Documentation Odoo 19 : API externe JSON-2
Données vérifiées le 23 septembre 2026 · Odoo 19.0 Community
Vous avez un projet Odoo ou souhaitez exploiter votre ERP avec l'IA ? Échangeons
Intégration, développement de modules, connexion de Claude ou ChatGPT à vos données : décrivez-nous votre contexte, nous vous répondons sous 24 heures ouvrées.