purchase.order.line: campos, relaciones y API
El modelo purchase.order.line («Línea de pedido de compra») es un modelo persistente declarado por el módulo Compra y ampliado por 10 módulos más. Expone 67 campos, 58 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
purchase.order.line- Etiqueta
- Línea de pedido de compra
- Tipo
- Persistente (models.Model)
- Tabla SQL
purchase_order_line- Módulo de origen
- Compra (
purchase) - Ampliado por
- purchase_stock, stock_landed_costs, sale_purchase, sale_purchase_stock, stock_dropshipping, purchase_mrp, project_purchase, purchase_product_matrix, purchase_requisition, purchase_requisition_stock
- Orden por defecto (_order)
order_id, sequence, id- Hereda de (mixins)
- analytic.mixin
Campos del modelo
58 campos propios, 3 heredados de mixins y 6 campos automáticos del ORM. Haga clic en un nombre para obtener el enlace directo al campo.
67 de 67 campos mostrados
| Nombre técnico | Etiqueta | Tipo | Detalles |
|---|---|---|---|
| allowed_uom_ids | UdM permitida | many2many→ uom.uom | calculado |
| amount_to_invoice_at_date | Importe | float | calculado |
| company_currency_id | Moneda de la empresa | many2one | related: añadido por Acuerdos de compra ( |
| company_id | Compañía | many2one | solo lectura related: |
| currency_id | Moneda | many2one | related: |
| date_approve | Fecha de confirmación | datetime | solo lectura related: |
| date_order | Fecha de pedido | datetime | solo lectura related: |
| date_planned | Llegada prevista Fecha de entrega esperada del proveedor. Esta fecha, respectivamente, tiene como valor por defecto el tiempo de entrega de la lista de precios del proveedor y luego la fecha actual. | datetime | calculado, almacenado |
| discount | Descuento (%) | float | calculado, almacenado |
| display_type | Tipo de pantalla Campo técnico para propósitos de usabilidad | selection | Valores: |
| forecasted_issue | Salida prevista | boolean | calculado añadido por Stock de Compra ( |
| invoice_lines | Líneas de factura | one2many | solo lectura inverso: |
| is_configurable_product | ¿El producto es configurable? | boolean | related: añadido por Matriz de Compra ( |
| is_downpayment | Es un anticipo | boolean | |
| is_storable | Is Storable | boolean | related: añadido por Stock de Compra ( |
| location_final_id | Ubicación del abastecimiento | many2one | añadido por Stock de Compra ( |
| move_dest_ids | Movimiento de salida alt | many2many | añadido por Stock de Compra ( |
| move_ids | Reserva | one2many | solo lectura inverso: añadido por Stock de Compra ( |
| name | Descripción | text | obligatoriocalculado, almacenado |
| on_time_rate_perc | Entrega a tiempo | float | related: añadido por Stock de Solicitud de compra ( |
| order_id | Referencia del pedido | many2one | obligatorio |
| orderpoint_id | Punto de orden | many2one | añadido por Stock de Compra ( |
| parent_id | Línea de la sección principal | many2one | calculado |
| partner_id | Contacto | many2one | solo lectura related: |
| price_subtotal | Subtotal | monetary | calculado, almacenado |
| price_tax | Impuesto | float | calculado, almacenado |
| price_total | Total | monetary | calculado, almacenado |
| price_total_cc | Subtotal de la compañía | monetary | calculado, almacenado añadido por Acuerdos de compra ( |
| price_unit | Precio unitario | float | obligatoriocalculado, almacenado |
| price_unit_discounted | Precio unitario (descontado) | float | calculado |
| price_unit_product_uom | Precio unitario (UdM del producto) El precio de una unidad según la unidad de medida del producto | float | calculado |
| product_description_variants | Descripción personalizada | char | añadido por Stock de Compra ( |
| product_id | Producto | many2one | |
| product_no_variant_attribute_value_ids | Valores de atributos del producto que no crean variantes | many2many | |
| product_qty | Cantidad | float | obligatorio |
| product_template_attribute_value_ids | Valor del atributo de la plantilla de producto | many2many | solo lectura related: |
| product_template_id | Plantilla de producto | many2one | related: añadido por Matriz de Compra ( |
| product_type | Tipo de producto | selection | solo lectura related: |
| product_uom_id | Unidad | many2one→ uom.uom | |
| product_uom_qty | Cantidad total | float | calculado, almacenado |
| propagate_cancel | Propagar cancelación | boolean | añadido por Stock de Compra ( |
| purchase_line_warn_msg | Mensaje de advertencia de línea de compra | text | calculado |
| qty_invoiced | Ctd. facturada | float | calculado, almacenado |
| qty_invoiced_at_date | Facturado | float | calculado |
| qty_received | Ctd. recibida | float | calculado, almacenado |
| qty_received_at_date | Recibido | float | calculado |
| qty_received_manual | Ctd. recibida manual | float | |
| qty_received_method | Método de cantidad recibida According to product configuration, the received quantity can be automatically computed by mechanism: - Manual: the quantity is set manually on the line - Stock Moves: the quantity comes from confirmed pickings | selection | calculado, almacenado Valores: |
| qty_to_invoice | Cantidad a facturar | float | solo lecturacalculado, almacenado |
| sale_line_id | Elemento original de venta | many2one | añadido por Venta y compra ( |
| sale_order_id | Pedido de venta | many2one | related: añadido por Venta y compra ( |
| selected_seller_id | Vendedor seleccionado Campo técnico para obtener la lista de precios del proveedor utilizados para generar esta línea. | many2one | calculado |
| sequence | Secuencia | integer | |
| state | Estado | selection | related: |
| tax_calculation_rounding_method | Método de redondeo al calcular impuestos | selection | solo lectura related: |
| tax_ids | Impuestos | many2many | |
| technical_price_unit | Precio unitario técnico Campo técnico para el cálculo de precios | float | |
| translated_product_name | Nombre del producto traducido | text | calculado |
| analytic_distribution | Distribución analítica | json | calculado, almacenado heredado de analytic.mixin |
| analytic_precision | Precisión analítica | integer | heredado de analytic.mixin |
| distribution_analytic_account_ids | Cuenta analítica de distribución | many2many | calculado heredado de analytic.mixin |
| create_date | Creado el | datetime | solo lecturaautomático |
| create_uid | Creado por | many2one | solo lecturaautomático |
| display_name | Nombre mostrado | char | solo lecturacalculadoautomático |
| id | ID | integer | solo lecturaautomático |
| write_date | Última actualización el | datetime | solo lecturaautomático |
| write_uid | Última actualización por | many2one | solo lecturaautomático |
Relaciones
Modelos enlazados desde este modelo
- account.move.line: invoice_lines
- account.tax: tax_ids
- product.product: product_id
- product.supplierinfo: selected_seller_id
- product.template: product_template_id
- product.template.attribute.value: product_no_variant_attribute_value_ids, product_template_attribute_value_ids
- purchase.order: order_id
- purchase.order.line: parent_id
- res.company: company_id
- res.currency: company_currency_id, currency_id
- res.partner: partner_id
- sale.order: sale_order_id
- sale.order.line: sale_line_id
- stock.location: location_final_id
- stock.move: move_dest_ids, move_ids
- stock.warehouse.orderpoint: orderpoint_id
- uom.uom: allowed_uom_ids, product_uom_id
Campos de otros modelos que apuntan aquí
- account.move.line: purchase_line_id
- account.tax: purchase_order_line_ids
- purchase.bill.line.match: pol_id
- purchase.order.line: parent_id
- stock.move: created_purchase_line_ids, purchase_line_id
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 -X POST "https://su-instancia.odoo.com/json/2/purchase.order.line/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: su-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["name","order_id","price_unit","product_qty","state"],"limit":5}'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}/purchase.order.line/search_read",
headers=headers,
json={"domain": [], "fields": ["name","order_id","price_unit","product_qty","state"], "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/purchase-order-line">purchase.order.line (Odoo 19.0)</a>Fuentes
- Código fuente del modelo en GitHub
- Documentación de Odoo 19: ORM API
- Documentación de Odoo 19: API externa JSON-2
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.