stock.lot : champs, relations et API
Le modèle stock.lot (« Lot/série ») est un modèle persistant déclaré par le module Inventaire, puis enrichi par 7 autres modules. Il expose 65 champs, dont 35 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 20.
Fiche d'identité
- Nom technique
stock.lot- Libellé
- Lot/série
- Type
- Persistant (models.Model)
- Table SQL
stock_lot- Module d'origine
- Inventaire (
stock) - Étendu par
- mrp, stock_account, sale_stock, purchase_stock, product_expiry, repair, stock_dropshipping
- Tri par défaut (_order)
name, id- Hérite de (mixins)
- mail.threadmail.activity.mixin
Champs du modèle
35 champs propres, 24 hérités des mixins et 6 champs automatiques de l'ORM. Cliquez sur un nom pour obtenir le lien direct vers le champ.
65 champs affichés sur 65
| Nom technique | Libellé | Type | Détails |
|---|---|---|---|
| alert_date | Date d'alerte Date servant à déterminer les lots et numéros de série expirés à l'aide du filtre "Alertes d'expiration". | datetime | calculé, stocké ajouté par Products Expiration Date ( |
| avg_cost | Coût moyen | monetary | lecture seulecalculé ajouté par WMS Accounting ( |
| company_currency_id | Devise de la valorisation | many2one | calculé ajouté par WMS Accounting ( |
| company_id | Société | many2one | calculé, stocké |
| delivery_count | N° de bon de livraison | integer | calculé |
| delivery_ids | Transferts | many2many | calculé |
| display_complete | Montrer complet | boolean | calculé |
| expiration_date | Date d'expiration Il s'agit de la date à laquelle les marchandises avec ce numéro de série deviennent dangereuses et ne doivent plus être consommées. | datetime | calculé, stocké ajouté par Products Expiration Date ( |
| in_repair_count | Quantité en réparation | integer | calculé ajouté par Réparations ( |
| is_scrap | Est mis au rebut | boolean | calculé |
| location_id | Emplacement | many2one | calculé, stocké |
| lot_properties | Propriétés | properties | |
| lot_valuated | Lot Valuated | boolean | lecture seule related : ajouté par WMS Accounting ( |
| name | Lot/numéro de série Lot/numéro de série unique | char | requiscalculé, stocké |
| note | Description | html | |
| partner_ids | Partenaire | many2many | |
| product_expiry_alert | Alerte d'expiration de produit La date d'expiration a été atteinte. | boolean | calculé ajouté par Products Expiration Date ( |
| product_expiry_reminded | L'expiration a été rappelée | boolean | ajouté par Products Expiration Date ( |
| product_id | Produit | many2one | requis |
| product_qty | Quantité en stock | float | calculé |
| purchase_order_count | Nombre de bons de commande | integer | calculé ajouté par Purchase Stock ( |
| purchase_order_ids | Bons de commande fournisseur | many2many | lecture seulecalculé ajouté par Purchase Stock ( |
| quant_ids | Quantités | one2many | lecture seule inverse : |
| ref | Référence interne Référence interne, dans le cas où celle-ci est différente du lot/numéro de série du fabricant | char | |
| removal_date | Date d'enlèvement C’est la date à laquelle les marchandises avec ce numéro de série doivent être retirées du stock et ne plus être comptées dans le stock frais disponible. Cette date sera utilisée dans la stratégie de retrait FEFO. | datetime | calculé, stocké ajouté par Products Expiration Date ( |
| repair_line_ids | Ordres de réparation | many2many | calculé ajouté par Réparations ( |
| repair_part_count | Nombre de pièces de rechange | integer | calculé ajouté par Réparations ( |
| repaired_count | Nombre de réparations | integer | calculé ajouté par Réparations ( |
| sale_order_count | Nombre de commandes clients | integer | calculé ajouté par Sales and Warehouse Management ( |
| sale_order_ids | Commandes clients | many2many | calculé ajouté par Sales and Warehouse Management ( |
| standard_price | Coût Value of the lot (automatically computed in AVCO). Used to value the product when the purchase cost is not known (e.g. inventory adjustment). Used to compute margins on sale orders. | float | dépend de la société ajouté par WMS Accounting ( |
| total_value | Valeur totale | monetary | calculé ajouté par WMS Accounting ( |
| uom_id | Unité | many2one→ uom.uom | related : |
| use_date | Date limite d'utilisation optimale Il s'agit de la date à laquelle les marchandises avec ce numéro de série commencent à se détériorer, sans pour autant être dangereuses. | datetime | calculé, stocké ajouté par Products Expiration Date ( |
| use_expiration_date | Utiliser la date d'expiration | boolean | related : ajouté par Products Expiration Date ( |
| activity_calendar_event_id | Activité suivante de l'événement du calendrier | many2one | calculé hérité de mail.activity.mixin |
| activity_date_deadline | Date limite de l'activité à venir | date | lecture seulecalculé hérité de mail.activity.mixin |
| activity_exception_decoration | Indicateur d’exception d’activité Type d'activité d'exception enregistrée. | selection | calculé Valeurs : hérité de mail.activity.mixin |
| activity_exception_icon | Icône Icône pour indiquer une activité d'exception. | char | calculé hérité de mail.activity.mixin |
| activity_ids | Activités | one2many | inverse : hérité de mail.activity.mixin |
| activity_plans_ids | Plans d'activité | many2many | calculé hérité de mail.activity.mixin |
| activity_state | Statut de l'activité Status based on activities Overdue: Due date is already passed Today: Activity date is today Planned: Future activities. | selection | calculé Valeurs : hérité de mail.activity.mixin |
| activity_summary | Résumé de l'activité suivante | char | related : hérité de mail.activity.mixin |
| activity_type_icon | Icône de type d'activité | char | related : hérité de mail.activity.mixin |
| activity_type_id | Type d'activités à venir | many2one | related : hérité de mail.activity.mixin |
| activity_user_id | Utilisateur responsable | many2one | lecture seulecalculé hérité de mail.activity.mixin |
| has_message | A un message | boolean | calculé hérité de mail.thread |
| message_attachment_count | Nombre de pièces jointes | integer | calculé hérité de mail.thread |
| message_follower_ids | Abonnés | one2many | inverse : hérité de mail.thread |
| message_has_error | Erreur d'envoi du message Si coché, certains messages ont une erreur de livraison. | boolean | calculé hérité de mail.thread |
| message_has_error_counter | Nombre d'erreurs Nombre de messages avec des erreurs d'envoi | integer | calculé hérité de mail.thread |
| message_has_sms_error | Erreur d'envoi SMS Si coché, certains messages ont une erreur de livraison. | boolean | calculé hérité de mail.thread |
| message_ids | Messages | one2many | inverse : hérité de mail.thread |
| message_is_follower | Est un abonné | boolean | calculé hérité de mail.thread |
| message_needaction | Nécessite une action Si coché, de nouveaux messages demandent votre attention. | boolean | calculé hérité de mail.thread |
| message_needaction_counter | Nombre d'actions Nombre de messages nécessitant une action | integer | calculé hérité de mail.thread |
| message_partner_ids | Abonnés (Partenaires) | many2many | calculé hérité de mail.thread |
| my_activity_date_deadline | Échéance de mon activité | date | lecture seulecalculé hérité de mail.activity.mixin |
| rating_ids | Évaluations | one2many | inverse : hérité de mail.thread |
| 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
- product.product : product_id
- purchase.order : purchase_order_ids
- repair.order : repair_line_ids
- res.company : company_id
- res.currency : company_currency_id
- res.partner : partner_ids
- sale.order : sale_order_ids
- stock.location : location_id
- stock.picking : delivery_ids
- stock.quant : quant_ids
- uom.uom : uom_id
Champs d'autres modèles qui pointent ici
- expiry.picking.confirmation : lot_ids
- lot.label.layout : lot_ids
- mrp.production : lot_producing_ids
- mrp.unbuild : lot_ids, lot_producing_ids
- mrp.workorder : production_lot_producing_id
- product.value : lot_id
- repair.order : lot_id
- stock.move : lot_ids
- stock.move.line : lot_id
- stock.picking : lot_id
- stock.quant : lot_id
Lire ce modèle par l'API
Exemple d'appel à l'API JSON-2 d'Odoo 20 : 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.lot/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: votre-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["name","product_id","company_id","location_id","uom_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.lot/search_read",
headers=headers,
json={"domain": [], "fields": ["name","product_id","company_id","location_id","uom_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-lot">stock.lot (Odoo 20.0)</a>Sources
- Code source du modèle sur GitHub
- Documentation Odoo 20 : ORM API
- Documentation Odoo 20 : API externe JSON-2
Données vérifiées le 25 septembre 2026 · Odoo 20.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.