Saltar al contenido principal
Versión: Tryton 8.0 (LTS)

account_invoice

Tryton 8.0 · Referencia generada desde el código oficial

Esta página combina orientación editorial con evidencia extraída de la rama oficial indicada. Pruebe siempre el flujo con sus permisos y configuración.

Propósito

El módulo account_invoice incorpora o amplía funciones relacionadas con account invoice. Su alcance real se determina por los modelos, acciones y dependencias documentados a continuación; no debe activarse únicamente por su nombre.

Descripción oficial de la rama (idioma original)

The Account Invoice Module adds the concept of invoicing to Tryton. It allows the creation of customer and supplier invoices, and can handle the payment terms related to the invoices and show when they have been paid.

El análisis encontró 8 archivos Python, 54 archivos XML, 51 vistas, 46 acciones, 8 menús y 1 informes.

Guía funcional para el usuario

A quién le sirve

Este módulo interesa a las personas responsables de los procesos relacionados con account invoice, a quienes configuran la compañía y a quienes revisan sus resultados. Los administradores deben participar cuando se activen dependencias, permisos o secuencias.

Qué podrá hacer

Al finalizar la configuración podrá reconocer los registros que aporta account_invoice, ejecutar sus acciones con el estado correcto, producir sus informes y comprender qué información termina compartiendo con otros módulos.

Requisitos y preparación

Antes de activarlo confirme la compañía, moneda, usuarios y grupos aplicables. Instale y configure primero sus dependencias obligatorias. Si existen datos reales, ensaye la activación y actualización sobre una copia restaurada.

Active primero las dependencias, revise la configuración de la compañía y ensaye el flujo completo antes de usarlo en producción.

Dependencias obligatorias

  • account — debe estar instalado y configurado antes de probar este módulo.
  • account_product — debe estar instalado y configurado antes de probar este módulo.
  • company — debe estar instalado y configurado antes de probar este módulo.
  • currency — debe estar instalado y configurado antes de probar este módulo.
  • ir — debe estar instalado y configurado antes de probar este módulo.
  • party — debe estar instalado y configurado antes de probar este módulo.
  • product — debe estar instalado y configurado antes de probar este módulo.
  • res — debe estar instalado y configurado antes de probar este módulo.

Integraciones opcionales

  • bank — habilita una integración adicional; pruebe la combinación explícitamente.

Configuración inicial recomendada

  • Active el módulo y vuelva a iniciar la sesión para cargar menús y permisos.
  • Revise las nuevas opciones de configuración de compañía y los valores por defecto.
  • Asigne grupos a usuarios de prueba aplicando mínimo privilegio.
  • Cree datos maestros pequeños y verificables antes de importar información masiva.
  • Ejecute un caso completo desde borrador hasta su estado final y revise los registros relacionados.

Objetos y conceptos del módulo

  • account.configuration: agrupa 3 modelo(s), entre ellos account.configuration, account.configuration.default_payment_term, account.configuration.payment_reference. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • account.fiscalyear: agrupa 3 modelo(s), entre ellos account.fiscalyear, account.fiscalyear.invoice_sequence, account.fiscalyear.renew. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • account.invoice: agrupa 25 modelo(s), entre ellos account.invoice, account.invoice.alternative_payee, account.invoice.credit, account.invoice.credit.start, account.invoice.edocument. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • account.invoice-account: agrupa 1 modelo(s), entre ellos account.invoice-account.move.line. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • account.invoice-additional-account: agrupa 1 modelo(s), entre ellos account.invoice-additional-account.move. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • account.move: agrupa 6 modelo(s), entre ellos account.move, account.move.cancel, account.move.line, account.move.line.delegate, account.move.line.reschedule. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • account.period: agrupa 1 modelo(s), entre ellos account.period. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • company.company: agrupa 1 modelo(s), entre ellos company.company. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • party.address: agrupa 1 modelo(s), entre ellos party.address. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • party.contact_mechanism: agrupa 1 modelo(s), entre ellos party.contact_mechanism. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • party.erase: agrupa 1 modelo(s), entre ellos party.erase. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • party.party: agrupa 2 modelo(s), entre ellos party.party, party.party.payment_term. Estos registros forman la información que el usuario consulta o modifica durante el proceso.
  • party.replace: agrupa 1 modelo(s), entre ellos party.replace. Estos registros forman la información que el usuario consulta o modifica durante el proceso.

Flujo de trabajo habitual

  1. Seleccione la compañía y fecha correctas antes de crear el documento.
  2. Complete primero los datos maestros y luego las líneas o detalles.
  3. Use los botones del formulario para cambiar de estado; guardar no equivale a validar o contabilizar.
  4. Revise advertencias, totales, documentos relacionados y trazabilidad.
  5. Genere el informe y compare su contenido con el registro antes de entregarlo.

Acciones, estados y asistentes

  • cancel — acción o transición que inicia cancel. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • delegate_lines_to_pay — acción o transición que inicia delegate lines to pay. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • draft — acción o transición que inicia draft. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • pay — acción o transición que inicia pay. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • post — acción o transición que inicia post. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • process — acción o transición que inicia process. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • reschedule_lines_to_pay — acción o transición que inicia reschedule lines to pay. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • validate_invoice — acción o transición que inicia validate invoice. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • cancelled — acción o transición que inicia cancelled. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • closed — acción o transición que inicia closed. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • paid — acción o transición que inicia paid. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • posted — acción o transición que inicia posted. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • validated — acción o transición que inicia validated. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • account.invoice.credit.start — asistente que reúne datos y ejecuta account › invoice › credit › start. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • account.invoice.edocument — asistente que reúne datos y ejecuta account › invoice › edocument. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • account.invoice.lines_to_pay.delegate — asistente que reúne datos y ejecuta account › invoice › lines to pay › delegate. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • account.invoice.lines_to_pay.reschedule — asistente que reúne datos y ejecuta account › invoice › lines to pay › reschedule. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • account.invoice.pay — asistente que reúne datos y ejecuta account › invoice › pay. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • account.invoice.payment_term.test — asistente que reúne datos y ejecuta account › invoice › payment term › test. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.
  • account.invoice.refresh_invoice_report — asistente que reúne datos y ejecuta account › invoice › refresh invoice report. Verifique permisos, estado actual y registros relacionados antes de ejecutarla.

Controles antes de producción

  • Defina quién crea, revisa, confirma, cancela y consulta.
  • Pruebe períodos cerrados, usuarios sin permisos y datos incompletos.
  • Verifique numeración, moneda, redondeo y zona horaria cuando correspondan.
  • Documente cómo corregir un error sin editar directamente la base de datos.
  • Incluya sus tablas y archivos en el procedimiento de copia y restauración.

Diagnóstico y resolución de problemas

  • Si no aparece el menú, compruebe activación, actualización de la lista de módulos, grupos y nueva sesión.
  • Si un campo no acepta un valor, revise su dominio, compañía, estado y dependencias configuradas.
  • Si un botón está oculto o deshabilitado, revise permisos y transición válida; no modifique el estado con SQL.
  • Si los resultados no coinciden, reproduzca un caso mínimo y compare registros relacionados antes y después.
  • Conserve el traceback completo, versión, módulos activos y datos mínimos para diagnosticar un error.

Guía para desarrolladores

Arquitectura y puntos de extensión

El paquete contiene 64 clases Python y declara o extiende 47 modelos. Utiliza Binary, Boolean, Char, Date, DateTime, Float, Function, Integer, Many2Many, Many2One, MultiValue, Numeric, One2Many, Reference, Selection, Text. Los desarrolladores deben localizar primero si una clase crea un modelo nuevo o usa PoolMeta para extender uno existente, conservar las llamadas a super() y no duplicar reglas disponibles en las dependencias.

Modelos registrados o extendidos

  • account.configuration
  • account.configuration.default_payment_term
  • account.configuration.payment_reference
  • account.fiscalyear
  • account.fiscalyear.invoice_sequence
  • account.fiscalyear.renew
  • account.invoice
  • account.invoice-account.move.line
  • account.invoice-additional-account.move
  • account.invoice.alternative_payee
  • account.invoice.credit
  • account.invoice.credit.start
  • account.invoice.edocument
  • account.invoice.edocument.result
  • account.invoice.edocument.start
  • account.invoice.line
  • account.invoice.line-account.tax
  • account.invoice.lines_to_pay.delegate
  • account.invoice.lines_to_pay.reschedule
  • account.invoice.pay
  • account.invoice.pay.ask
  • account.invoice.pay.start
  • account.invoice.payment.mean
  • account.invoice.payment.mean.rule
  • account.invoice.payment.method
  • account.invoice.payment_term
  • account.invoice.payment_term.line
  • account.invoice.payment_term.line.delta
  • account.invoice.payment_term.test
  • account.invoice.payment_term.test.result
  • account.invoice.refresh_invoice_report
  • account.invoice.report.revision
  • account.invoice.tax
  • account.move
  • account.move.cancel
  • account.move.line
  • account.move.line.delegate
  • account.move.line.reschedule
  • account.move.reconciliation
  • account.period
  • company.company
  • party.address
  • party.contact_mechanism
  • party.erase
  • party.party
  • party.party.payment_term
  • party.replace

Tipos de campos utilizados

  • Binary
  • Boolean
  • Char
  • Date
  • DateTime
  • Float
  • Function
  • Integer
  • Many2Many
  • Many2One
  • MultiValue
  • Numeric
  • One2Many
  • Reference
  • Selection
  • Text

Clases y métodos públicos detectados

Clases: Address, AlternativePayee, CancelInvoiceMoveWarning, CancelMoves, Company, Configuration, ConfigurationDefaultPaymentTerm, ConfigurationPaymentReference, ContactMechanism, CreditInvoice, CreditInvoiceStart, DelegateLines, DelegateLinesToPay, Erase, FiscalYear, Invoice, InvoiceAdditionalMove, InvoiceEdocument, InvoiceEdocumentResult, InvoiceEdocumentStart, InvoiceFutureWarning, InvoiceLine, InvoiceLineTax, InvoiceLineValidationError, InvoiceNumberError, InvoicePaymentLine, InvoicePaymentTermDateWarning, InvoiceReport, InvoiceReportMixin, InvoiceReportRevision, InvoiceSequence, InvoiceSimilarWarning, InvoiceTax, InvoiceTaxValidationError, InvoiceTaxesWarning, InvoiceValidationError, Move, MoveLine, Party, PartyPaymentTerm, PayInvoice, PayInvoiceAsk, PayInvoiceError, PayInvoiceStart, PaymentMean, PaymentMeanRule, PaymentMeanRule_Bank, PaymentMean_Bank, PaymentMethod, PaymentTerm, PaymentTermComputeError, PaymentTermLine, PaymentTermLineRelativeDelta, PaymentTermValidationError, Period, Reconciliation, RefreshInvoiceReport, RenewFiscalYear, Replace, RescheduleLines, RescheduleLinesToPay, TestPaymentTerm, TestPaymentTermView, TestPaymentTermViewResult

Métodos: add_payment_lines(), cancel(), chat_language(), check_erase_company(), check_modification(), check_payment_lines(), check_ratio_and_divisor(), check_remainder(), check_source(), check_supplier_payment_reference(), close(), compute(), compute_fields(), copy(), create_fiscalyear(), create_invoice_report_revision(), credit(), default_amount(), default_ask(), default_base(), default_cancel_invoice_out(), default_company(), default_currency(), default_customer_payment_reference_number(), default_customer_payment_term(), default_date(), default_days(), default_invoice_sequences(), default_invoice_state(), default_manual(), default_months(), default_purchase_taxes_expense(), default_relativedeltas(), default_result(), default_start(), default_state(), default_taxes_deductible_rate(), default_test(), default_type(), default_weeks(), delegate_lines(), delegate_lines_to_pay(), do_credit(), do_print_(), do_start(), draft(), execute(), fields_to_replace(), fiscalyear_defaults(), format_customer_payment_reference(), from_rule(), get(), get_allow_cancel(), get_amount(), get_amount_to_pay(), get_context(), get_customer_payment_reference(), get_customer_payment_references(), get_date(), get_filename(), get_has_payment_method(), get_has_report_cache(), get_instruments(), get_invoice(), get_invoice_payment(), get_invoice_states(), get_invoice_taxes(), get_invoice_types(), get_lines_to_pay(), get_move(), get_move_lines(), get_origin(), get_origin_invoices(), get_origins(), get_rec_name(), get_reconcile_lines_for_amount(), get_reconciled(), get_reconciliation_lines(), get_sequence_number(), get_tax_identifier(), get_templates(), get_type_name(), get_value(), index_set_field(), invoice_report_versioned(), invoice_sequence_fields(), is_modifiable(), multivalue_model(), on_change_account(), on_change_accounting_date(), on_change_base(), on_change_company(), on_change_divisor(), on_change_invoice(), on_change_invoice_date(), on_change_lines(), on_change_party(), on_change_product(), on_change_ratio(), on_change_tax()

Mapa del código

Se detectaron 8 archivos Python, 54 XML y 0 archivos explícitos de acceso. Los XML conectan modelos con vistas, menús, acciones e informes; los CSV de acceso establecen permisos iniciales.

  • __init__.py
  • account.py
  • account.xml
  • company.py
  • company.xml
  • doc/conf.py
  • exceptions.py
  • invoice.py
  • invoice.xml
  • message.xml
  • party.py
  • party.xml
  • payment_term.py
  • payment_term.xml
  • view/address_form.xml
  • view/address_tree.xml
  • view/address_tree_sequence.xml
  • view/company_form.xml
  • view/configuration_form.xml
  • view/contact_mechanism_form.xml
  • view/contact_mechanism_tree.xml
  • view/contact_mechanism_tree_sequence.xml
  • view/credit_start_form.xml
  • view/edocument_result_form.xml
  • view/edocument_start_form.xml
  • view/fiscalyear_form.xml
  • view/invoice_form.xml
  • view/invoice_line_form.xml
  • view/invoice_line_tree.xml
  • view/invoice_line_tree_sequence.xml
  • view/invoice_payment_mean_form.xml
  • view/invoice_payment_mean_list.xml
  • view/invoice_payment_mean_rule_form.xml
  • view/invoice_payment_mean_rule_list.xml
  • view/invoice_report_revision_form.xml
  • view/invoice_report_revision_list.xml
  • view/invoice_sequence_form.xml
  • view/invoice_sequence_list.xml
  • view/invoice_sequence_list_sequence.xml
  • view/invoice_tax_form.xml
  • view/invoice_tax_tree.xml
  • view/invoice_tax_tree_sequence.xml
  • view/invoice_tree.xml
  • view/move_line_form.xml
  • view/move_line_list.xml
  • view/move_line_list_payment.xml
  • view/move_line_list_to_pay.xml
  • view/party_form.xml
  • view/pay_ask_form.xml
  • view/pay_start_form.xml

Plan de pruebas

  • Activación en una base vacía y actualización desde la revisión anterior.
  • Creación, modificación, copia y eliminación según estado y permisos.
  • Cada botón, transición y asistente con casos válidos e inválidos.
  • Reglas multicompañía, traducciones, zonas horarias y monedas aplicables.
  • Instalación conjunta con dependencias obligatorias e integraciones opcionales.
  • Copia y restauración de registros, adjuntos e informes producidos.

Compatibilidad y actualización

Mantenga servidor y módulos en la serie 8.0. Antes de actualizar compare tryton.cfg, migraciones de __register__, cambios de estados, XML IDs y permisos. Una compilación exitosa no reemplaza una migración ensayada ni la conciliación funcional de datos.

Evidencia documental oficial

Temas encontrados: Configuration · filestore · store_prefix · Design · Invoice · Wizards · Pay Invoice · Credit Invoice · Reschedule Lines to Pay · Reports · Invoice Payment Method · Fiscal Year Invoice Sequence · Payment Term · Test Payment Term · Payment Mean Rule · Account Invoice Module · Correcting invoices · Cancelling invoices · Crediting customers and suppliers · Usage · Setting a party's invoice address · Setting default accounts · Receivable and payable · Revenue and Expense · Tax · Creating payment terms · Invoicing customers · Handling supplier invoices · Paying an invoice

    • doc/configuration.rst: The Account Invoice Module uses some settings from the [account_invoice] section of the trytond:topics-configuration.
    • doc/design.rst: The Account Invoice Module adds some new concepts and extends some existing concepts.
    • doc/index.rst: The Account Invoice Module adds the concept of invoicing to Tryton. It allows the creation of customer and supplier invoices, and can handle the payment terms related to the invoices and show when they have been paid.
    • doc/usage/prepare.inc.rst: Tryton lets you mark which Addresses <party:model-party.address>, and also Contact Mechanisms <party:model-party.contact_mechanism>, should be used with Invoices <model-account.invoice>.
    • doc/usage/process.inc.rst: If your Company <company:model-company.company> has sold some things and you want to issue an invoice to the customer, then in Tryton you need to create a customer Invoice <model-account.invoice>.

Ver código fuente