Odoo 19.0 Community · Persistente

stock.move.line: campos, relaciones y API

El modelo stock.move.line («Movimientos de producto (línea de movimiento de stock)») es un modelo persistente declarado por el módulo Inventario y ampliado por 9 módulos más. Expone 60 campos, 54 de ellos declarados directamente en el modelo; 6 campos de otros modelos apuntan a él. A continuación encontrará cada campo con su nombre técnico, tipo, etiqueta en español y relaciones, y un ejemplo de llamada a la API JSON-2 de Odoo 19.

Ficha de identidad

Nombre técnico
stock.move.line
Etiqueta
Movimientos de producto (línea de movimiento de stock)
Tipo
Persistente (models.Model)
Tabla SQL
stock_move_line
Módulo de origen
Inventario (stock)
Ampliado por
stock_account, sale_stock, stock_delivery, stock_picking_batch, mrp, product_expiry, repair, mrp_subcontracting, sale_mrp
Orden por defecto (_order)
result_package_id desc, id
Campo mostrado (_rec_name)
product_id

Campos del modelo

54 campos propios, 0 heredados de mixins y 6 campos automáticos del ORM. Haga clic en un nombre para obtener el enlace directo al campo.

60 de 60 campos mostrados

Nombre técnicoEtiquetaTipoDetalles
allowed_uom_idsUdM permitidamany2many
calculado
batch_idLotemany2one

related: picking_id.batch_id

añadido por Gestión de inventarios: traslados por lotes (stock_picking_batch)

carrier_idTransportistamany2one

related: picking_id.carrier_id

añadido por Entrega - Stock (stock_delivery)

company_idCompañíamany2one
obligatoriosolo lectura
consume_line_idsLínea de consumomany2many
dateFecha

La fecha de creación de esta línea de movimiento se actualizará si la cantidad aumenta, el estado cambia a “Recolectado” o realiza la línea de movimiento.

datetime
obligatorio
description_pickingDescription Pickingtext

related: move_id.description_picking

destination_country_codeDestination Country Codechar

related: picking_id.destination_country_code

añadido por Entrega - Stock (stock_delivery)

expiration_dateFecha de expiración

Esta fecha indica que los bienes con este número de serie pueden representar un riesgo y no se deben consumir.

datetime
calculado, almacenado

añadido por Fecha de caducidad en productos (product_expiry)

is_entire_packSe añade mediante paquete completoboolean
is_expiredEstá vencidoboolean

related: lot_id.product_expiry_alert

añadido por Fecha de caducidad en productos (product_expiry)

is_inventoryIs Inventoryboolean

related: move_id.is_inventory

is_lockedEstá bloqueadoboolean
solo lectura

related: move_id.is_locked

location_dest_idAmany2one
obligatoriocalculado, almacenado
location_dest_usageTipo de ubicación de destinoselection

related: location_dest_id.usage

location_idDesdemany2one
obligatoriocalculado, almacenado
location_usageTipo de ubicación de origenselection

related: location_id.usage

lot_idNúmero de lote/seriemany2one
lot_nameNombre del número de serie/lotechar
lots_visibleLotes visiblesboolean
calculado
move_idOperación de stockmany2one
move_partner_idMove Partnermany2one
solo lectura

related: move_id.partner_id

originOrigenchar

related: move_id.origin

owner_idDel propietario

Al validar el traslado, los productos se tomarán de este propietario.

many2one
package_history_idHistorial del paquetemany2one
package_idPaquete de origenmany2one
pickedRecolectadoboolean
calculado, almacenado
picking_codePicking Codeselection
solo lectura

related: picking_type_id.code

picking_idTraslado

La operación de stock en la que se creó el paquete

many2one
picking_location_dest_idPicking Location Destmany2one

related: picking_id.location_dest_id

picking_location_idPicking Locationmany2one

related: picking_id.location_id

picking_partner_idPicking Partnermany2one
solo lectura

related: picking_id.partner_id

picking_type_idTipo de operaciónmany2one
calculado
picking_type_use_create_lotsPicking Type Use Create Lotsboolean
solo lectura

related: picking_type_id.use_create_lots

picking_type_use_existing_lotsPicking Type Use Existing Lotsboolean
solo lectura

related: picking_type_id.use_existing_lots

produce_line_idsLínea de producciónmany2many
product_category_nameCategoría de productochar

related: product_id.categ_id.complete_name

product_idProductomany2one
product_uom_idUnidadmany2one
obligatoriocalculado, almacenado
production_idOrden de producciónmany2one

añadido por Fabricación (mrp)

quant_idCoger demany2one
quantityCantidadfloat
calculado, almacenado
quantity_product_uomCantidad en la unidad de medida del productofloat
calculado, almacenado
referenceReferenciachar

related: move_id.reference

removal_dateFecha de eliminacióndatetime
calculado, almacenado

añadido por Fecha de caducidad en productos (product_expiry)

result_package_dest_nameNombre del paquete de destinochar

related: result_package_id.dest_complete_name

result_package_idPaquete de destino

Si está establecido, las operaciones se empaquetan en este paquete

many2one
sale_pricePrecio de ventafloat
calculado

añadido por Entrega - Stock (stock_delivery)

scheduled_dateFecha programadadatetime

related: move_id.date

scrap_idDesecharmany2one

related: move_id.scrap_id

stateEstadoselection

related: move_id.state

trackingSeguimientoselection
solo lectura

related: product_id.tracking

use_expiration_dateUsar fecha de caducidadboolean

related: product_id.use_expiration_date

añadido por Fecha de caducidad en productos (product_expiry)

workorder_idOrden de trabajomany2one

añadido por Fabricación (mrp)

create_dateCreado eldatetime
solo lecturaautomático
create_uidCreado pormany2one
solo lecturaautomático
display_nameNombre mostradochar
solo lecturacalculadoautomático
idIDinteger
solo lecturaautomático
write_dateÚltima actualización eldatetime
solo lecturaautomático
write_uidÚltima actualización pormany2one
solo lecturaautomático

Relaciones

Modelos enlazados desde este modelo

Campos de otros modelos que apuntan aquí

Leer este modelo por la API

Ejemplo de llamada a la API JSON-2 de Odoo 19: lectura de los cinco primeros registros con campos reales del modelo. Sustituya la instancia, la base y la clave API por las suyas.

curl
curl -X POST "https://su-instancia.odoo.com/json/2/stock.move.line/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: su-base" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["product_id","company_id","date","location_dest_id","location_id"],"limit":5}'
Python (requests)
import requests

BASE_URL = "https://su-instancia.odoo.com/json/2"
headers = {"Authorization": f"bearer {API_KEY}", "X-Odoo-Database": "su-base"}

res = requests.post(
    f"{BASE_URL}/stock.move.line/search_read",
    headers=headers,
    json={"domain": [], "fields": ["product_id","company_id","date","location_dest_id","location_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())
  • El acceso a la API externa está reservado al plan Custom de Odoo.
  • XML-RPC y JSON-RPC se retirarán en Odoo 22 (otoño de 2028): use JSON-2.
  • Se aplican los permisos de acceso y las reglas de registro del usuario de la clave.

Citar esta herramienta

¿Escribe un tutorial, una documentación interna o una respuesta en un foro? Copie este enlace para dirigir a sus lectores a la ficha actualizada.

<a href="https://aidoo.ai/es/outils/explorateur-modeles-odoo/stock-move-line">stock.move.line (Odoo 19.0)</a>

Fuentes

Datos verificados el 23 de septiembre de 2026 · Odoo 19.0 Community

¿Tiene un proyecto Odoo o quiere aprovechar su ERP con la IA? Hablemos

Implantación, desarrollo de módulos, conexión de Claude o ChatGPT a sus datos: cuéntenos su contexto y le responderemos en 24 horas laborables.