account.move.line: campos, relaciones y API
El modelo account.move.line («Apunte contable») es un modelo persistente declarado por el módulo Facturación y ampliado por 23 módulos más. Expone 129 campos, 119 de ellos declarados directamente en el modelo; 17 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
account.move.line- Etiqueta
- Apunte contable
- Tipo
- Persistente (models.Model)
- Tabla SQL
account_move_line- Módulo de origen
- Facturación (
account) - Ampliado por
- account_fleet, sale, sale_project, hr_expense, point_of_sale, stock_account, mrp_account, sale_stock, purchase, purchase_stock, stock_landed_costs, repair, stock_dropshipping, mrp_subcontracting_purchase, pos_discount, pos_sale, pos_loyalty, pos_stock, sale_expense, project_sale_expense, sale_expense_margin, sale_loyalty, sale_timesheet
- Orden por defecto (_order)
date desc, move_name desc, id
Campos del modelo
119 campos propios, 4 heredados de mixins y 6 campos automáticos del ORM. Haga clic en un nombre para obtener el enlace directo al campo.
129 de 129 campos mostrados
| Nombre técnico | Etiqueta | Tipo | Detalles |
|---|---|---|---|
| account_code | Account Code | char | related: |
| account_id | Cuenta | many2one | calculado, almacenado |
| account_internal_group | Account Internal Group | selection | related: |
| account_name | Nombre de la cuenta | char | related: |
| account_root_id | Raíz de cuenta | many2one | related: |
| account_type | Tipo interno | selection | related: |
| allowed_uom_ids | UdM permitida | many2many→ uom.uom | calculado |
| amount_currency | Importe en moneda La cantidad expresada en una moneda alternativa si se trata de un asiento multimoneda. | monetary | calculado, almacenado |
| amount_residual | Importe residual El importe residual en un apunte contable expresado en la moneda de la compañía. | monetary | calculado, almacenado |
| amount_residual_currency | Importe residual en moneda El importe residual en un apunte contable expresado en su moneda (probablemente diferente de la utilizada por la compañía). | monetary | calculado, almacenado |
| analytic_distribution | Distribución analítica | json | |
| analytic_line_ids | Líneas analíticas | one2many | inverso: |
| balance | Saldo | monetary | calculado, almacenado |
| cogs_move_ids | COGS stock moves Inventory moves used to compute COGS values. | many2many | calculado añadido por WMS Accounting ( |
| cogs_origin_id | Cogs Origin | many2one | |
| collapse_composition | Ocultar composición Si se selecciona, las líneas que aparecen debajo de esta sección no se mostrarán en los informes ni en el portal. | boolean | |
| collapse_prices | Ocultar precios Si se selecciona, los precios de las líneas que se encuentran debajo de esta sección no se mostrarán en los informes ni en el portal. | boolean | |
| commercial_partner_country | País del socio comercial | many2one | related: |
| company_currency_id | Moneda de la empresa | many2one | solo lectura related: |
| company_id | Compañía | many2one | solo lectura related: |
| consolidation_balance | Converted balance | monetary | calculado |
| consolidation_credit | Converted credit | monetary | calculado |
| consolidation_debit | Converted debit | monetary | calculado |
| count_reconciled_lines | Count Reconciled Lines | integer | calculado |
| count_reconciled_lines_excluding_exchange_diff | Count Reconciled Lines Excluding Exchange Diff | integer | calculado |
| credit | Haber | monetary | calculado, almacenado |
| cumulated_balance | Saldo acumulado Cumulated balance for the account. | monetary | calculado |
| currency_id | Moneda | many2one | obligatoriocalculado, almacenado |
| currency_rate | Tipo de cambio Tipo de cambio de mondea de la compañía a la moneda del documento. | float | calculado |
| date | Fecha | date | related: |
| date_maturity | Fecha de vencimiento Este campo se utiliza en asientos contables por pagar y por cobrar. Puede establecer la fecha límite para el pago de esta línea. | date | |
| debit | Debe | monetary | calculado, almacenado |
| deductible_percentage | Professional Expense Deductibility Percentage The share of this expense used for business purposes. VAT is only deductible on this portion; the rest is treated as a private expense. Use this for mixed-use costs (e.g. a home office, a car used partly for personal trips). | float | |
| discount | Descuento (%) | float | |
| discount_allocation_dirty | Asignación de descuento Dirty | boolean | calculado |
| discount_allocation_key | Clave de la asignación de descuento | json | calculado |
| discount_allocation_needed | Asignación de descuentos necesaria | json | calculado |
| discount_amount_currency | Importe de descuento en moneda | monetary | |
| discount_balance | Saldo de descuento | monetary | |
| discount_date | Fecha de descuento La última fecha en la que se debe pagar el importe descontado para que se conceda el descuento por pago anticipado | date | solo lectura |
| display_type | Tipo de pantalla | selection | obligatoriocalculado, almacenado Valores: |
| document_tax_mode | Modo de impuestos del documento | selection | related: |
| epd_dirty | Descuento por pago anticipado Dirty | boolean | calculado |
| epd_key | Clave de descuento por pago anticipado | json | calculado |
| epd_needed | Descuento por pago anticipado necesario | json | calculado |
| exchange_move_ids | Movimiento de intercambio | many2many | calculado |
| expense_id | Gasto | many2one | añadido por Gastos ( |
| extra_tax_data | Datos adicionales sobre impuestos | json | |
| first_reconciled_lines_excluding_exchange_diff_id | First Reconciled Lines Excluding Exchange Diff | many2one | calculado |
| first_reconciled_lines_id | First Reconciled Lines | many2one | calculado |
| fiscal_position_id | Posición fiscal | many2one | related: |
| full_reconcile_id | Conciliación | many2one | solo lectura |
| group_tax_id | Grupo de impuestos del originador | many2one | |
| has_invalid_analytics | Tiene una distribución analítica que no es válida | boolean | calculado |
| invoice_date | Fecha de factura | date | related: |
| is_account_reconcile | Is Account Reconcile | boolean | related: |
| is_downpayment | Es un anticipo | boolean | añadido por Ventas ( |
| is_imported | Importado | boolean | |
| is_landed_costs_line | Es una línea de costes en destino | boolean | añadido por WMS Landed Costs ( |
| is_refund | Es un reembolso | boolean | calculado |
| is_same_currency | Es la misma moneda | boolean | calculado |
| is_storno | Contabilidad Storno de la compañía Campo de utilidad para expresar si el apunte contable se somete a la contabilidad Storno. | boolean | calculado, almacenado |
| journal_group_id | Libro mayor | many2one | related: |
| journal_id | Diario | many2one | related: |
| label | Etiqueta | text | calculado |
| matched_credit_ids | Créditos conciliados Apuntes contables de crédito que coincidan con este apunte contable. | one2many | solo lectura inverso: |
| matched_debit_ids | Débitos conciliados Apuntes contables de débito que coinciden con este apunte contable. | one2many | solo lectura inverso: |
| matching_number | Conciliación # Número coincidente para esta línea, 'P' si solo se concilia parcialmente, o el nombre de la conciliación completa si existe. | char | |
| move_id | Asiento contable | many2one | obligatoriosolo lectura |
| move_name | Número | char | related: |
| move_type | Tipo de movimiento | selection | related: |
| name | Descripción | text | calculado, almacenado |
| need_vehicle | Necesita vehículo | boolean | calculado añadido por Accounting/Fleet bridge ( |
| no_followup | No Reminder Exclude this journal item from Reminder reports. | boolean | calculado, almacenado |
| open_on | Unreconciled On Limitar la fecha para los campos residuales (en la fecha). | date | |
| parent_id | Línea de la sección principal | many2one | calculado |
| parent_state | Parent State | selection | related: |
| partner_id | Contacto | many2one | calculado, almacenado |
| payment_date | Siguiente fecha de pago | date | calculado |
| payment_id | Pago del originador El pago que creó este asiento | many2one | related: |
| pos_order_line_id | POS Order Line POS order line that generated this invoice line. | many2one | añadido por Punto de venta ( |
| price_subtotal | Subtotal | monetary | calculado, almacenado |
| price_total | Total | monetary | calculado, almacenado |
| price_unit | Precio unitario | float | calculado, almacenado |
| product_category_id | Categoría de producto | many2one | related: |
| product_id | Producto | many2one | |
| product_type | Tipo de producto | selection | solo lectura related: añadido por WMS Landed Costs ( |
| product_uom_id | Unidad | many2one→ uom.uom | calculado, almacenado |
| purchase_line_id | Línea de pedido de compra | many2one | añadido por Compra ( |
| purchase_line_warn_msg | Mensaje de advertencia de línea de compra | text | calculado añadido por Compra ( |
| purchase_matching_issue_msg | Purchase Matching Issue Msg | char | calculado añadido por Compra ( |
| purchase_order_id | Pedido de compra | many2one | solo lectura related: añadido por Compra ( |
| quantity | Cantidad La cantidad opcional expresada en el apunte, por ejemplo: número de productos vendidos. Esta cantidad no supone un requisito legal pero es útil para algunos informes. | float | calculado, almacenado |
| reconcile_model_id | Modelo de conciliación | many2one | solo lectura |
| reconciled | Conciliado | boolean | calculado, almacenado |
| reconciled_lines_excluding_exchange_diff_ids | Líneas conciliadas sin incluir la diferencia de cambio | many2many | calculado |
| reconciled_lines_ids | Líneas conciliadas | many2many | calculado |
| ref | Ref | char | related: |
| repair_order_id | Orden de reparación | many2one | related: añadido por Reparaciones ( |
| repair_service_line_id | Repair Service Line | many2one | añadido por Reparaciones ( |
| residual_at_date | Residual (a la fecha) El importe residual (a la fecha) de un apunte contable, expresado en la moneda de la empresa. | monetary | calculado |
| residual_currency_at_date | Residual en moneda (hasta la fecha) El importe residual (a fecha) de un apunte contable, expresado en su moneda. | monetary | calculado |
| sale_line_ids | Líneas de pedido de venta | many2many | solo lectura añadido por Ventas ( |
| sale_line_warn_msg | Mensaje de advertencia de la línea de venta | text | calculado añadido por Ventas ( |
| search_account_id | Buscar cuenta | many2one | |
| sequence | Secuencia | integer | calculado, almacenado |
| statement_id | Extracto El extracto bancario utilizado para la conciliación bancaria | many2one | related: |
| statement_line_id | Línea de extracto de cuenta del originador La línea del extracto que creó este asiento | many2one | related: |
| stock_move_id | Movimiento de stock | many2one | añadido por WMS Accounting ( |
| tax_base_amount | Importe base | monetary | solo lectura |
| tax_calculation_rounding_method | Método de redondeo al calcular impuestos | selection | solo lectura related: |
| tax_group_id | Grupo de impuestos del originador | many2one | related: |
| tax_ids | Impuestos | many2many | calculado, almacenado |
| tax_line_id | Impuesto del originador Indica que este apunte contable es una línea de impuesto | many2one | related: |
| tax_repartition_line_id | Línea de distribución de impuestos del originador Línea de distribución de impuestos que provocó la creación de esta línea de movimiento, en su caso | many2one | solo lectura |
| tax_tag_ids | Etiquetas Etiquetas asignadas a esta línea por el impuesto que la crea, si corresponde. Determina su impacto en los informes financieros. | many2many | |
| term_key | Clave de término | json | calculado |
| vehicle_id | Vehículo | many2one | añadido por Accounting/Fleet bridge ( |
| vehicle_log_service_ids | Vehicle Log Service | one2many | inverso: añadido por Accounting/Fleet bridge ( |
| analytic_precision | Precisión analítica | integer | heredado de analytic.mixin |
| consolidation_currency_id | Moneda de consolidación | many2one | calculado heredado de res.currency.rate.consolidation.mixin |
| consolidation_rate | Tasa | float | calculado heredado de res.currency.rate.consolidation.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.account: account_id, search_account_id
- account.account.tag: tax_tag_ids
- account.analytic.line: analytic_line_ids
- account.bank.statement: statement_id
- account.bank.statement.line: statement_line_id
- account.fiscal.position: fiscal_position_id
- account.full.reconcile: full_reconcile_id
- account.journal: journal_id
- account.journal.group: journal_group_id
- account.move: exchange_move_ids, move_id
- account.move.line: cogs_origin_id, first_reconciled_lines_excluding_exchange_diff_id, first_reconciled_lines_id, parent_id, reconciled_lines_excluding_exchange_diff_ids, reconciled_lines_ids
- account.partial.reconcile: matched_credit_ids, matched_debit_ids
- account.payment: payment_id
- account.reconcile.model: reconcile_model_id
- account.root: account_root_id
- account.tax: group_tax_id, tax_ids, tax_line_id
- account.tax.group: tax_group_id
- account.tax.repartition.line: tax_repartition_line_id
- fleet.vehicle: vehicle_id
- fleet.vehicle.log.services: vehicle_log_service_ids
- hr.expense: expense_id
- pos.order.line: pos_order_line_id
- product.category: product_category_id
- product.product: product_id
- purchase.order: purchase_order_id
- purchase.order.line: purchase_line_id
- repair.order: repair_order_id
- repair.service.line: repair_service_line_id
- res.company: company_id
- res.country: commercial_partner_country
- res.currency: company_currency_id, currency_id
- res.partner: partner_id
- sale.order.line: sale_line_ids
- stock.move: cogs_move_ids, stock_move_id
- uom.uom: allowed_uom_ids, product_uom_id
Campos de otros modelos que apuntan aquí
- account.analytic.line: move_line_id
- account.automatic.entry.wizard: move_line_ids
- account.move.line: cogs_origin_id, first_reconciled_lines_excluding_exchange_diff_id, first_reconciled_lines_id, parent_id, reconciled_lines_excluding_exchange_diff_ids, reconciled_lines_ids
- account.partial.reconcile: credit_move_id, debit_move_id
- account.payment.register: line_ids
- account.tax: account_move_line_ids
- fleet.vehicle.log.services: account_move_line_id
- mrp.workcenter.productivity: account_move_line_id
- purchase.bill.line.match: aml_id
- sale.order.line: invoice_lines
- stock.move: cogs_aml_ids
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/account.move.line/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: su-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["name","currency_id","display_type","move_id","account_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}/account.move.line/search_read",
headers=headers,
json={"domain": [], "fields": ["name","currency_id","display_type","move_id","account_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/account-move-line">account.move.line (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.