Delivery Notes

l10n_ec_delivery_note
REPOSITORY
REPOSITORYOCA/l10n-ecuador
GIT
GIThttps://github.com/OCA/l10n-ecuador.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-ecuador/tree/15.0/l10n_ec_delivery_note
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYStock
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Spearhead
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Spearhead
COMMITTERS
COMMITTERSCarlos Lopez, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-ecuador
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:42
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/l10n-ecuador:
    - l10n_ec_account_edi
    - l10n_ec_base
odoo/odoo:
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - payment
    - account
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - utm
    - stock
    - barcodes
    - account_edi
    - l10n_ec
    - base_iban
    - account_debit_note
    - l10n_latam_invoice_document
    - l10n_latam_base
    - contacts
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES cryptography==36.0.0
xades==0.2.4
xmlsig==0.1.9
zeep
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (24)
XML IDNameModelTypeStatus
account_edi_document_view_form account.edi.document.view.form account.edi.document xpath Inherits l10n_ec_account_edi.account_edi_document_view_form
backorder_confirmation_form_view stock.backorder.confirmation.form stock.backorder.confirmation xpath Inherits stock.view_backorder_confirmation
delivery_note_search_view l10n_ec.delivery.note.search l10n_ec.delivery.note search New
l10n_ec_delivery_note l10n_ec_delivery_note ir.ui.view qweb New
report_delivery_note report_delivery_note ir.ui.view qweb New
report_e_delivery_note_document report_e_delivery_note_document ir.ui.view qweb New
report_e_delivery_note_document_body report_e_delivery_note_document_body ir.ui.view qweb New
res_config_settings_form_view res.config.settings.delivery.note.form res.config.settings xpath Inherits stock.res_config_settings_view_form
res_config_settings_view_form res.config.settings.view.form res.config.settings xpath Inherits l10n_ec_account_edi.res_config_settings_l10n_ec_edi
res_partner_carrier_contact_form_view res.partner.form res.partner xpath Inherits base.view_partner_form
res_partner_carrier_form_view res.partner.form res.partner xpath Inherits base.view_partner_form
res_partner_carrier_latam_form_view res.partner.form res.partner field Inherits l10n_latam_base.view_partner_latam_form
sale_order_tree_view_remission sale.order.tree sale.order button Inherits sale.view_order_form
stock_picking_form_view stock.picking.form stock.picking button Inherits stock.view_picking_form
stock_picking_search_view stock.picking.search stock.picking field Inherits stock.view_picking_internal_search
stock_picking_tree_view stock.picking.tree stock.picking field Inherits stock.vpicktree
stock_picking_type_form_view stock.picking.type.form stock.picking.type xpath Inherits stock.view_picking_type_form
view_delivery_note_form l10n_ec.delivery.note.form l10n_ec.delivery.note form New
view_delivery_note_line_tree l10n_ec.delivery.note.line.tree l10n_ec.delivery.note.line tree New
view_delivery_note_tree l10n_ec.delivery.note.tree l10n_ec.delivery.note tree New
view_immediate_transfer stock.immediate.transfer.form stock.immediate.transfer xpath Inherits stock.view_immediate_transfer
view_out_invoice_tree view.out.invoice.tree account.move xpath Inherits account.view_out_invoice_tree
wizard_create_delivery_note_form_view wizard.create.delivery_note.form wizard.create.delivery.note form New
wizard_input_document_number_form_view wizard.input.document.number.form wizard.input.document.number form New
Models touched (19)

New fields (2)
  • l10n_ec_delivery_note_id Many2one → l10n_ec.delivery.note
    comodel_name='l10n_ec.delivery.note' ondelete='cascade' required=False string='Delivery delivery_note'
  • move_id Many2one
    required=False
Public methods (3)
  • l10n_ec_get_current_document(self)
  • l10n_ec_get_type_identification(self, number)
    @api.model
  • l10n_ec_send_mail_to_partner(self)
    @api.model

New fields (0)

No new fields.

Public methods (1)
  • l10n_ec_is_required_for_delivery_note(self, note)

New fields (1)
  • l10n_ec_delivery_note_ids One2many → l10n_ec.delivery.note
    comodel_name='l10n_ec.delivery.note' inverse_name='invoice_id' string='Delivery Notes'
Public methods (0)

No public methods.

New fields (33)
  • commercial_partner_id Many2one → res.partner
    compute_sudo=True help='The commercial entity that will be used for this delivery note' readonly=True related='partner_id.commercial_partner_id' store=True string='Commercial Entity' args: 'res.partner'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True states=STATES args: 'res.company', 'Company'
  • country_code Char
    readonly=True related='company_id.account_fiscal_country_id.code'
  • dau Char
    copy=False readonly=True states=STATES args: 'D.A.U.'
  • delivery_address_id Many2one → res.partner
    index=True readonly=True states=STATES tracking=True args: 'res.partner', 'Delivery Address'
  • delivery_carrier_id Many2one → res.partner
    domain=[('l10n_ec_is_carrier', '=', True)] index=True readonly=True states=STATES args: 'res.partner', 'Delivery Carrier'
  • delivery_date Date
    default=<expr> readonly=True required=True states=STATES tracking=True
  • delivery_line_ids One2many → l10n_ec.delivery.note.line
    auto_join=True copy=True readonly=True states=STATES args: 'l10n_ec.delivery.note.line', 'delivery_note_id', 'Delivery note detail'
  • delivery_note_type Selection
    default='sales' readonly=True states=STATES args: [('sales', 'Transfer by Sales'), ('internal', 'Internal Transfer')]
  • document_number Char
    compute='_compute_document_number' index=True readonly=True size=20 store=True tracking=True
  • edi_blocking_level Selection
    compute='_compute_edi_error_message' selection=[('info', 'Info'), ('warning', 'Warning'), ('error', 'Error')]
  • edi_document_ids One2many → account.edi.document
    comodel_name='account.edi.document' inverse_name='l10n_ec_delivery_note_id'
  • edi_error_count Integer
    compute='_compute_edi_error_count' help='How many EDIs are in error for this move ?'
  • edi_error_message Html
    compute='_compute_edi_error_message'
  • edi_state Selection
    compute='_compute_edi_state' help='The aggregated state of all the EDIs with web-service of this move' selection=[('to_send', 'To Send'), ('sent', 'Sent'), ('to_cancel', 'To Cancel'), ('cancelled', 'Cancelled')] store=True string='Electronic invoicing'
  • edi_web_services_to_process Text
    compute='_compute_edi_web_services_to_process' help='Technical field to display the documents that will be processed by the CRON'
  • invoice_id Many2one → account.move
    readonly=True states=STATES string='Invoice' args: 'account.move'
  • is_delivery_note_sent Boolean
    default=False
  • journal_id Many2one → account.journal
    check_company=True comodel_name='account.journal' domain=[('l10n_latam_use_documents', '=', True), ('type', '=', 'sale')] readonly=True states=STATES string='Emission Point'
  • l10n_ec_authorization_date Datetime
    compute='_compute_l10n_ec_edi_document_data' store=True string='Access Key(EC)'
  • l10n_ec_car_plate Char
    readonly=True required=False size=8 states=STATES args: 'Car plate'
  • l10n_ec_is_edi_doc Boolean
    copy=False default=False string='Is Ecuadorian Electronic Document'
  • l10n_ec_xml_access_key Char
    compute='_compute_l10n_ec_edi_document_data' store=True string='Electronic Authorization Date'
  • l10n_latam_internal_type Many2one → l10n_latam.document.type
    domain="[('code', '=', '06')]" string='Document Type' args: 'l10n_latam.document.type'
  • motive Text
    copy=False readonly=True states=STATES
  • note Text
    copy=False readonly=True states=STATES string='Notes'
  • origin Text
    copy=False readonly=True states=STATES
  • partner_id Many2one → res.partner
    auto_join=True index=True readonly=True states=STATES tracking=True args: 'res.partner', 'Partner'
  • rise Char
    copy=False readonly=True states=STATES args: 'R.I.S.E'
  • sale_order_ids Many2many → sale.order
    copy=False readonly=True args: 'sale.order', 'sale_order_delivery_note_rel', 'delivery_note_id', 'order_id', 'Sales Order'
  • state Selection
    default='draft' index=True readonly=True required=True tracking=True args: [('draft', 'Draft'), ('done', 'Done'), ('cancel', 'Cancel')]
  • stock_picking_ids Many2many → stock.picking
    copy=False readonly=True states=STATES string='Pickings related' args: 'stock.picking'
  • transfer_date Date
    default=<expr> readonly=True required=True states=STATES tracking=True
Public methods (11)
  • action_cancel(self)
  • action_confirm(self)
  • action_process_edi_web_services(self, with_commit=True)
  • action_retry_edi_documents_error(self)
  • action_sent_mail_electronic(self)
  • action_set_draft(self)
  • default_get(self, fields_list)
    @api.model
  • l10n_ec_action_sent_mail_electronic(self)
    Funcion para enviar correo automaticamente desde un cron
  • onchange_carrier_id(self)
    @api.onchange('delivery_carrier_id')
  • onchange_partner_id(self)
    @api.onchange('partner_id')
  • unlink(self)

New fields (10)
  • company_id Many2one → res.company
    related='delivery_note_id.company_id' store=True args: 'res.company', 'Company'
  • delivery_note_id Many2one → l10n_ec.delivery.note
    auto_join=True index=True ondelete='cascade' args: 'l10n_ec.delivery.note', 'Delivery Note'
  • description Char
  • move_id Many2one → stock.move
    auto_join=True index=True required=False args: 'stock.move', 'Stock Move'
  • move_line_id Many2one → stock.move.line
    auto_join=True index=True required=False args: 'stock.move.line', 'Stock Move line'
  • product_id Many2one → product.product
    auto_join=True index=True args: 'product.product', 'Product'
  • product_qty Float
    digits='Product Unit of Measure' args: 'Quantity'
  • product_uom_category_id Many2one
    related='product_id.uom_id.category_id'
  • product_uom_id Many2one → uom.uom
    domain="[('category_id', '=', product_uom_category_id)]" ondelete='restrict' string='UoM' args: 'uom.uom'
  • production_lot_id Many2one → stock.production.lot
    domain="[('product_id', '=', product_id)]" index=True args: 'stock.production.lot', 'Production Lot'
Public methods (2)
  • l10n_ec_get_delivery_note_edi_data(self)
  • onchange_product_id(self)
    @api.onchange('product_id')

New fields (1)
  • internal_type Selection
    selection_add=[('delivery_note', 'Delivery Note')]
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • generate_email(self, res_ids, fields)

New fields (4)
  • l10n_ec_delivery_note_days Integer
    string='Days of transfer by default'
  • l10n_ec_delivery_note_version Selection
    default='1.1.0' string='Delivery Note Version xml' args: [('1.0.0', '1.0.0'), ('1.1.0', '1.1.0')]
  • l10n_ec_send_mail_remission Boolean
    default=True args: 'Delivery Note?'
  • l10n_ec_validate_invoice_exist Boolean
    args: 'Validate invoice already create?'
Public methods (0)

No public methods.

New fields (4)
  • l10n_ec_delivery_note_days Integer
    readonly=False related='company_id.l10n_ec_delivery_note_days' string='Days of transfer by default'
  • l10n_ec_delivery_note_version Selection
    readonly=False related='company_id.l10n_ec_delivery_note_version'
  • l10n_ec_send_mail_remission Boolean
    readonly=False related='company_id.l10n_ec_send_mail_remission' args: 'Guía de Remisión?'
  • l10n_ec_validate_invoice_exist Boolean
    readonly=False related='company_id.l10n_ec_validate_invoice_exist'
Public methods (0)

No public methods.

New fields (2)
  • l10n_ec_car_plate Char
    size=8 args: 'Car plate'
  • l10n_ec_is_carrier Boolean
    args: 'Is Carrier?'
Public methods (0)

No public methods.

New fields (2)
  • l10n_ec_delivery_note_count Integer
    compute='_compute_delivery_note_count' args: '# Delivery note'
  • l10n_ec_delivery_note_ids Many2many → l10n_ec.delivery.note
    copy=False readonly=True args: 'l10n_ec.delivery.note', 'sale_order_delivery_note_rel', 'order_id', 'delivery_note_id', 'Delivery Note'
Public methods (1)
  • action_view_l10n_ec_delivery_note(self)

New fields (0)

No new fields.

Public methods (2)
  • process(self)
  • process_cancel_backorder(self)

New fields (0)

No new fields.

Public methods (1)
  • process(self)

New fields (7)
  • l10n_ec_car_plate Char
    readonly=False size=8 states=STATES args: 'Car plate'
  • l10n_ec_create_delivery_note Boolean
    readonly=False states=STATES args: 'Create Delivery note?'
  • l10n_ec_delivery_carrier_id Many2one → res.partner
    domain=[('l10n_ec_is_carrier', '=', True)] readonly=False states=STATES args: 'res.partner', 'Delivery Note Carrier'
  • l10n_ec_delivery_note_ids Many2many → l10n_ec.delivery.note
    copy=False readonly=True string='Delivery note' args: 'l10n_ec.delivery.note'
  • l10n_ec_delivery_note_journal_id Many2one → account.journal
    check_company=True comodel_name='account.journal' domain=[('l10n_latam_use_documents', '=', True), ('type', '=', 'sale')] states=STATES string='Emission Point'
  • l10n_ec_delivery_note_number Char
    compute='_compute_delivery_note_number' index=True store=True string='Delivery Note Numbers'
  • l10n_latam_internal_type Many2one → l10n_latam.document.type
    domain="[('code', '=', '06')]" string='Document Type' args: 'l10n_latam.document.type'
Public methods (4)
  • button_validate(self)
  • l10n_ec_defined_delivery_note_type(self, picking_type_code)
    @api.model
  • l10n_ec_do_print_delivery_notes(self)
  • onchange_l10n_ec_delivery_carrier_id(self)
    @api.onchange('l10n_ec_delivery_carrier_id')

New fields (1)
  • l10n_ec_default_delivery_note Boolean
    string='Create Delivery Note by default?'
Public methods (0)

No public methods.

New fields (11)
  • dau Char
    args: 'D.A.U.'
  • delivery_date Date
    required=False
  • document_number Char
  • invoice_id Many2one → account.move
    string='Invoice' args: 'account.move'
  • l10n_ec_create_delivery_note Boolean
    string='Create Delivery note?'
  • l10n_ec_journal_id Many2one → account.journal
    check_company=True comodel_name='account.journal' domain=[('l10n_latam_internal_type', '=', 'delivery_note')] readonly=True string='Journal'
  • note Char
  • partner_id Many2one → res.partner
    readonly=True string='Partner' args: 'res.partner'
  • picking_id Many2one → stock.picking
    string='Picking' args: 'stock.picking'
  • rise Char
    args: 'R.I.S.E'
  • transfer_date Date
    required=False
Public methods (3)
  • create_delivery_note(self)
  • default_get(self, fields_list)
    @api.model
  • onchange_delivery_date(self)
    @api.onchange('transfer_date')

New fields (1)
  • line_ids One2many → wizard.create.delivery.note.line
    comodel_name='wizard.create.delivery.note.line' inverse_name='wizard_id' readonly=True string='Delivery Note lines'
Public methods (2)
  • action_create_delivery_note(self)
  • default_get(self, fields)
    @api.model

New fields (9)
  • date Datetime
    args: 'Create Date'
  • location_dest_id Many2one → stock.location
    args: 'stock.location'
  • location_id Many2one → stock.location
    args: 'stock.location'
  • name Char
    args: 'Reference'
  • origin Char
  • partner_id Many2one → res.partner
    comodel_name='res.partner' string='Partner'
  • picking_id Many2one → stock.picking
    comodel_name='stock.picking' required=True string='Picking related'
  • scheduled_date Datetime
  • wizard_id Many2one → wizard.create.delivery.note
    comodel_name='wizard.create.delivery.note' ondelete='cascade' string='Wizard'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • action_create_delivery_note(self)
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/l10n-ecuador
PULL REQUEST
PULL REQUEST17.0 mig l10n ec delivery note (#79)