product.category: campos, relaciones y API
El modelo product.category («Categoría de producto») es un modelo persistente declarado por el módulo Products & Pricelists y ampliado por 9 módulos más. Expone 54 campos, 36 de ellos declarados directamente en el modelo; 22 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 20.
Ficha de identidad
- Nombre técnico
product.category- Etiqueta
- Categoría de producto
- Tipo
- Persistente (models.Model)
- Tabla SQL
product_category- Módulo de origen
- Products & Pricelists (
product) - Ampliado por
- account, sale, delivery, point_of_sale, stock, stock_account, mrp_account, purchase, pos_stock
- Orden por defecto (_order)
parent_id desc, name asc- Campo mostrado (_rec_name)
complete_name- Hereda de (mixins)
- mail.threadpos.load.mixin
Campos del modelo
36 campos propios, 12 heredados de mixins y 6 campos automáticos del ORM. Haga clic en un nombre para obtener el enlace directo al campo.
54 de 54 campos mostrados
| Nombre técnico | Etiqueta | Tipo | Detalles |
|---|---|---|---|
| account_stock_variation_active | Stock Variation Account Active | boolean | related: añadido por Facturación ( |
| account_stock_variation_id | Stock Variation Account | many2one | related: añadido por Facturación ( |
| anglo_saxon_accounting | Utilizar contabilidad anglosajona Si se marca, el producto se valorará según el método contable anglosajón. | boolean | calculado añadido por WMS Accounting ( |
| child_id | Categorías hijas | one2many | inverso: |
| company_id | Compañía | many2one | |
| complete_name | Nombre completo | char | calculado |
| filter_for_stock_putaway_rule | stock.putaway.rule | boolean | añadido por Inventario ( |
| name | Nombre | char | obligatoriotraducible |
| packaging_reserve_method | Reservar embalajes Reserve Only Full Packagings: will not reserve partial packagings. If customer orders 2 pallets of 1000 units each and you only have 1600 in stock, then only 1000 will be reserved Reserve Partial Packagings: allow reserving partial packagings. If customer orders 2 pallets of 1000 units each and you only have 1600 in stock, then 1600 will be reserved | selection | Valores: añadido por Inventario ( |
| parent_id | Categoría padre | many2one | |
| parent_path | Ruta padre | char | |
| parent_route_ids | Rutas padre | many2many | calculado añadido por Inventario ( |
| product_count | N.° de productos El número de productos bajo esta categoría (No considera las categorías hijas) | integer | calculado |
| product_properties_definition | Propiedades del producto | properties_definition | |
| property_account_billed_not_received_active | Billed Not Received Account Active | boolean | related: añadido por Compra ( |
| property_account_billed_not_received_id | Billed Not Received Account Account holding the accrued value of the goods billed but not received yet. With perpetual valuation, it counterbalances the stock valuation account at closing. | many2one | depende de la empresa añadido por Compra ( |
| property_account_bills_to_receive_active | Bills to Receive Account Active | boolean | related: añadido por Compra ( |
| property_account_bills_to_receive_id | Bills to Receive Account Account holding the accrued value of the goods received but not billed yet. With perpetual valuation, it counterbalances the stock valuation account at closing. | many2one | depende de la empresa añadido por Compra ( |
| property_account_expense_categ_id | Cuenta de gastos El gasto se contabiliza cuando se valida una factura del proveedor, excepto en la contabilidad anglosajona con valoración perpetua del inventario, en cuyo caso el gasto (cuenta del coste de los bienes vendidos) se reconoce en la validación de la factura del cliente. | many2one | depende de la empresa añadido por Facturación ( |
| property_account_income_categ_id | Cuenta de ingresos Esta cuenta se utilizará al validar una factura de cliente. | many2one | depende de la empresa añadido por Facturación ( |
| property_account_invoiced_not_delivered_active | Invoiced Not Delivered Account Active | boolean | related: añadido por Ventas ( |
| property_account_invoiced_not_delivered_id | Invoiced Not Delivered Account Account holding the accrued value of the goods invoiced but not delivered yet. With perpetual valuation, it counterbalances the stock valuation account at closing. | many2one | depende de la empresa añadido por Ventas ( |
| property_account_invoices_to_issue_active | Invoices to be Issued Account Active | boolean | related: añadido por Ventas ( |
| property_account_invoices_to_issue_id | Invoices to be Issued Account Account holding the accrued value of the goods delivered but not invoiced yet. With perpetual valuation, it counterbalances the stock valuation account at closing. | many2one | depende de la empresa añadido por Ventas ( |
| property_cost_method | Método de coste Standard Price: The products are valued at their standard cost defined on the product. Average Cost (AVCO): The products are valued at weighted average cost. | selection | depende de la empresa Valores: añadido por Facturación ( |
| property_price_difference_account_active | Price Difference Account Active | boolean | related: añadido por Facturación ( |
| property_price_difference_account_id | Cuenta de diferencia de precio With perpetual valuation, this account will hold the price difference between the standard price and the bill price. | many2one | depende de la empresa añadido por Facturación ( |
| property_stock_account_production_cost_id | Cuenta de producción This account will be used as a valuation counterpart for both components and final products for manufacturing orders. If there are any workcenter/employee costs, this value will remain on the account once the production is completed. | many2one | depende de la empresa añadido por Accounting - MRP ( |
| property_stock_journal | Stock Journal When doing automated inventory valuation, this is the Accounting Journal in which entries will be automatically posted when stock moves are processed. | many2one | depende de la empresa añadido por Facturación ( |
| property_stock_valuation_account_active | Stock Valuation Account Active | boolean | related: añadido por Facturación ( |
| property_stock_valuation_account_id | Cuenta de valoración de stock When automated inventory valuation is enabled on a product, this account will hold the current value of the products. | many2one | depende de la empresa añadido por Facturación ( |
| property_valuation | Valoración del inventario Periodic: The accounting entries are suggested manually in the inventory valuation report. Perpetual: An accounting entry is automatically created to value the inventory when a product is billed or invoiced. | selection | depende de la empresa Valores: añadido por Facturación ( |
| putaway_rule_ids | Reglas de almacenamiento | one2many | inverso: añadido por Inventario ( |
| removal_strategy_id | Forzar estrategia de salida Set a specific removal strategy that will be used regardless of the source location for this product category. 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. FEFO: products/lots with the closest removal date will be moved out first (the availability of this method depends on the "Expiration Dates" setting). Least Packages: FIFO but with the least number of packages possible when there are several packages containing the same product. | many2one | añadido por Inventario ( |
| route_ids | Rutas | many2many | añadido por Inventario ( |
| total_route_ids | Todas de rutas | many2many | solo lecturacalculado añadido por Inventario ( |
| has_message | Tiene un mensaje | boolean | calculado heredado de mail.thread |
| message_attachment_count | Número de archivos adjuntos | integer | calculado heredado de mail.thread |
| message_follower_ids | Seguidores | one2many | inverso: heredado de mail.thread |
| message_has_error | Error de envío de mensaje Si está marcada, algunos mensajes tienen error de envío. | boolean | calculado heredado de mail.thread |
| message_has_error_counter | Número de errores Número de mensajes con error de envío | integer | calculado heredado de mail.thread |
| message_has_sms_error | Error de envío del SMS Si está marcada, algunos mensajes tienen error de envío. | boolean | calculado heredado de mail.thread |
| message_ids | Mensajes | one2many | inverso: heredado de mail.thread |
| message_is_follower | Es un seguidor | boolean | calculado heredado de mail.thread |
| message_needaction | Acción requerida Si está marcada, hay nuevos mensajes que requieren su atención. | boolean | calculado heredado de mail.thread |
| message_needaction_counter | Número de acciones Número de mensajes que requieren una acción | integer | calculado heredado de mail.thread |
| message_partner_ids | Seguidores (Contactos) | many2many | calculado heredado de mail.thread |
| rating_ids | Calificaciones | one2many | inverso: heredado de mail.thread |
| 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.account: account_stock_variation_id, property_account_billed_not_received_id, property_account_bills_to_receive_id, property_account_expense_categ_id, property_account_income_categ_id, property_account_invoiced_not_delivered_id, property_account_invoices_to_issue_id, property_price_difference_account_id, property_stock_account_production_cost_id, property_stock_valuation_account_id
- account.journal: property_stock_journal
- product.category: child_id, parent_id
- product.removal: removal_strategy_id
- res.company: company_id
- stock.putaway.rule: putaway_rule_ids
- stock.route: parent_route_ids, route_ids, total_route_ids
Campos de otros modelos que apuntan aquí
- account.analytic.applicability: product_categ_id
- account.analytic.distribution.model: product_categ_id
- account.analytic.line: product_category
- account.invoice.report: product_categ_id
- account.move.line: product_category_id
- loyalty.reward: discount_product_category_id
- loyalty.rule: product_category_id
- product.category: parent_id
- product.pricelist.item: categ_id
- product.template: categ_id
- purchase.report: category_id
- report.pos.order: product_categ_id
- sale.order.line: categ_id
- sale.report: categ_id
- stock.move: product_category_id
- stock.move.line: product_category_id
- stock.picking.type: wave_category_ids
- stock.putaway.rule: category_id
- stock.quant: product_categ_id
- stock.route: categ_ids
- stock.warehouse.orderpoint: product_category_id
- vendor.delay.report: category_id
Leer este modelo por la API
Ejemplo de llamada a la API JSON-2 de Odoo 20: 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/product.category/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: su-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["complete_name","name","account_stock_variation_id","company_id","parent_id"],"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}/product.category/search_read",
headers=headers,
json={"domain": [], "fields": ["complete_name","name","account_stock_variation_id","company_id","parent_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/product-category">product.category (Odoo 20.0)</a>Fuentes
- Código fuente del modelo en GitHub
- Documentación de Odoo 20: ORM API
- Documentación de Odoo 20: API externa JSON-2
Datos verificados el 25 de septiembre de 2026 · Odoo 20.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.