stock.location : champs, relations et API
Le modèle stock.location (« Emplacements de l'inventaire ») est un modèle persistant déclaré par le module Inventaire, puis enrichi par 3 autres modules. Il expose 36 champs, dont 30 déclarés directement sur le modèle ; 69 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.location- Libellé
- Emplacements de l'inventaire
- Type
- Persistant (models.Model)
- Table SQL
stock_location- Module d'origine
- Inventaire (
stock) - Étendu par
- stock_account, mrp_subcontracting, stock_maintenance
- Tri par défaut (_order)
complete_name, id
Champs du modèle
30 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.
36 champs affichés sur 36
| Nom technique | Libellé | Type | Détails |
|---|---|---|---|
| active | Actif En décochant cette case, vous pouvez masquer un emplacement sans pour autant le supprimer. | boolean | |
| barcode | Code-barres | char | |
| child_ids | Contient | one2many | inverse : |
| child_internal_location_ids | Emplacements internes parmi les descendants Cet emplacement (s'il est interne) et ses descendants filtrés par type=interne | many2many | calculé |
| company_id | Société Laissez ce champ vide si cet emplacement est partagé par plusieurs sociétés | many2one | |
| complete_name | Nom complet de l'emplacement | char | calculé, stocké |
| cyclic_inventory_frequency | Fréquence d'inventaire When different than 0, inventory count date for products stored at this location will be automatically set at the defined frequency. | integer | |
| equipment_count | Nombre d'équipements | integer | calculé ajouté par Inventaire - Maintenance ( |
| forecast_weight | Poids estimé | float | calculé |
| incoming_move_line_ids | Mouvement de stock entrant | one2many | inverse : |
| is_empty | Est vide | boolean | calculé |
| is_valued_external | Est valorisé en dehors de l’entreprise | boolean | calculé ajouté par WMS Comptabilité ( |
| is_valued_internal | Est valorisé au sein de l’entreprise | boolean | calculé ajouté par WMS Comptabilité ( |
| last_inventory_date | Dernier inventaire Date du dernier inventaire à cet emplacement. | date | lecture seule |
| location_id | Emplacement parent L'emplacement parent qui comprend cet emplacement. Par exemple, la 'Zone d'expédition' est l'emplacement parent de la 'Porte 1'. | many2one | |
| name | Nom de l'emplacement | char | requis |
| net_weight | Poids net | float | calculé |
| next_inventory_date | Prochain prévu Date pour l'inventaire planifié suivant, basé sur un agenda cyclique. | date | calculé, stocké |
| outgoing_move_line_ids | Mouvement de stock sortant | one2many | inverse : |
| parent_path | Chemin parent | char | |
| putaway_rule_ids | Stratégies de rangement | one2many | inverse : |
| quant_ids | Qté | one2many | inverse : |
| removal_strategy_id | Stratégie d'enlèvement Defines the default method used for suggesting the exact location (shelf) where to take the products from, which lot etc. for this location. This method can be enforced at the product category level, and a fallback is made on the parent locations if none is set here. FIFO: products/lots that were stocked first will be moved out first. LIFO: products/lots that were stocked last will be moved out first. Closest Location: products/lots closest to the target location will be moved out first. Least Packages: products/lots that were stocked in package with least amount of qty will be moved out first. FEFO: products/lots with the closest removal date will be moved out first (the availability of this method depends on the "Expiration Dates" setting). | many2one | |
| replenish_location | Réassorts Déclencher des suggestions de réapprovisionnement pour cet emplacement lorsque nécessaire | boolean | calculé, stocké |
| storage_category_id | Catégories d'emplacement | many2one | |
| subcontractor_ids | Sous-traitant | one2many | inverse : ajouté par MRP Sous-traitance ( |
| usage | Type d'emplacement * Vendor: Virtual location representing the source location for products coming from your vendors * Virtual: Virtual location used to create a hierarchical structure for your warehouse by aggregating its child locations. Can't directly contain products * Internal: Physical locations inside your warehouses, * Customer: Virtual location representing the destination location for products sent to your customers * Inventory Loss: Virtual location serving as the counterpart for inventory operations done to correct stock levels (Physical inventories) * Production: Virtual counterpart location for production operations. I.e. This location consumes components and produces finished products * Transit: Counterpart location that should be used for inter-company or inter-warehouses operations | selection | requis Valeurs : |
| valuation_account_id | Compte de valorisation des stocks Compte de charge utilisé pour requalifier les produits sortis du stock et envoyés vers cet emplacement | many2one | ajouté par WMS Comptabilité ( |
| warehouse_id | Entrepôt | many2one | calculé, stocké |
| warehouse_view_ids | Vue d'entrepôt | one2many | lecture seule inverse : |
| 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.account : valuation_account_id
- product.removal : removal_strategy_id
- res.company : company_id
- res.partner : subcontractor_ids
- stock.location : child_ids, child_internal_location_ids, location_id
- stock.move.line : incoming_move_line_ids, outgoing_move_line_ids
- stock.putaway.rule : putaway_rule_ids
- stock.quant : quant_ids
- stock.storage.category : storage_category_id
- stock.warehouse : warehouse_id, warehouse_view_ids
Champs d'autres modèles qui pointent ici
- maintenance.equipment : location_id
- mrp.production : location_dest_id, location_final_id, location_src_id, production_location_id
- mrp.unbuild : location_dest_id, location_id
- product.template : location_id, property_stock_inventory, property_stock_production
- purchase.order.line : location_final_id
- repair.order : location_dest_id, location_id, parts_location_id, product_location_dest_id, product_location_src_id, recycle_location_id
- res.company : internal_transit_location_id, subcontracting_location_id
- res.partner : property_stock_customer, property_stock_subcontractor, property_stock_supplier
- stock.location : child_internal_location_ids, location_id
- stock.lot : location_id
- stock.move : location_dest_id, location_final_id, location_id
- stock.move.line : location_dest_id, location_id, picking_location_dest_id, picking_location_id
- stock.package : location_dest_id, location_id
- stock.package.destination : location_dest_id
- stock.package.history : location_dest_id, location_id
- stock.picking : location_dest_id, location_id
- stock.picking.batch : allowed_dock_ids, dock_id
- stock.picking.type : default_location_dest_id, default_location_src_id, default_product_location_dest_id, default_product_location_src_id, default_recycle_location_dest_id, default_remove_location_dest_id, dock_ids, wave_location_ids
- stock.put.in.pack : location_dest_id
- stock.putaway.rule : location_in_id, location_out_id
- stock.quant : location_id
- stock.quant.relocate : dest_location_id
- stock.replenishment.option : location_id
- stock.rule : location_dest_id, location_src_id
- stock.scrap : location_id, scrap_location_id
- stock.warehouse : lot_stock_id, pbm_loc_id, sam_loc_id, view_location_id, wh_input_stock_loc_id, wh_output_stock_loc_id, wh_pack_stock_loc_id, wh_qc_stock_loc_id
- stock.warehouse.orderpoint : location_id
- stock.warn.insufficient.qty : location_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.location/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: votre-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["name","usage","company_id","location_id","removal_strategy_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.location/search_read",
headers=headers,
json={"domain": [], "fields": ["name","usage","company_id","location_id","removal_strategy_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-location">stock.location (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.