| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/l10n-italy |
| GIT | |
| GIT | https://github.com/OCA/l10n-italy.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/l10n-italy/tree/18.0/l10n_it_delivery_note |
| VERSION | |
| VERSION | 1.1.0 |
| CATEGORY | |
| CATEGORY | Localization/Italy |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Marco Calcagni, Gianmarco Conte, Link IT Europe Srl |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Marco Calcagni, Gianmarco Conte, Link IT Europe Srl |
| COMMITTERS | |
| COMMITTERS | tafaRU, Weblate, OCA-git-bot, Simone Rubino, micheledic, oca-ci, matteo.tognini, Borruso, Alessandro Fiorino, anusrinps96 |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/l10n-italy |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:30:12 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/delivery-carrier: - delivery_carrier_partner odoo/odoo: - delivery - sale - sales_team - base - base_setup - web - bus - web_tour - html_editor - account_payment - account - onboarding - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - payment - utm - sale_stock - stock_account - stock - barcodes_gs1_nomenclature - barcodes - stock_delivery |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | **English** This module manage the Italian DDT (Delivery note). From a picking is possible to generate a Delivery Note and group more picking in one delivery note. It's also possible to invoice from the delivery note form. This module is alternative to `l10n_it_ddt`, it follows the Odoo way to process sale orders, pickings and invoices. You can't have both `l10n_it_ddt` and `l10n_it_delivery_note` installed together. There are two available settings: - Base (default): one picking, one DN. - Advanced: more picking in one DN. **Italiano** Questo modulo consente di gestire i DDT. Da un prelievo è possibile generare un DDT e raggruppare più prelievi in un DDT. È anche possibile fatturare dalla scheda del DDT. Questo modulo è un alternativa al modulo `l10n_it_ddt`, segue la modalità Odoo di gestire ordini di vendita, prelievi e fatture. Non è possibile avere installati contemporaneamente `l10n_it_ddt` e `l10n_it_delivery_note`. Ci sono due impostazioni possibili. - Base (predefinita): un prelievo, un DDT. - Avanzata: più prelievi in un DDT. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_view_move_form_view |
account.view.move.form | account.move | xpath | Inherits account.view_move_form |
delivery_data |
delivery_data | ir.ui.view | qweb | New |
delivery_note_report_main_template |
delivery_note_report_main_template | ir.ui.view | qweb | New |
delivery_note_report_template |
delivery_note_report_template | ir.ui.view | qweb | New |
parcels_data |
parcels_data | ir.ui.view | qweb | New |
portal_delivery_note_page |
Delivery Note Portal Template | ir.ui.view | qweb | Inherits portal.portal_sidebar |
portal_my_delivery_notes |
My Delivery Notes | ir.ui.view | qweb | New |
portal_my_home_delivery_note |
Delivery Notes | ir.ui.view | qweb | Inherits portal.portal_my_home |
portal_my_home_menu_delivery_note |
Portal layout : delivery note menu entries | ir.ui.view | qweb | Inherits portal.portal_breadcrumbs |
res_config_settings_form_view |
res.config.settings.form | res.config.settings | xpath | Inherits stock.res_config_settings_view_form |
res_partner_form_view |
res.partner.form | res.partner | xpath | Inherits base.view_partner_form |
sale_advance_payment_inv_form_view |
sale.advance.payment.inv.form | sale.advance.payment.inv | xpath | Inherits sale.view_sale_advance_payment_inv |
sale_order_form_view |
sale.order.form | sale.order | xpath | Inherits sale_stock.view_order_form_inherit_sale_stock |
stock_delivery_note_confirm_form_view |
stock.delivery.note.confirm.form | stock.delivery.note.confirm.wizard | form | New |
stock_delivery_note_create_form_view |
stock.delivery.note.create.form | stock.delivery.note.create.wizard | form | New |
stock_delivery_note_form_view |
stock.delivery.note.form | stock.delivery.note | form | New |
stock_delivery_note_search_view |
stock.delivery.note.search | stock.delivery.note | search | New |
stock_delivery_note_select_form_view |
stock.delivery.note.select.form | stock.delivery.note.select.wizard | form | New |
stock_delivery_note_tree_view |
stock.delivery.note.tree | stock.delivery.note | list | New |
stock_delivery_note_type_form_view |
stock.delivery.note.type.form | stock.delivery.note.type | form | New |
stock_delivery_note_type_tree_view |
stock.delivery.note.type.tree | stock.delivery.note.type | list | New |
stock_delivery_note_wizard_error_message_template |
stock_delivery_note_wizard_error_message_template | ir.ui.view | qweb | New |
stock_picking_form_view |
stock.picking.form | stock.picking | data | Inherits stock.view_picking_form |
stock_picking_goods_appearance_form_view |
stock.picking.goods.appearance.form | stock.picking.goods.appearance | form | New |
stock_picking_goods_appearance_tree_view |
stock.picking.goods.appearance.tree | stock.picking.goods.appearance | list | New |
stock_picking_search_view |
stock.picking.search | stock.picking | xpath | Inherits stock.view_picking_internal_search |
stock_picking_transport_condition_form_view |
stock.picking.transport.condition.form | stock.picking.transport.condition | form | New |
stock_picking_transport_condition_tree_view |
stock.picking.transport.condition.tree | stock.picking.transport.condition | list | New |
stock_picking_transport_method_form_view |
stock.picking.transport.method.form | stock.picking.transport.method | form | New |
stock_picking_transport_method_tree_view |
stock.picking.transport.method.tree | stock.picking.transport.method | list | New |
stock_picking_transport_reason_form_view |
stock.picking.transport.reason.form | stock.picking.transport.reason | form | New |
stock_picking_transport_reason_tree_view |
stock.picking.transport.reason.tree | stock.picking.transport.reason | list | New |
stock_picking_tree_view |
stock.picking.tree | stock.picking | field | Inherits stock.vpicktree |
view_stock_delivery_note_invoice_wizard |
stock.delivery.note.invoice.form | stock.delivery.note.invoice.wizard | form | New |
delivery_note_count
Integer
compute='_compute_delivery_note_count'
delivery_note_ids
Many2many → stock.delivery.note
copy=False
string='Delivery Notes'
args: 'stock.delivery.note', 'stock_delivery_note_account_invoice_rel', 'invoice_id', 'delivery_note_id'
button_cancel(self)
goto_delivery_notes(self, **kwargs)
goto_invoice(self, **kwargs)
unlink(self)
update_delivery_note_lines(self)
delivery_note_id
Many2one → stock.delivery.note
copy=False
readonly=True
string='Delivery Note'
args: 'stock.delivery.note'
note_dn
Boolean
string='Note DN'
No public methods.
delivery_carrier_id
Many2one → res.partner
comodel_name='res.partner'
string='Carrier of Delivery'
delivery_goods_appearance_id
Many2one → stock.picking.goods.appearance
comodel_name='stock.picking.goods.appearance'
string='Appearance of goods of Delivery'
delivery_gross_weight
Float
string='Gross Weight of Delivery'
delivery_gross_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
string='Gross Weight of Delivery UoM'
args: 'uom.uom'
delivery_net_weight
Float
string='Net Weight of Delivery'
delivery_net_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
string='Net Weight of Delivery UoM'
args: 'uom.uom'
delivery_note
Html
string='Internal note of delivery'
delivery_packages
Integer
string='Packages of Delivery'
delivery_transport_condition_id
Many2one → stock.picking.transport.condition
comodel_name='stock.picking.transport.condition'
string='Condition of transport of Delivery'
delivery_transport_datetime
Datetime
string='Transport Date of Delivery'
delivery_transport_method_id
Many2one → stock.picking.transport.method
comodel_name='stock.picking.transport.method'
string='Method of transport of Delivery'
delivery_transport_reason_id
Many2one → stock.picking.transport.reason
comodel_name='stock.picking.transport.reason'
string='Reason of transport of Delivery'
delivery_volume
Float
string='Volume of Delivery'
delivery_volume_uom_id
Many2one → uom.uom
default=_default_volume_uom
domain=_domain_volume_uom
string='Volume of Delivery UoM'
args: 'uom.uom'
No public methods.
display_carrier_dn_report
Boolean
default=False
args: 'Display Carrier in Delivery Note Report'
display_delivery_method_dn_report
Boolean
default=False
args: 'Display Delivery Method in Delivery Note Report'
display_ref_customer_dn_report
Boolean
default=False
args: 'Display Ref. Customer in Delivery Note Report'
display_ref_order_dn_report
Boolean
default=False
args: 'Display Ref. Order in Delivery Note Report'
display_total_in_dn_with_prices
Boolean
default=False
args: 'Display total in DN with prices'
create(self, vals)
display_carrier_dn_report
Boolean
readonly=False
related='company_id.display_carrier_dn_report'
string='Display Carrier in Delivery Note Report'
display_delivery_method_dn_report
Boolean
readonly=False
related='company_id.display_delivery_method_dn_report'
string='Display Delivery Method in Delivery Note Report'
display_ref_customer_dn_report
Boolean
readonly=False
related='company_id.display_ref_customer_dn_report'
string='Display Ref. Customer in Delivery Note Report'
display_ref_order_dn_report
Boolean
readonly=False
related='company_id.display_ref_order_dn_report'
string='Display Ref. Order in Delivery Note Report'
display_total_in_dn_with_prices
Boolean
readonly=False
related='company_id.display_total_in_dn_with_prices'
group_required_partner_ref
Boolean
implied_group='l10n_it_delivery_note.group_required_partner_ref'
string='Make Partner Ref. in DN Mandatory'
virtual_locations_root
Many2one → stock.location
config_parameter='stock.location.virtual_root'
default=_default_virtual_locations_root
string='Virtual locations root'
args: 'stock.location'
No public methods.
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
string='Reason of transport'
args: 'stock.picking.transport.reason'
No public methods.
step
Selection
default=_default_step
string='Current step'
args: WIZARD_STEPS
action_step_confirm(self)
goto(self, **kwargs)
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
string='Reason of transport'
args: 'stock.picking.transport.reason'
delivery_note_count
Integer
compute='_compute_delivery_notes'
delivery_note_ids
Many2many → stock.delivery.note
compute='_compute_delivery_notes'
args: 'stock.delivery.note'
goto_delivery_notes(self, **kwargs)
onchange_partner_id_shipping_info(self)
delivery_note_line_ids
One2many → stock.delivery.note.line
readonly=True
args: 'stock.delivery.note.line', 'sale_line_id'
delivery_picking_id
Many2one → stock.picking
copy=False
readonly=True
args: 'stock.picking'
fix_qty_to_invoice(self, new_qty_to_invoice=0)
has_picking(self)
is_invoiceable(self)
is_invoiced(self)
is_pickings_related(self, picking_ids)
need_to_be_invoiced(self)
retrieve_pickings_lines(self, picking_ids)
No new fields.
Public methods (0)No public methods.
active
Boolean
default=True
amount_total
Monetary
compute='_compute_amount_total'
currency_field='currency_id'
store=True
args: 'Total Amount'
can_change_number
Boolean
compute='_compute_boolean_flags'
carrier_id
Many2one → res.partner
string='Carrier'
tracking=True
args: 'res.partner'
company_id
Many2one → res.company
default=_default_company
required=True
args: 'res.company'
currency_id
Many2one → res.currency
compute='_compute_currency_id'
args: 'res.currency'
date
Date
copy=False
delivery_carrier_id
Many2one
readonly=True
related='carrier_id'
delivery_goods_appearance_id
Many2one
readonly=True
related='goods_appearance_id'
delivery_gross_weight
Float
readonly=True
related='gross_weight'
delivery_gross_weight_uom_id
Many2one
default=None
domain=None
readonly=True
related='gross_weight_uom_id'
delivery_method_id
Many2one → delivery.carrier
string='Delivery method'
tracking=True
args: 'delivery.carrier'
delivery_net_weight
Float
readonly=True
related='net_weight'
delivery_net_weight_uom_id
Many2one
default=None
domain=None
readonly=True
related='net_weight_uom_id'
delivery_note
Html
readonly=True
related='note'
delivery_packages
Integer
readonly=True
related='packages'
delivery_transport_condition_id
Many2one
readonly=True
related='transport_condition_id'
delivery_transport_datetime
Datetime
readonly=True
related='transport_datetime'
delivery_transport_method_id
Many2one
readonly=True
related='transport_method_id'
delivery_transport_reason_id
Many2one
readonly=True
related='transport_reason_id'
delivery_volume
Float
readonly=True
related='volume'
delivery_volume_uom_id
Many2one
default=None
domain=None
readonly=True
related='volume_uom_id'
goods_appearance_id
Many2one → stock.picking.goods.appearance
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
gross_weight
Float
compute='_compute_weights'
readonly=False
store=True
string='Gross weight'
gross_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
string='Gross weight UoM'
args: 'uom.uom'
invoice_ids
Many2many → account.move
copy=False
string='Invoices'
args: 'account.move', 'stock_delivery_note_account_invoice_rel', 'delivery_note_id', 'invoice_id'
invoice_status
Selection
compute='_compute_invoice_status'
copy=False
default=<expr>
readonly=True
store=True
string='Invoice status'
args: INVOICE_STATUSES
line_ids
One2many → stock.delivery.note.line
string='Lines'
args: 'stock.delivery.note.line', 'delivery_note_id'
lines_have_customer_ref
Boolean
compute='_compute_lines_have_customer_ref'
lines_have_so_number
Boolean
compute='_compute_lines_have_so_number'
name
Char
copy=False
index=True
readonly=True
tracking=True
net_weight
Float
compute='_compute_weights'
readonly=False
store=True
string='Net weight'
net_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
string='Net weight UoM'
args: 'uom.uom'
note
Html
string='Internal note'
packages
Integer
partner_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
index=True
readonly=True
required=True
string='Recipient'
tracking=True
args: 'res.partner'
partner_ref
Char
copy=False
index=True
string='Partner reference'
tracking=True
partner_sender_id
Many2one → res.partner
default=_default_company
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
readonly=True
required=True
string='Sender'
tracking=True
args: 'res.partner'
partner_shipping_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
required=True
string='Shipping address'
tracking=True
args: 'res.partner'
picking_ids
One2many → stock.picking
check_company=True
string='Pickings'
args: 'stock.picking', 'delivery_note_id'
picking_type
Selection
compute='_compute_picking_type'
store=True
string='Picking type'
args: <expr>
pickings_picker
Many2many → stock.picking
check_company=True
compute='_compute_get_pickings'
inverse='_inverse_set_pickings'
args: 'stock.picking'
print_prices
Boolean
related='type_id.print_prices'
store=True
string='Show prices on printed DN'
sale_count
Integer
compute='_compute_sales'
sale_ids
Many2many → sale.order
compute='_compute_sales'
args: 'sale.order'
sales_transport_check
Boolean
compute='_compute_sales'
default=True
sequence_id
Many2one → ir.sequence
copy=False
readonly=True
args: 'ir.sequence'
show_discount
Boolean
compute='_compute_show_discount'
show_product_information
Boolean
compute='_compute_boolean_flags'
state
Selection
copy=False
default=<expr>
required=True
tracking=True
args: DELIVERY_NOTE_STATES
transport_condition_id
Many2one → stock.picking.transport.condition
string='Condition of transport'
args: 'stock.picking.transport.condition'
transport_datetime
Datetime
string='Transport date'
transport_method_id
Many2one → stock.picking.transport.method
string='Method of transport'
args: 'stock.picking.transport.method'
transport_reason_id
Many2one → stock.picking.transport.reason
string='Reason of transport'
args: 'stock.picking.transport.reason'
type_code
Selection
related='type_id.code'
store=True
string='Type of Operation'
type_id
Many2one → stock.delivery.note.type
check_company=True
default=_default_type
index=True
readonly=True
required=True
string='Type'
args: 'stock.delivery.note.type'
untaxed_amount_total
Monetary
compute='_compute_amount_total'
currency_field='currency_id'
store=True
args: 'Untaxed Total Amount'
volume
Float
volume_uom_id
Many2one → uom.uom
default=_default_volume_uom
domain=_domain_volume_uom
string='Volume UoM'
args: 'uom.uom'
action_cancel(self)
action_confirm(self)
action_done(self)
action_draft(self)
action_invoice(self, invoice_method=False)
action_print(self)
check_compliance(self, pickings)
create(self, vals_list)
ensure_annulability(self)
get_location_address(self, location_id)
goto(self, **kwargs)
goto_sales(self, **kwargs)
unlink(self)
update_detail_lines(self)
update_transport_datetime(self)
write(self, vals)
date
Date
error_message
Html
compute='_compute_fields'
partner_id
Many2one → res.partner
compute='_compute_fields'
string='Recipient'
args: 'res.partner'
partner_sender_id
Many2one → res.partner
compute='_compute_fields'
string='Sender'
args: 'res.partner'
partner_shipping_id
Many2one → res.partner
string='Shipping address'
args: 'res.partner'
selected_picking_ids
Many2many → stock.picking
default=_default_stock_pickings
readonly=True
args: 'stock.picking'
type_id
Many2one → stock.delivery.note.type
domain=_domain_type_id
string='Type'
args: 'stock.delivery.note.type'
warning_message
Char
compute='_compute_fields'
readonly=True
args: 'Warning'
confirm(self)
delivery_note_id
Many2one → stock.delivery.note
readonly=True
args: 'stock.delivery.note'
warning_message
Text
readonly=True
confirm(self)
date
Date
default=_default_date
partner_shipping_id
Many2one → res.partner
required=True
args: 'res.partner'
picking_type
Selection
compute='_compute_picking_type'
string='Picking type'
args: <expr>
type_id
Many2one → stock.delivery.note.type
default=_default_type
required=True
args: 'stock.delivery.note.type'
check_compliance(self, pickings)
confirm(self)
invoice_date
Date
default=_get_default_invoice_date
string='Invoice/Bill Date'
invoice_method
Selection
default='dn'
required=True
args: [('dn', 'Only DN'), ('service', 'With Service')]
create_invoices(self)
amount
Monetary
compute='_compute_amount'
store=True
company_id
Many2one → res.company
index=True
readonly=True
related='delivery_note_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one → res.currency
default=_default_currency
required=True
string='Currency'
args: 'res.currency'
delivery_note_id
Many2one → stock.delivery.note
ondelete='cascade'
required=True
string='Delivery Note'
args: 'stock.delivery.note'
discount
Float
digits='Discount'
display_type
Selection
default=False
string='Line type'
args: LINE_DISPLAY_TYPES
invoice_status
Selection
copy=False
default=<expr>
required=True
string='Invoice status'
args: INVOICE_STATUSES
move_id
Many2one → stock.move
check_company=True
copy=False
readonly=True
string='Warehouse movement'
args: 'stock.move'
name
Text
required=True
string='Description'
price_unit
Float
digits='Product Price'
string='Unit price'
product_description
Text
related='product_id.description_sale'
product_id
Many2one → product.product
string='Product'
args: 'product.product'
product_qty
Float
default=1.0
digits='Product Unit of Measure'
string='Quantity'
product_uom_id
Many2one → uom.uom
default=_default_unit_uom
string='UoM'
args: 'uom.uom'
sale_line_id
Many2one → sale.order.line
copy=False
related='move_id.sale_line_id'
store=True
args: 'sale.order.line'
sale_order_client_ref
Char
compute='_compute_sale_order_client_ref'
store=True
args: 'Customer Reference'
sale_order_number
Char
compute='_compute_sale_order_number'
store=True
sequence
Integer
default=10
index=True
required=True
tax_ids
Many2many → account.tax
string='Taxes'
args: 'account.tax'
untaxed_amount
Monetary
compute='_compute_amount'
store=True
create(self, vals_list)
is_invoiceable(self)
sync_invoice_status(self)
write(self, vals)
date
Date
related='delivery_note_id.date'
delivery_note_id
Many2one → stock.delivery.note
required=True
string='Delivery Note'
args: 'stock.delivery.note'
partner_shipping_id
Many2one → res.partner
related='delivery_note_id.partner_shipping_id'
args: 'res.partner'
picking_ids
Many2many → stock.picking
compute='_compute_fields'
args: 'stock.picking'
type_id
Many2one → stock.delivery.note.type
related='delivery_note_id.type_id'
args: 'stock.delivery.note.type'
check_compliance(self, pickings)
confirm(self)
active
Boolean
default=True
code
Selection
default=<expr>
required=True
string='Type of Operation'
args: DELIVERY_NOTE_TYPE_CODES
company_id
Many2one → res.company
default=<expr>
string='Company'
args: 'res.company'
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
string='Reason of transport'
args: 'stock.picking.transport.reason'
name
Char
index=True
required=True
translate=True
next_sequence_number
Integer
related='sequence_id.number_next_actual'
note
Html
string='Internal note'
print_prices
Boolean
default=False
string='Show prices on printed DN'
sequence
Integer
default=10
index=True
sequence_id
Many2one → ir.sequence
required=True
string='Numeration'
args: 'ir.sequence'
create_dn_types(self, company_id)
goto_sequence(self, **kwargs)
No new fields.
Public methods (2)get_virtual_locations_root(self)
is_virtual(self)
can_be_invoiced
Boolean
compute='_compute_boolean_flags'
carrier_partner_id
Many2one → res.partner
related='carrier_id.partner_id'
args: 'res.partner'
delivery_method_id
Many2one → delivery.carrier
related='delivery_note_id.delivery_method_id'
args: 'delivery.carrier'
delivery_note_carrier_id
Many2one → res.partner
related='delivery_note_id.carrier_id'
string='DN Carrier'
args: 'res.partner'
delivery_note_date
Date
related='delivery_note_id.date'
store=True
string='DN Date'
delivery_note_draft
Boolean
compute='_compute_boolean_flags'
delivery_note_exists
Boolean
compute='_compute_boolean_flags'
delivery_note_id
Many2one → stock.delivery.note
copy=False
string='Delivery Note'
args: 'stock.delivery.note'
delivery_note_note
Html
related='delivery_note_id.note'
delivery_note_partner_ref
Char
related='delivery_note_id.partner_ref'
delivery_note_partner_shipping_id
Many2one → res.partner
related='delivery_note_id.partner_shipping_id'
args: 'res.partner'
delivery_note_readonly
Boolean
compute='_compute_boolean_flags'
delivery_note_sequence_id
Many2one → ir.sequence
related='delivery_note_id.sequence_id'
string='Delivery Note Sequence'
args: 'ir.sequence'
delivery_note_state
Selection
related='delivery_note_id.state'
store=True
string='DN State'
delivery_note_type_code
Selection
related='delivery_note_type_id.code'
delivery_note_type_id
Many2one → stock.delivery.note.type
check_company=True
related='delivery_note_id.type_id'
args: 'stock.delivery.note.type'
delivery_note_volume
Float
related='delivery_note_id.volume'
string='DN Volume'
delivery_note_volume_uom_id
Many2one → uom.uom
related='delivery_note_id.volume_uom_id'
args: 'uom.uom'
dn_supplier_date
Date
copy=False
string='Supplier DN Date'
dn_supplier_number
Char
copy=False
string='Supplier DN Number'
goods_appearance_id
Many2one → stock.picking.goods.appearance
related='delivery_note_id.goods_appearance_id'
args: 'stock.picking.goods.appearance'
gross_weight
Float
related='delivery_note_id.gross_weight'
gross_weight_uom_id
Many2one → uom.uom
related='delivery_note_id.gross_weight_uom_id'
args: 'uom.uom'
net_weight
Float
related='delivery_note_id.net_weight'
net_weight_uom_id
Many2one → uom.uom
related='delivery_note_id.net_weight_uom_id'
args: 'uom.uom'
packages
Integer
related='delivery_note_id.packages'
string='DN Packages'
picking_type_code
Selection
related='picking_type_id.code'
string='DN Operation Type'
transport_condition_id
Many2one → stock.picking.transport.condition
related='delivery_note_id.transport_condition_id'
args: 'stock.picking.transport.condition'
transport_datetime
Datetime
related='delivery_note_id.transport_datetime'
transport_method_id
Many2one → stock.picking.transport.method
related='delivery_note_id.transport_method_id'
args: 'stock.picking.transport.method'
transport_reason_id
Many2one → stock.picking.transport.reason
related='delivery_note_id.transport_reason_id'
args: 'stock.picking.transport.reason'
use_delivery_note
Boolean
compute='_compute_boolean_flags'
valid_move_ids
One2many → stock.move
domain=[('state', '!=', CANCEL_MOVE_STATE)]
args: 'stock.move', 'picking_id'
action_delivery_note_cancel(self)
action_delivery_note_confirm(self)
action_delivery_note_create(self)
action_delivery_note_done(self)
action_delivery_note_draft(self)
action_delivery_note_invoice(self)
action_delivery_note_print(self)
action_delivery_note_select(self)
delivery_note_update_transport_datetime(self)
get_partners(self)
goto(self, **kwargs)
goto_delivery_note(self, **kwargs)
update_delivery_note_fields(self, vals)
write(self, vals)
No new fields.
Public methods (1)check_compliance(self, pickings)
active
Boolean
default=True
name
Char
index=True
required=True
string='Appearance name'
translate=True
note
Html
string='Internal note'
sequence
Integer
default=10
index=True
No public methods.
active
Boolean
default=True
name
Char
index=True
required=True
string='Condition name'
translate=True
note
Html
string='Internal note'
price_to_show
Selection
default=<expr>
required=True
string='Price to show'
args: PRICES_TO_SHOW
sequence
Integer
default=10
index=True
No public methods.
active
Boolean
default=True
name
Char
index=True
required=True
string='Method name'
translate=True
note
Html
string='Internal note'
sequence
Integer
default=10
index=True
No public methods.
active
Boolean
default=True
name
Char
index=True
required=True
string='Reason name'
translate=True
note
Html
string='Internal note'
sequence
Integer
default=10
index=True
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/l10n-italy |
| GIT | |
| GIT | https://github.com/OCA/l10n-italy.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/l10n-italy/tree/16.0/l10n_it_delivery_note |
| VERSION | |
| VERSION | 1.5.5 |
| CATEGORY | |
| CATEGORY | Localization/Italy |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Marco Calcagni, Gianmarco Conte, Link IT Europe Srl |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Marco Calcagni, Gianmarco Conte, Link IT Europe Srl |
| COMMITTERS | |
| COMMITTERS | tafaRU, Weblate, OCA-git-bot, Simone Rubino, oca-ci, gianmarco, Alessandro Uffreduzzi, matteo.tognini, Marco Colombo, odooNextev, Borruso, Alessio Renda, PicchiSeba, Alberto Re, Marco Calcagni, Salvatore Davide Rapisarda |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/l10n-italy |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:11:58 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/delivery-carrier: - delivery_carrier_partner OCA/l10n-italy: - l10n_it_delivery_note_base odoo/odoo: - delivery - sale_stock - sale - sales_team - base - base_setup - web - bus - web_tour - account_payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - payment - utm - stock_account - stock - barcodes_gs1_nomenclature - barcodes - sale_management |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | **English** This module manage the Italian DDT (Delivery note). From a picking is possible to generate a Delivery Note and group more picking in one delivery note. It's also possible to invoice from the delivery note form. This module is alternative to `l10n_it_ddt`, it follows the Odoo way to process sale orders, pickings and invoices. You can't have both `l10n_it_ddt` and `l10n_it_delivery_note` installed together. There are two available settings: - Base (default): one picking, one DN. - Advanced: more picking in one DN. **Italiano** Questo modulo consente di gestire i DDT. Da un prelievo è possibile generare un DDT e raggruppare più prelievi in un DDT. È anche possibile fatturare dalla scheda del DDT. Questo modulo è un alternativa al modulo `l10n_it_ddt`, segue la modalità Odoo di gestire ordini di vendita, prelievi e fatture. Non è possibile avere installati contemporaneamente `l10n_it_ddt` e `l10n_it_delivery_note`. Ci sono due impostazioni possibili. - Base (predefinita): un prelievo, un DDT. - Avanzata: più prelievi in un DDT. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_view_move_form_view |
account.view.move.form | account.move | xpath | Inherits account.view_move_form |
assets_backend |
assets | ir.ui.view | qweb | Inherits web.assets_backend |
assets_frontend |
assets | ir.ui.view | qweb | Inherits web.assets_frontend |
delivery_data |
delivery_data | ir.ui.view | qweb | New |
delivery_note_report_main_template |
delivery_note_report_main_template | ir.ui.view | qweb | New |
delivery_note_report_template |
delivery_note_report_template | ir.ui.view | qweb | New |
parcels_data |
parcels_data | ir.ui.view | qweb | New |
portal_delivery_note_page |
Delivery Note Portal Template | ir.ui.view | qweb | Inherits portal.portal_sidebar |
portal_my_delivery_note |
Delivery notes | ir.ui.view | qweb | Inherits portal.portal_my_home |
portal_my_delivery_notes |
My Delivery Notes | ir.ui.view | qweb | New |
portal_my_home_menu_delivery_note |
Portal layout : delivery note menu entries | ir.ui.view | qweb | Inherits portal.portal_breadcrumbs |
res_config_settings_form_view |
res.config.settings.form | res.config.settings | xpath | Inherits stock.res_config_settings_view_form |
res_partner_form_view |
res.partner.form | res.partner | xpath | Inherits base.view_partner_form |
sale_advance_payment_inv_form_view |
sale.advance.payment.inv.form | sale.advance.payment.inv | xpath | Inherits sale.view_sale_advance_payment_inv |
sale_order_form_view |
sale.order.form | sale.order | xpath | Inherits sale_stock.view_order_form_inherit_sale_stock |
stock_delivery_note_confirm_form_view |
stock.delivery.note.confirm.form | stock.delivery.note.confirm.wizard | form | New |
stock_delivery_note_create_form_view |
stock.delivery.note.create.form | stock.delivery.note.create.wizard | form | New |
stock_delivery_note_form_view |
stock.delivery.note.form | stock.delivery.note | form | New |
stock_delivery_note_search_view |
stock.delivery.note.search | stock.delivery.note | search | New |
stock_delivery_note_select_form_view |
stock.delivery.note.select.form | stock.delivery.note.select.wizard | form | New |
stock_delivery_note_tree_view |
stock.delivery.note.tree | stock.delivery.note | tree | New |
stock_delivery_note_wizard_error_message_template |
stock_delivery_note_wizard_error_message_template | ir.ui.view | qweb | New |
stock_picking_form_view |
stock.picking.form | stock.picking | data | Inherits stock.view_picking_form |
stock_picking_search_view |
stock.picking.search | stock.picking | xpath | Inherits stock.view_picking_internal_search |
stock_picking_tree_view |
stock.picking.tree | stock.picking | field | Inherits stock.vpicktree |
view_stock_delivery_note_invoice_wizard |
stock.delivery.note.invoice.form | stock.delivery.note.invoice.wizard | form | New |
delivery_note_count
Integer
compute='_compute_delivery_note_count'
delivery_note_ids
Many2many → stock.delivery.note
copy=False
string='Delivery Notes'
args: 'stock.delivery.note', 'stock_delivery_note_account_invoice_rel', 'invoice_id', 'delivery_note_id'
button_cancel(self)
goto_delivery_notes(self, **kwargs)
goto_invoice(self, **kwargs)
unlink(self)
update_delivery_note_lines(self)
delivery_note_id
Many2one → stock.delivery.note
copy=False
readonly=True
string='Delivery Note'
args: 'stock.delivery.note'
note_dn
Boolean
string='Note DN'
No public methods.
delivery_carrier_id
Many2one → res.partner
comodel_name='res.partner'
string='Carrier of Delivery'
delivery_goods_appearance_id
Many2one → stock.picking.goods.appearance
comodel_name='stock.picking.goods.appearance'
string='Appearance of goods of Delivery'
delivery_gross_weight
Float
string='Gross Weight of Delivery'
delivery_gross_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
string='Gross Weight of Delivery UoM'
args: 'uom.uom'
delivery_net_weight
Float
string='Net Weight of Delivery'
delivery_net_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
string='Net Weight of Delivery UoM'
args: 'uom.uom'
delivery_note
Html
string='Internal note of delivery'
delivery_packages
Integer
string='Packages of Delivery'
delivery_transport_condition_id
Many2one → stock.picking.transport.condition
comodel_name='stock.picking.transport.condition'
string='Condition of transport of Delivery'
delivery_transport_datetime
Datetime
string='Transport Date of Delivery'
delivery_transport_method_id
Many2one → stock.picking.transport.method
comodel_name='stock.picking.transport.method'
string='Method of transport of Delivery'
delivery_transport_reason_id
Many2one → stock.picking.transport.reason
comodel_name='stock.picking.transport.reason'
string='Reason of transport of Delivery'
delivery_volume
Float
string='Volume of Delivery'
delivery_volume_uom_id
Many2one → uom.uom
default=_default_volume_uom
domain=_domain_volume_uom
string='Volume of Delivery UoM'
args: 'uom.uom'
No public methods.
display_carrier_dn_report
Boolean
default=False
args: 'Display Carrier in Delivery Note Report'
display_delivery_method_dn_report
Boolean
default=False
args: 'Display Delivery Method in Delivery Note Report'
display_ref_customer_dn_report
Boolean
default=False
args: 'Display Ref. Customer in Delivery Note Report'
display_ref_order_dn_report
Boolean
default=False
args: 'Display Ref. Order in Delivery Note Report'
No public methods.
display_carrier_dn_report
Boolean
readonly=False
related='company_id.display_carrier_dn_report'
string='Display Carrier in Delivery Note Report'
display_delivery_method_dn_report
Boolean
readonly=False
related='company_id.display_delivery_method_dn_report'
string='Display Delivery Method in Delivery Note Report'
display_ref_customer_dn_report
Boolean
readonly=False
related='company_id.display_ref_customer_dn_report'
string='Display Ref. Customer in Delivery Note Report'
display_ref_order_dn_report
Boolean
readonly=False
related='company_id.display_ref_order_dn_report'
string='Display Ref. Order in Delivery Note Report'
group_required_partner_ref
Boolean
implied_group='l10n_it_delivery_note.group_required_partner_ref'
string='Make Partner Ref. in DN Mandatory'
group_use_advanced_delivery_notes
Boolean
implied_group='l10n_it_delivery_note.use_advanced_delivery_notes'
string='Use Advanced DN Features'
virtual_locations_root
Many2one → stock.location
config_parameter='stock.location.virtual_root'
default=_default_virtual_locations_root
string='Virtual locations root'
args: 'stock.location'
No public methods.
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
string='Reason of transport'
args: 'stock.picking.transport.reason'
No public methods.
step
Selection
default=_default_step
string='Current step'
args: WIZARD_STEPS
action_step_confirm(self)
goto(self, **kwargs)
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
string='Reason of transport'
args: 'stock.picking.transport.reason'
delivery_note_count
Integer
compute='_compute_delivery_notes'
delivery_note_ids
Many2many → stock.delivery.note
compute='_compute_delivery_notes'
args: 'stock.delivery.note'
goto_delivery_notes(self, **kwargs)
onchange_partner_id_shipping_info(self)
delivery_note_line_ids
One2many → stock.delivery.note.line
readonly=True
args: 'stock.delivery.note.line', 'sale_line_id'
delivery_picking_id
Many2one → stock.picking
copy=False
readonly=True
args: 'stock.picking'
fix_qty_to_invoice(self, new_qty_to_invoice=0)
has_picking(self)
is_invoiceable(self)
is_invoiced(self)
is_pickings_related(self, picking_ids)
need_to_be_invoiced(self)
retrieve_pickings_lines(self, picking_ids)
No new fields.
Public methods (0)No public methods.
active
Boolean
default=True
can_change_number
Boolean
compute='_compute_boolean_flags'
carrier_id
Many2one → res.partner
states=DONE_READONLY_STATE
string='Carrier'
tracking=True
args: 'res.partner'
company_id
Many2one → res.company
default=_default_company
required=True
args: 'res.company'
date
Date
copy=False
states=DRAFT_EDITABLE_STATE
delivery_carrier_id
Many2one
readonly=True
related='carrier_id'
delivery_goods_appearance_id
Many2one
readonly=True
related='goods_appearance_id'
delivery_gross_weight
Float
readonly=True
related='gross_weight'
delivery_gross_weight_uom_id
Many2one
default=None
domain=None
readonly=True
related='gross_weight_uom_id'
delivery_method_id
Many2one → delivery.carrier
states=DONE_READONLY_STATE
string='Delivery method'
tracking=True
args: 'delivery.carrier'
delivery_net_weight
Float
readonly=True
related='net_weight'
delivery_net_weight_uom_id
Many2one
default=None
domain=None
readonly=True
related='net_weight_uom_id'
delivery_note
Html
readonly=True
related='note'
delivery_packages
Integer
readonly=True
related='packages'
delivery_transport_condition_id
Many2one
readonly=True
related='transport_condition_id'
delivery_transport_datetime
Datetime
readonly=True
related='transport_datetime'
delivery_transport_method_id
Many2one
readonly=True
related='transport_method_id'
delivery_transport_reason_id
Many2one
readonly=True
related='transport_reason_id'
delivery_volume
Float
readonly=True
related='volume'
delivery_volume_uom_id
Many2one
default=None
domain=None
readonly=True
related='volume_uom_id'
goods_appearance_id
Many2one → stock.picking.goods.appearance
states=DONE_READONLY_STATE
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
gross_weight
Float
compute='_compute_weights'
readonly=False
states=DONE_READONLY_STATE
store=True
string='Gross weight'
gross_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
states=DONE_READONLY_STATE
string='Gross weight UoM'
args: 'uom.uom'
invoice_ids
Many2many → account.move
copy=False
string='Invoices'
args: 'account.move', 'stock_delivery_note_account_invoice_rel', 'delivery_note_id', 'invoice_id'
invoice_status
Selection
compute='_compute_invoice_status'
copy=False
default=<expr>
readonly=True
store=True
string='Invoice status'
args: INVOICE_STATUSES
line_ids
One2many → stock.delivery.note.line
string='Lines'
args: 'stock.delivery.note.line', 'delivery_note_id'
lines_have_customer_ref
Boolean
compute='_compute_lines_have_customer_ref'
lines_have_so_number
Boolean
compute='_compute_lines_have_so_number'
name
Char
copy=False
index=True
readonly=True
tracking=True
net_weight
Float
compute='_compute_weights'
readonly=False
states=DONE_READONLY_STATE
store=True
string='Net weight'
net_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
states=DONE_READONLY_STATE
string='Net weight UoM'
args: 'uom.uom'
note
Html
states=DONE_READONLY_STATE
string='Internal note'
packages
Integer
states=DONE_READONLY_STATE
partner_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
index=True
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Recipient'
tracking=True
args: 'res.partner'
partner_ref
Char
copy=False
index=True
states=DONE_READONLY_STATE
string='Partner reference'
tracking=True
partner_sender_id
Many2one → res.partner
default=_default_company
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Sender'
tracking=True
args: 'res.partner'
partner_shipping_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
required=True
states=DONE_READONLY_STATE
string='Shipping address'
tracking=True
args: 'res.partner'
picking_ids
One2many → stock.picking
check_company=True
string='Pickings'
args: 'stock.picking', 'delivery_note_id'
picking_type
Selection
compute='_compute_picking_type'
store=True
string='Picking type'
args: PICKING_TYPES
pickings_picker
Many2many → stock.picking
check_company=True
compute='_compute_get_pickings'
inverse='_inverse_set_pickings'
args: 'stock.picking'
print_prices
Boolean
related='type_id.print_prices'
store=True
string='Show prices on printed DN'
sale_count
Integer
compute='_compute_sales'
sale_ids
Many2many → sale.order
compute='_compute_sales'
args: 'sale.order'
sales_transport_check
Boolean
compute='_compute_sales'
default=True
sequence_id
Many2one → ir.sequence
copy=False
readonly=True
args: 'ir.sequence'
show_product_information
Boolean
compute='_compute_boolean_flags'
state
Selection
copy=False
default=<expr>
required=True
tracking=True
args: DELIVERY_NOTE_STATES
transport_condition_id
Many2one → stock.picking.transport.condition
states=DONE_READONLY_STATE
string='Condition of transport'
args: 'stock.picking.transport.condition'
transport_datetime
Datetime
states=DONE_READONLY_STATE
string='Transport date'
transport_method_id
Many2one → stock.picking.transport.method
states=DONE_READONLY_STATE
string='Method of transport'
args: 'stock.picking.transport.method'
transport_reason_id
Many2one → stock.picking.transport.reason
states=DONE_READONLY_STATE
string='Reason of transport'
args: 'stock.picking.transport.reason'
type_code
Selection
related='type_id.code'
store=True
string='Type of Operation'
type_id
Many2one → stock.delivery.note.type
check_company=True
default=_default_type
index=True
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Type'
args: 'stock.delivery.note.type'
volume
Float
states=DONE_READONLY_STATE
volume_uom_id
Many2one → uom.uom
default=_default_volume_uom
domain=_domain_volume_uom
states=DONE_READONLY_STATE
string='Volume UoM'
args: 'uom.uom'
action_cancel(self)
action_confirm(self)
action_done(self)
action_draft(self)
action_invoice(self, invoice_method=False)
action_print(self)
check_compliance(self, pickings)
create(self, vals_list)
ensure_annulability(self)
get_location_address(self, location_id)
goto(self, **kwargs)
goto_sales(self, **kwargs)
name_get(self)
unlink(self)
update_detail_lines(self)
update_transport_datetime(self)
write(self, vals)
date
Date
error_message
Html
compute='_compute_fields'
partner_id
Many2one → res.partner
compute='_compute_fields'
string='Recipient'
args: 'res.partner'
partner_sender_id
Many2one → res.partner
compute='_compute_fields'
string='Sender'
args: 'res.partner'
partner_shipping_id
Many2one → res.partner
string='Shipping address'
args: 'res.partner'
selected_picking_ids
Many2many → stock.picking
default=_default_stock_pickings
readonly=True
args: 'stock.picking'
type_id
Many2one → stock.delivery.note.type
domain=_domain_type_id
string='Type'
args: 'stock.delivery.note.type'
warning_message
Char
compute='_compute_fields'
readonly=True
args: 'Warning'
confirm(self)
delivery_note_id
Many2one → stock.delivery.note
readonly=True
args: 'stock.delivery.note'
warning_message
Text
readonly=True
confirm(self)
date
Date
default=_default_date
partner_shipping_id
Many2one → res.partner
required=True
args: 'res.partner'
picking_type
Selection
compute='_compute_picking_type'
string='Picking type'
args: PICKING_TYPES
type_id
Many2one → stock.delivery.note.type
default=_default_type
required=True
args: 'stock.delivery.note.type'
check_compliance(self, pickings)
confirm(self)
invoice_date
Date
default=_get_default_invoice_date
string='Invoice/Bill Date'
invoice_method
Selection
default='dn'
required=True
args: [('dn', 'Only DN'), ('service', 'With Service')]
create_invoices(self)
company_id
Many2one → res.company
index=True
readonly=True
related='delivery_note_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one → res.currency
default=_default_currency
required=True
string='Currency'
args: 'res.currency'
delivery_note_id
Many2one → stock.delivery.note
ondelete='cascade'
required=True
string='Delivery Note'
args: 'stock.delivery.note'
discount
Float
digits='Discount'
display_type
Selection
default=False
string='Line type'
args: LINE_DISPLAY_TYPES
invoice_status
Selection
copy=False
default=<expr>
required=True
string='Invoice status'
args: INVOICE_STATUSES
move_id
Many2one → stock.move
check_company=True
copy=False
readonly=True
string='Warehouse movement'
args: 'stock.move'
name
Text
required=True
string='Description'
price_unit
Float
digits='Product Price'
string='Unit price'
product_description
Text
related='product_id.description_sale'
product_id
Many2one → product.product
string='Product'
args: 'product.product'
product_qty
Float
default=1.0
digits='Product Unit of Measure'
string='Quantity'
product_uom_id
Many2one → uom.uom
default=_default_unit_uom
string='UoM'
args: 'uom.uom'
sale_line_id
Many2one → sale.order.line
copy=False
related='move_id.sale_line_id'
store=True
args: 'sale.order.line'
sale_order_client_ref
Char
compute='_compute_sale_order_client_ref'
store=True
args: 'Customer Reference'
sale_order_number
Char
compute='_compute_sale_order_number'
store=True
sequence
Integer
default=10
index=True
required=True
tax_ids
Many2many → account.tax
string='Taxes'
args: 'account.tax'
create(self, vals_list)
is_invoiceable(self)
sync_invoice_status(self)
write(self, vals)
date
Date
related='delivery_note_id.date'
delivery_note_id
Many2one → stock.delivery.note
required=True
string='Delivery Note'
args: 'stock.delivery.note'
partner_shipping_id
Many2one → res.partner
related='delivery_note_id.partner_shipping_id'
args: 'res.partner'
picking_ids
Many2many → stock.picking
compute='_compute_fields'
args: 'stock.picking'
type_id
Many2one → stock.delivery.note.type
related='delivery_note_id.type_id'
args: 'stock.delivery.note.type'
check_compliance(self, pickings)
confirm(self)
No new fields.
Public methods (2)get_virtual_locations_root(self)
is_virtual(self)
can_be_invoiced
Boolean
compute='_compute_boolean_flags'
carrier_partner_id
Many2one → res.partner
related='carrier_id.partner_id'
args: 'res.partner'
delivery_method_id
Many2one → delivery.carrier
related='delivery_note_id.delivery_method_id'
args: 'delivery.carrier'
delivery_note_carrier_id
Many2one → res.partner
related='delivery_note_id.carrier_id'
string='DN Carrier'
args: 'res.partner'
delivery_note_date
Date
related='delivery_note_id.date'
store=True
string='DN Date'
delivery_note_draft
Boolean
compute='_compute_boolean_flags'
delivery_note_exists
Boolean
compute='_compute_boolean_flags'
delivery_note_id
Many2one → stock.delivery.note
copy=False
string='Delivery Note'
args: 'stock.delivery.note'
delivery_note_note
Html
related='delivery_note_id.note'
delivery_note_partner_ref
Char
related='delivery_note_id.partner_ref'
delivery_note_partner_shipping_id
Many2one → res.partner
related='delivery_note_id.partner_shipping_id'
args: 'res.partner'
delivery_note_readonly
Boolean
compute='_compute_boolean_flags'
delivery_note_sequence_id
Many2one → ir.sequence
related='delivery_note_id.sequence_id'
args: 'ir.sequence'
delivery_note_state
Selection
related='delivery_note_id.state'
store=True
string='DN State'
delivery_note_type_code
Selection
related='delivery_note_type_id.code'
delivery_note_type_id
Many2one → stock.delivery.note.type
check_company=True
related='delivery_note_id.type_id'
args: 'stock.delivery.note.type'
delivery_note_visible
Boolean
compute='_compute_boolean_flags'
delivery_note_volume
Float
related='delivery_note_id.volume'
string='DN Volume'
delivery_note_volume_uom_id
Many2one → uom.uom
related='delivery_note_id.volume_uom_id'
args: 'uom.uom'
dn_supplier_date
Date
copy=False
string='Supplier DN Date'
dn_supplier_number
Char
copy=False
string='Supplier DN Number'
goods_appearance_id
Many2one → stock.picking.goods.appearance
related='delivery_note_id.goods_appearance_id'
args: 'stock.picking.goods.appearance'
gross_weight
Float
related='delivery_note_id.gross_weight'
gross_weight_uom_id
Many2one → uom.uom
related='delivery_note_id.gross_weight_uom_id'
args: 'uom.uom'
net_weight
Float
related='delivery_note_id.net_weight'
net_weight_uom_id
Many2one → uom.uom
related='delivery_note_id.net_weight_uom_id'
args: 'uom.uom'
packages
Integer
related='delivery_note_id.packages'
string='DN Packages'
picking_type_code
Selection
related='picking_type_id.code'
string='DN Operation Type'
transport_condition_id
Many2one → stock.picking.transport.condition
related='delivery_note_id.transport_condition_id'
args: 'stock.picking.transport.condition'
transport_datetime
Datetime
related='delivery_note_id.transport_datetime'
transport_method_id
Many2one → stock.picking.transport.method
related='delivery_note_id.transport_method_id'
args: 'stock.picking.transport.method'
transport_reason_id
Many2one → stock.picking.transport.reason
related='delivery_note_id.transport_reason_id'
args: 'stock.picking.transport.reason'
use_advanced_behaviour
Boolean
compute='_compute_boolean_flags'
use_delivery_note
Boolean
compute='_compute_boolean_flags'
valid_move_ids
One2many → stock.move
domain=[('state', '!=', CANCEL_MOVE_STATE)]
args: 'stock.move', 'picking_id'
action_delivery_note_cancel(self)
action_delivery_note_confirm(self)
action_delivery_note_create(self)
action_delivery_note_done(self)
action_delivery_note_draft(self)
action_delivery_note_invoice(self)
action_delivery_note_print(self)
action_delivery_note_select(self)
button_validate(self)
delivery_note_update_transport_datetime(self)
get_partners(self)
goto(self, **kwargs)
goto_delivery_note(self, **kwargs)
update_delivery_note_fields(self, vals)
write(self, vals)
No new fields.
Public methods (1)check_compliance(self, pickings)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/l10n-italy |
| GIT | |
| GIT | https://github.com/OCA/l10n-italy.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/l10n-italy/tree/14.0/l10n_it_delivery_note |
| VERSION | |
| VERSION | 3.6.7 |
| CATEGORY | |
| CATEGORY | Localization/Italy |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Marco Calcagni, Gianmarco Conte, Link IT Europe Srl |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Marco Calcagni, Gianmarco Conte, Link IT Europe Srl |
| COMMITTERS | |
| COMMITTERS | eLBati, GitHub, tafaRU, OCA Transbot, oca-travis, Weblate, OCA-git-bot, SimoRubi, sergiocorato, Alfredo Zamora, oca-ci, gianmarco, Docker @ kuntrawant, Giovanni, Alessandro Uffreduzzi, matteo.tognini, Marco Colombo, odooNextev, Borruso, Alessio Renda, PicchiSeba, Eduard Brahas, Daniel Chionne, Marco Calcagni |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/l10n-italy |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:40:58 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/delivery-carrier: - delivery_carrier_partner OCA/l10n-italy: - l10n_it_delivery_note_base odoo/odoo: - delivery - sale_stock - sale - sales_team - base - base_setup - web - bus - web_tour - payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - utm - stock_account - stock - barcodes - sale_management |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_view_move_form_view |
account.view.move.form | account.move | xpath | Inherits account.view_move_form |
assets_backend |
assets | ir.ui.view | qweb | Inherits web.assets_backend |
assets_frontend |
assets | ir.ui.view | qweb | Inherits web.assets_frontend |
delivery_note_report_main_template |
delivery_note_report_main_template | ir.ui.view | qweb | New |
delivery_note_report_template |
delivery_note_report_template | ir.ui.view | qweb | New |
portal_delivery_note_page |
Delivery Note Portal Template | ir.ui.view | qweb | Inherits portal.portal_sidebar |
portal_my_delivery_note |
Delivery notes | ir.ui.view | qweb | Inherits portal.portal_my_home |
portal_my_delivery_notes |
My Delivery Notes | ir.ui.view | qweb | New |
portal_my_home_menu_delivery_note |
Portal layout : delivery note menu entries | ir.ui.view | qweb | Inherits portal.portal_breadcrumbs |
res_config_settings_form_view |
res.config.settings.form | res.config.settings | xpath | Inherits stock.res_config_settings_view_form |
res_partner_form_view |
res.partner.form | res.partner | xpath | Inherits base.view_partner_form |
sale_advance_payment_inv_form_view |
sale.advance.payment.inv.form | sale.advance.payment.inv | xpath | Inherits sale.view_sale_advance_payment_inv |
sale_order_form_view |
sale.order.form | sale.order | xpath | Inherits sale_stock.view_order_form_inherit_sale_stock |
stock_delivery_note_confirm_form_view |
stock.delivery.note.confirm.form | stock.delivery.note.confirm.wizard | form | New |
stock_delivery_note_create_form_view |
stock.delivery.note.create.form | stock.delivery.note.create.wizard | form | New |
stock_delivery_note_form_view |
stock.delivery.note.form | stock.delivery.note | form | New |
stock_delivery_note_search_view |
stock.delivery.note.search | stock.delivery.note | search | New |
stock_delivery_note_select_form_view |
stock.delivery.note.select.form | stock.delivery.note.select.wizard | form | New |
stock_delivery_note_tree_view |
stock.delivery.note.tree | stock.delivery.note | tree | New |
stock_delivery_note_wizard_error_message_template |
stock_delivery_note_wizard_error_message_template | ir.ui.view | qweb | New |
stock_picking_form_view |
stock.picking.form | stock.picking | xpath | Inherits stock.view_picking_form |
stock_picking_search_view |
stock.picking.search | stock.picking | xpath | Inherits stock.view_picking_internal_search |
stock_picking_tree_view |
stock.picking.tree | stock.picking | field | Inherits stock.vpicktree |
view_picking_type_form |
stock.picking.type.form | stock.picking.type | field | Inherits stock.view_picking_type_form |
view_stock_delivery_note_invoice_wizard |
stock.delivery.note.invoice.form | stock.delivery.note.invoice.wizard | form | New |
delivery_note_count
Integer
compute='_compute_delivery_note_count'
delivery_note_ids
Many2many → stock.delivery.note
copy=False
string='Delivery Notes'
args: 'stock.delivery.note', 'stock_delivery_note_account_invoice_rel', 'invoice_id', 'delivery_note_id'
button_cancel(self)
goto_delivery_notes(self, **kwargs)
goto_invoice(self, **kwargs)
unlink(self)
update_delivery_note_lines(self)
delivery_note_id
Many2one → stock.delivery.note
copy=False
readonly=True
string='Delivery Note'
args: 'stock.delivery.note'
note_dn
Boolean
string='Note DN'
No public methods.
display_carrier_dn_report
Boolean
default=False
args: 'Display Carrier in Delivery Note Report'
display_delivery_method_dn_report
Boolean
default=False
args: 'Display Delivery Method in Delivery Note Report'
display_ref_customer_dn_report
Boolean
default=False
args: 'Display Ref. Customer in Delivery Note Report'
display_ref_order_dn_report
Boolean
default=False
args: 'Display Ref. Order in Delivery Note Report'
display_total_in_dn_with_prices
Boolean
default=False
args: 'Display total in DN with prices'
No public methods.
display_carrier_dn_report
Boolean
readonly=False
related='company_id.display_carrier_dn_report'
string='Display Carrier in Delivery Note Report'
display_delivery_method_dn_report
Boolean
readonly=False
related='company_id.display_delivery_method_dn_report'
string='Display Delivery Method in Delivery Note Report'
display_ref_customer_dn_report
Boolean
readonly=False
related='company_id.display_ref_customer_dn_report'
string='Display Ref. Customer in Delivery Note Report'
display_ref_order_dn_report
Boolean
readonly=False
related='company_id.display_ref_order_dn_report'
string='Display Ref. Order in Delivery Note Report'
display_total_in_dn_with_prices
Boolean
readonly=False
related='company_id.display_total_in_dn_with_prices'
group_required_partner_ref
Boolean
implied_group='l10n_it_delivery_note.group_required_partner_ref'
string='Make Partner Ref. in DN Mandatory'
group_use_advanced_delivery_notes
Boolean
implied_group='l10n_it_delivery_note.use_advanced_delivery_notes'
string='Use Advanced DN Features'
virtual_locations_root
Many2one → stock.location
config_parameter='stock.location.virtual_root'
default=_default_virtual_locations_root
string='Virtual locations root'
args: 'stock.location'
No public methods.
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
string='Reason of transport'
args: 'stock.picking.transport.reason'
No public methods.
step
Selection
default=_default_step
string='Current step'
args: WIZARD_STEPS
action_step_confirm(self)
goto(self, **kwargs)
sale_order_ids(self)
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
default=False
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
default=False
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
default=False
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
default=False
string='Reason of transport'
args: 'stock.picking.transport.reason'
onchange_partner_id_shipping_info(self)
delivery_note_line_ids
One2many → stock.delivery.note.line
readonly=True
args: 'stock.delivery.note.line', 'sale_line_id'
delivery_picking_id
Many2one → stock.picking
copy=False
readonly=True
args: 'stock.picking'
fix_qty_to_invoice(self, new_qty_to_invoice=0)
has_picking(self)
is_invoiceable(self)
is_invoiced(self)
is_pickings_related(self, picking_ids)
need_to_be_invoiced(self)
retrieve_pickings_lines(self, picking_ids)
No new fields.
Public methods (0)No public methods.
active
Boolean
default=True
amount_total
Monetary
compute='_compute_amount_total'
currency_field='currency_id'
store=True
args: 'Total Amount'
can_change_number
Boolean
compute='_compute_boolean_flags'
carrier_id
Many2one → res.partner
states=DONE_READONLY_STATE
string='Carrier'
tracking=True
args: 'res.partner'
company_id
Many2one → res.company
default=_default_company
required=True
args: 'res.company'
currency_id
Many2one → res.currency
compute='_compute_currency_id'
args: 'res.currency'
date
Date
copy=False
states=DRAFT_EDITABLE_STATE
string='Date'
delivery_method_id
Many2one → delivery.carrier
states=DONE_READONLY_STATE
string='Delivery method'
tracking=True
args: 'delivery.carrier'
goods_appearance_id
Many2one → stock.picking.goods.appearance
states=DONE_READONLY_STATE
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
gross_weight
Float
compute='_compute_weights'
readonly=False
states=DONE_READONLY_STATE
store=True
string='Gross weight'
gross_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
states=DONE_READONLY_STATE
string='Gross weight UoM'
args: 'uom.uom'
invoice_ids
Many2many → account.move
copy=False
string='Invoices'
args: 'account.move', 'stock_delivery_note_account_invoice_rel', 'delivery_note_id', 'invoice_id'
invoice_status
Selection
compute='_compute_invoice_status'
copy=False
default=<expr>
readonly=True
store=True
string='Invoice status'
args: INVOICE_STATUSES
line_ids
One2many → stock.delivery.note.line
string='Lines'
args: 'stock.delivery.note.line', 'delivery_note_id'
lines_have_customer_ref
Boolean
compute='_compute_lines_have_customer_ref'
lines_have_so_number
Boolean
compute='_compute_lines_have_so_number'
name
Char
copy=False
index=True
readonly=True
string='Name'
tracking=True
net_weight
Float
compute='_compute_weights'
readonly=False
states=DONE_READONLY_STATE
store=True
string='Net weight'
net_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
states=DONE_READONLY_STATE
string='Net weight UoM'
args: 'uom.uom'
note
Html
states=DONE_READONLY_STATE
string='Internal note'
packages
Integer
states=DONE_READONLY_STATE
string='Packages'
partner_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
index=True
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Recipient'
tracking=True
args: 'res.partner'
partner_ref
Char
copy=False
index=True
states=DONE_READONLY_STATE
string='Partner reference'
tracking=True
partner_sender_id
Many2one → res.partner
default=_default_company
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Sender'
tracking=True
args: 'res.partner'
partner_shipping_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
required=True
states=DONE_READONLY_STATE
string='Shipping address'
tracking=True
args: 'res.partner'
picking_ids
One2many → stock.picking
check_company=True
string='Pickings'
args: 'stock.picking', 'delivery_note_id'
picking_type
Selection
compute='_compute_picking_type'
store=True
string='Picking type'
args: PICKING_TYPES
pickings_picker
Many2many → stock.picking
check_company=True
compute='_compute_get_pickings'
inverse='_inverse_set_pickings'
args: 'stock.picking'
print_prices
Boolean
related='type_id.print_prices'
store=True
string='Show prices on printed DN'
sale_count
Integer
compute='_compute_sales'
sale_ids
Many2many → sale.order
compute='_compute_sales'
args: 'sale.order'
sales_transport_check
Boolean
compute='_compute_sales'
default=True
sequence_id
Many2one → ir.sequence
copy=False
readonly=True
args: 'ir.sequence'
show_discount
Boolean
compute='_compute_show_discount'
show_product_information
Boolean
compute='_compute_boolean_flags'
state
Selection
copy=False
default=<expr>
required=True
string='State'
tracking=True
args: DELIVERY_NOTE_STATES
transport_condition_id
Many2one → stock.picking.transport.condition
states=DONE_READONLY_STATE
string='Condition of transport'
args: 'stock.picking.transport.condition'
transport_datetime
Datetime
states=DONE_READONLY_STATE
string='Transport date'
transport_method_id
Many2one → stock.picking.transport.method
states=DONE_READONLY_STATE
string='Method of transport'
args: 'stock.picking.transport.method'
transport_reason_id
Many2one → stock.picking.transport.reason
states=DONE_READONLY_STATE
string='Reason of transport'
args: 'stock.picking.transport.reason'
type_code
Selection
related='type_id.code'
store=True
string='Type of Operation'
type_id
Many2one → stock.delivery.note.type
check_company=True
default=_default_type
index=True
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Type'
args: 'stock.delivery.note.type'
untaxed_amount_total
Monetary
compute='_compute_amount_total'
currency_field='currency_id'
store=True
args: 'Untaxed Total Amount'
volume
Float
states=DONE_READONLY_STATE
string='Volume'
volume_uom_id
Many2one → uom.uom
default=_default_volume_uom
domain=_domain_volume_uom
states=DONE_READONLY_STATE
string='Volume UoM'
args: 'uom.uom'
action_cancel(self)
action_confirm(self)
action_done(self)
action_draft(self)
action_invoice(self, invoice_method=False)
action_print(self)
check_compliance(self, pickings)
create(self, vals)
ensure_annulability(self)
get_location_address(self, location_id)
goto(self, **kwargs)
goto_sales(self, **kwargs)
name_get(self)
unlink(self)
update_detail_lines(self)
update_transport_datetime(self)
write(self, vals)
date
Date
string='Date'
error_message
Html
compute='_compute_fields'
partner_id
Many2one → res.partner
compute='_compute_fields'
string='Recipient'
args: 'res.partner'
partner_sender_id
Many2one → res.partner
compute='_compute_fields'
string='Sender'
args: 'res.partner'
partner_shipping_id
Many2one → res.partner
compute='_compute_fields'
string='Shipping address'
args: 'res.partner'
selected_picking_ids
Many2many → stock.picking
default=_default_stock_pickings
readonly=True
args: 'stock.picking'
type_id
Many2one → stock.delivery.note.type
domain=_domain_type_id
string='Type'
args: 'stock.delivery.note.type'
warning_message
Char
compute='_compute_fields'
readonly=True
args: 'Warning'
confirm(self)
delivery_note_id
Many2one → stock.delivery.note
readonly=True
args: 'stock.delivery.note'
warning_message
Text
readonly=True
args: 'Warning Message'
confirm(self)
date
Date
default=_default_date
picking_type
Selection
compute='_compute_picking_type'
string='Picking type'
args: PICKING_TYPES
type_id
Many2one → stock.delivery.note.type
default=_default_type
required=True
args: 'stock.delivery.note.type'
check_compliance(self, pickings)
confirm(self)
invoice_date
Date
default=_get_default_invoice_date
string='Invoice/Bill Date'
invoice_method
Selection
default='dn'
required=True
string='Invoice Method'
args: [('dn', 'Only DN'), ('service', 'With Service')]
create_invoices(self)
amount
Monetary
compute='_compute_amount'
store=True
company_id
Many2one → res.company
index=True
readonly=True
related='delivery_note_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one → res.currency
default=_default_currency
required=True
string='Currency'
args: 'res.currency'
delivery_note_id
Many2one → stock.delivery.note
ondelete='cascade'
required=True
string='Delivery Note'
args: 'stock.delivery.note'
discount
Float
digits='Discount'
string='Discount'
display_type
Selection
default=False
string='Line type'
args: LINE_DISPLAY_TYPES
invoice_status
Selection
copy=False
default=<expr>
required=True
string='Invoice status'
args: INVOICE_STATUSES
move_id
Many2one → stock.move
check_company=True
copy=False
readonly=True
string='Warehouse movement'
args: 'stock.move'
name
Text
required=True
string='Description'
price_unit
Float
digits='Product Price'
string='Unit price'
product_description
Text
related='product_id.description_sale'
product_id
Many2one → product.product
string='Product'
args: 'product.product'
product_qty
Float
default=1.0
digits='Product Unit of Measure'
string='Quantity'
product_uom_id
Many2one → uom.uom
default=_default_unit_uom
string='UoM'
args: 'uom.uom'
sale_line_id
Many2one → sale.order.line
copy=False
related='move_id.sale_line_id'
store=True
args: 'sale.order.line'
sale_order_client_ref
Char
compute='_compute_sale_order_client_ref'
store=True
args: 'Customer Reference'
sale_order_number
Char
compute='_compute_sale_order_number'
store=True
args: 'Sale Order Number'
sequence
Integer
default=10
index=True
required=True
string='Sequence'
tax_ids
Many2many → account.tax
string='Taxes'
args: 'account.tax'
untaxed_amount
Monetary
compute='_compute_amount'
store=True
create(self, vals)
is_invoiceable(self)
sync_invoice_status(self)
write(self, vals)
date
Date
related='delivery_note_id.date'
delivery_note_id
Many2one → stock.delivery.note
required=True
string='Delivery Note'
args: 'stock.delivery.note'
partner_shipping_id
Many2one → res.partner
related='delivery_note_id.partner_shipping_id'
args: 'res.partner'
picking_ids
Many2many → stock.picking
compute='_compute_fields'
args: 'stock.picking'
type_id
Many2one → stock.delivery.note.type
related='delivery_note_id.type_id'
args: 'stock.delivery.note.type'
check_compliance(self, pickings)
confirm(self)
No new fields.
Public methods (2)get_virtual_locations_root(self)
is_virtual(self)
can_be_invoiced
Boolean
compute='_compute_boolean_flags'
carrier_partner_id
Many2one → res.partner
related='carrier_id.partner_id'
args: 'res.partner'
delivery_method_id
Many2one → delivery.carrier
related='delivery_note_id.delivery_method_id'
args: 'delivery.carrier'
delivery_note_carrier_id
Many2one → res.partner
related='delivery_note_id.carrier_id'
string='DN Carrier'
args: 'res.partner'
delivery_note_date
Date
related='delivery_note_id.date'
store=True
string='DN Date'
delivery_note_draft
Boolean
compute='_compute_boolean_flags'
delivery_note_exists
Boolean
compute='_compute_boolean_flags'
delivery_note_id
Many2one → stock.delivery.note
copy=False
string='Delivery Note'
args: 'stock.delivery.note'
delivery_note_note
Html
related='delivery_note_id.note'
delivery_note_partner_ref
Char
related='delivery_note_id.partner_ref'
delivery_note_partner_shipping_id
Many2one → res.partner
related='delivery_note_id.partner_shipping_id'
args: 'res.partner'
delivery_note_readonly
Boolean
compute='_compute_boolean_flags'
delivery_note_sequence_id
Many2one → ir.sequence
related='delivery_note_id.sequence_id'
args: 'ir.sequence'
delivery_note_state
Selection
related='delivery_note_id.state'
store=True
string='DN State'
delivery_note_type_code
Selection
related='delivery_note_type_id.code'
delivery_note_type_id
Many2one → stock.delivery.note.type
check_company=True
related='delivery_note_id.type_id'
args: 'stock.delivery.note.type'
delivery_note_visible
Boolean
compute='_compute_boolean_flags'
delivery_note_volume
Float
related='delivery_note_id.volume'
string='DN Volume'
delivery_note_volume_uom_id
Many2one → uom.uom
related='delivery_note_id.volume_uom_id'
args: 'uom.uom'
dn_supplier_date
Date
copy=False
string='Supplier DN Date'
dn_supplier_number
Char
copy=False
string='Supplier DN Number'
goods_appearance_id
Many2one → stock.picking.goods.appearance
related='delivery_note_id.goods_appearance_id'
args: 'stock.picking.goods.appearance'
gross_weight
Float
related='delivery_note_id.gross_weight'
gross_weight_uom_id
Many2one → uom.uom
related='delivery_note_id.gross_weight_uom_id'
args: 'uom.uom'
net_weight
Float
related='delivery_note_id.net_weight'
net_weight_uom_id
Many2one → uom.uom
related='delivery_note_id.net_weight_uom_id'
args: 'uom.uom'
packages
Integer
related='delivery_note_id.packages'
string='DN Packages'
picking_type_code
Selection
related='picking_type_id.code'
string='DN Operation Type'
transport_condition_id
Many2one → stock.picking.transport.condition
related='delivery_note_id.transport_condition_id'
args: 'stock.picking.transport.condition'
transport_datetime
Datetime
related='delivery_note_id.transport_datetime'
transport_method_id
Many2one → stock.picking.transport.method
related='delivery_note_id.transport_method_id'
args: 'stock.picking.transport.method'
transport_reason_id
Many2one → stock.picking.transport.reason
related='delivery_note_id.transport_reason_id'
args: 'stock.picking.transport.reason'
use_advanced_behaviour
Boolean
compute='_compute_boolean_flags'
use_delivery_note
Boolean
compute='_compute_boolean_flags'
valid_move_ids
One2many → stock.move
domain=[('state', '!=', CANCEL_MOVE_STATE)]
args: 'stock.move', 'picking_id'
action_delivery_note_cancel(self)
action_delivery_note_confirm(self)
action_delivery_note_create(self)
action_delivery_note_done(self)
action_delivery_note_draft(self)
action_delivery_note_invoice(self)
action_delivery_note_print(self)
action_delivery_note_select(self)
button_validate(self)
delivery_note_update_transport_datetime(self)
get_partners(self)
goto(self, **kwargs)
goto_delivery_note(self, **kwargs)
update_delivery_note_fields(self, vals)
write(self, vals)
No new fields.
Public methods (1)check_compliance(self, pickings)
prevent_dn_create
Boolean
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/l10n-italy |
| GIT | |
| GIT | https://github.com/OCA/l10n-italy.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/l10n-italy/tree/12.0/l10n_it_delivery_note |
| VERSION | |
| VERSION | 1.2.1 |
| CATEGORY | |
| CATEGORY | Localization |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Marco Calcagni, Gianmarco Conte, Link IT Europe Srl |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Marco Calcagni, Gianmarco Conte, Link IT Europe Srl |
| COMMITTERS | |
| COMMITTERS | GitHub, tafaRU, OCA Transbot, oca-travis, Weblate, OCA-git-bot, sergiocorato, Simone Rubino, oca-ci, gborruso@dinamicheaziendali.it, Docker @ kuntrawant, Giovanni, Marco Colombo |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/l10n-italy/tree/12.0/l10n_it_delivery_note |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:29:17 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/l10n-italy: - l10n_it_delivery_note_base odoo/odoo: - delivery - sale_stock - sale - sales_team - base - base_setup - web - bus - web_tour - payment - account - product - decimal_precision - uom - analytic - portal - http_routing - digest - stock_account - stock - barcodes - sale_management |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_invoice_form_view |
account.invoice.form | account.invoice | xpath | Inherits account.invoice_form |
assets_backend |
assets | ir.ui.view | qweb | Inherits web.assets_backend |
delivery_note_report_main_template |
delivery_note_report_main_template | ir.ui.view | qweb | New |
delivery_note_report_template |
delivery_note_report_template | ir.ui.view | qweb | New |
res_config_settings_form_view |
res.config.settings.form | res.config.settings | xpath | Inherits stock.res_config_settings_view_form |
res_partner_form_view |
res.partner.form | res.partner | xpath | Inherits base.view_partner_form |
sale_advance_payment_inv_form_view |
sale.advance.payment.inv.form | sale.advance.payment.inv | xpath | Inherits sale.view_sale_advance_payment_inv |
sale_order_form_view |
sale.order.form | sale.order | xpath | Inherits sale_stock.view_order_form_inherit_sale_stock |
stock_delivery_note_create_form_view |
stock.delivery.note.create.form | stock.delivery.note.create.wizard | form | New |
stock_delivery_note_form_view |
stock.delivery.note.form | stock.delivery.note | form | New |
stock_delivery_note_search_view |
stock.delivery.note.search | stock.delivery.note | search | New |
stock_delivery_note_select_form_view |
stock.delivery.note.select.form | stock.delivery.note.select.wizard | form | New |
stock_delivery_note_tree_view |
stock.delivery.note.tree | stock.delivery.note | tree | New |
stock_delivery_note_wizard_error_message_template |
stock_delivery_note_wizard_error_message_template | ir.ui.view | qweb | New |
stock_picking_form_view |
stock.picking.form | stock.picking | data | Inherits stock.view_picking_form |
stock_picking_search_view |
stock.picking.search | stock.picking | xpath | Inherits stock.view_picking_internal_search |
stock_picking_tree_view |
stock.picking.tree | stock.picking | field | Inherits stock.vpicktree |
view_stock_delivery_note_invoice_wizard |
stock.delivery.note.invoice.form | stock.delivery.note.invoice.wizard | form | New |
delivery_note_count
Integer
compute='_compute_delivery_note_count'
delivery_note_ids
Many2many → stock.delivery.note
copy=False
string='Delivery Notes'
args: 'stock.delivery.note', 'stock_delivery_note_account_invoice_rel', 'invoice_id', 'delivery_note_id'
goto_delivery_notes(self, **kwargs)
goto_invoice(self, **kwargs)
unlink(self)
update_delivery_note_lines(self)
delivery_note_id
Many2one → stock.delivery.note
copy=False
readonly=True
string='Delivery Note'
args: 'stock.delivery.note'
note_dn
Boolean
string='Note DN'
No public methods.
draft_delivery_note_invoicing_notify
Boolean
string="Notify if delivery note isn't validated"
No public methods.
draft_delivery_note_invoicing_notify
Boolean
readonly=False
related='company_id.draft_delivery_note_invoicing_notify'
group_use_advanced_delivery_notes
Boolean
implied_group='l10n_it_delivery_note.use_advanced_delivery_notes'
string='Use Advanced DN Features'
No public methods.
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
string='Reason of transport'
args: 'stock.picking.transport.reason'
No public methods.
step
Selection
default=_default_step
string='Current step'
args: WIZARD_STEPS
action_step_confirm(self)
goto(self, **kwargs)
sale_order_ids(self)
default_goods_appearance_id
Many2one → stock.picking.goods.appearance
default=False
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
default_transport_condition_id
Many2one → stock.picking.transport.condition
default=False
string='Condition of transport'
args: 'stock.picking.transport.condition'
default_transport_method_id
Many2one → stock.picking.transport.method
default=False
string='Method of transport'
args: 'stock.picking.transport.method'
default_transport_reason_id
Many2one → stock.picking.transport.reason
default=False
string='Reason of transport'
args: 'stock.picking.transport.reason'
delivery_note_count
Integer
compute='_compute_delivery_notes'
delivery_note_ids
Many2many → stock.delivery.note
compute='_compute_delivery_notes'
args: 'stock.delivery.note'
action_invoice_create(self, grouped=False, final=False)
goto_delivery_notes(self, **kwargs)
onchange_partner_id_shipping_info(self)
delivery_note_line_ids
One2many → stock.delivery.note.line
readonly=True
args: 'stock.delivery.note.line', 'sale_line_id'
delivery_picking_id
Many2one → stock.picking
copy=False
readonly=True
args: 'stock.picking'
fix_qty_to_invoice(self, new_qty_to_invoice=0)
has_picking(self)
is_invoiceable(self)
is_invoiced(self)
is_pickings_related(self, picking_ids)
need_to_be_invoiced(self)
retrieve_pickings_lines(self, picking_ids)
No new fields.
Public methods (0)No public methods.
active
Boolean
default=True
can_change_number
Boolean
compute='_compute_boolean_flags'
carrier_id
Many2one → res.partner
states=DONE_READONLY_STATE
string='Carrier'
track_visibility='onchange'
args: 'res.partner'
company_id
Many2one → res.company
default=_default_company
required=True
args: 'res.company'
date
Date
copy=False
states=DRAFT_EDITABLE_STATE
string='Date'
delivery_method_id
Many2one → delivery.carrier
states=DONE_READONLY_STATE
string='Delivery method'
track_visibility='onchange'
args: 'delivery.carrier'
display_name
Char
compute='_compute_display_name_function'
copy=False
index=True
store=True
goods_appearance_id
Many2one → stock.picking.goods.appearance
states=DONE_READONLY_STATE
string='Appearance of goods'
args: 'stock.picking.goods.appearance'
gross_weight
Float
compute='_compute_weights'
readonly=False
states=DONE_READONLY_STATE
store=True
string='Gross weight'
gross_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
states=DONE_READONLY_STATE
string='Gross weight UoM'
args: 'uom.uom'
invoice_ids
Many2many → account.invoice
copy=False
string='Invoices'
args: 'account.invoice', 'stock_delivery_note_account_invoice_rel', 'delivery_note_id', 'invoice_id'
invoice_status
Selection
compute='_compute_invoice_status'
copy=False
default=<expr>
readonly=True
store=True
string='Invoice status'
args: INVOICE_STATUSES
line_ids
One2many → stock.delivery.note.line
string='Lines'
args: 'stock.delivery.note.line', 'delivery_note_id'
name
Char
copy=False
index=True
readonly=True
string='Name'
track_visibility='onchange'
net_weight
Float
compute='_compute_weights'
readonly=False
states=DONE_READONLY_STATE
store=True
string='Net weight'
net_weight_uom_id
Many2one → uom.uom
default=_default_weight_uom
domain=_domain_weight_uom
states=DONE_READONLY_STATE
string='Net weight UoM'
args: 'uom.uom'
note
Html
states=DONE_READONLY_STATE
string='Internal note'
packages
Integer
states=DONE_READONLY_STATE
string='Packages'
partner_id
Many2one → res.partner
index=True
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Recipient'
track_visibility='onchange'
args: 'res.partner'
partner_ref
Char
copy=False
index=True
states=DONE_READONLY_STATE
string='Partner reference'
track_visibility='onchange'
partner_sender_id
Many2one → res.partner
default=_default_company
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Sender'
track_visibility='onchange'
args: 'res.partner'
partner_shipping_id
Many2one → res.partner
required=True
states=DONE_READONLY_STATE
string='Shipping address'
track_visibility='onchange'
args: 'res.partner'
picking_ids
One2many → stock.picking
string='Pickings'
args: 'stock.picking', 'delivery_note_id'
picking_type
Selection
compute='_compute_picking_type'
store=True
string='Picking type'
args: PICKING_TYPES
pickings_picker
Many2many → stock.picking
compute='_compute_get_pickings'
inverse='_inverse_set_pickings'
args: 'stock.picking'
print_prices
Boolean
related='type_id.print_prices'
store=True
string='Show prices on printed DN'
sale_count
Integer
compute='_compute_sales'
sale_ids
Many2many → sale.order
compute='_compute_sales'
args: 'sale.order'
sales_transport_check
Boolean
compute='_compute_sales'
default=True
sequence_id
Many2one → ir.sequence
copy=False
readonly=True
args: 'ir.sequence'
show_product_information
Boolean
compute='_compute_boolean_flags'
state
Selection
copy=False
default=<expr>
required=True
string='State'
track_visibility='onchange'
args: DELIVERY_NOTE_STATES
transport_condition_id
Many2one → stock.picking.transport.condition
states=DONE_READONLY_STATE
string='Condition of transport'
args: 'stock.picking.transport.condition'
transport_datetime
Datetime
states=DONE_READONLY_STATE
string='Transport date'
transport_method_id
Many2one → stock.picking.transport.method
states=DONE_READONLY_STATE
string='Method of transport'
args: 'stock.picking.transport.method'
transport_reason_id
Many2one → stock.picking.transport.reason
states=DONE_READONLY_STATE
string='Reason of transport'
args: 'stock.picking.transport.reason'
type_code
Selection
related='type_id.code'
store=True
string='Type of Operation'
type_id
Many2one → stock.delivery.note.type
default=_default_type
index=True
readonly=True
required=True
states=DRAFT_EDITABLE_STATE
string='Type'
args: 'stock.delivery.note.type'
volume
Float
states=DONE_READONLY_STATE
string='Volume'
volume_uom_id
Many2one → uom.uom
default=_default_volume_uom
domain=_domain_volume_uom
states=DONE_READONLY_STATE
string='Volume UoM'
args: 'uom.uom'
action_cancel(self)
action_confirm(self)
action_done(self)
action_draft(self)
action_invoice(self, invoice_method=False)
action_print(self)
check_compliance(self, pickings)
create(self, vals)
ensure_annulability(self)
get_location_address(self, location_id)
goto(self, **kwargs)
goto_sales(self, **kwargs)
unlink(self)
update_detail_lines(self)
update_transport_datetime(self)
write(self, vals)
date
Date
string='Date'
error_message
Html
compute='_compute_fields'
partner_id
Many2one → res.partner
compute='_compute_fields'
string='Recipient'
args: 'res.partner'
partner_sender_id
Many2one → res.partner
compute='_compute_fields'
string='Sender'
args: 'res.partner'
partner_shipping_id
Many2one → res.partner
string='Shipping address'
args: 'res.partner'
selected_picking_ids
Many2many → stock.picking
default=_default_stock_pickings
readonly=True
args: 'stock.picking'
type_id
Many2one → stock.delivery.note.type
string='Type'
args: 'stock.delivery.note.type'
confirm(self)
date
Date
default=_default_date
partner_shipping_id
Many2one → res.partner
required=True
args: 'res.partner'
type_id
Many2one → stock.delivery.note.type
default=_default_type
required=True
args: 'stock.delivery.note.type'
check_compliance(self, pickings)
confirm(self)
invoice_date
Date
default=_get_default_invoice_date
string='Invoice/Bill Date'
invoice_method
Selection
default='dn'
required=True
string='Invoice Method'
args: [('dn', 'Only DN'), ('service', 'With Service')]
create_invoices(self)
currency_id
Many2one → res.currency
default=_default_currency
required=True
string='Currency'
args: 'res.currency'
delivery_note_id
Many2one → stock.delivery.note
ondelete='cascade'
required=True
string='Delivery Note'
args: 'stock.delivery.note'
discount
Float
digits=dp.get_precision('Discount')
string='Discount'
display_type
Selection
default=False
string='Line type'
args: LINE_DISPLAY_TYPES
invoice_status
Selection
copy=False
default=<expr>
required=True
string='Invoice status'
args: INVOICE_STATUSES
move_id
Many2one → stock.move
copy=False
readonly=True
string='Warehouse movement'
args: 'stock.move'
name
Text
required=True
string='Description'
price_unit
Monetary
currency_field='currency_id'
digits=dp.get_precision('Product Price')
string='Unit price'
product_description
Text
related='product_id.description_sale'
product_id
Many2one → product.product
string='Product'
args: 'product.product'
product_qty
Float
default=1.0
digits=dp.get_precision('Product Unit of Measure')
string='Quantity'
product_uom_id
Many2one → uom.uom
default=_default_unit_uom
string='UoM'
args: 'uom.uom'
sale_line_id
Many2one → sale.order.line
copy=False
related='move_id.sale_line_id'
store=True
args: 'sale.order.line'
sequence
Integer
default=10
index=True
required=True
string='Sequence'
tax_ids
Many2many → account.tax
string='Taxes'
args: 'account.tax'
create(self, vals)
is_invoiceable(self)
sync_invoice_status(self)
write(self, vals)
date
Date
related='delivery_note_id.date'
delivery_note_id
Many2one → stock.delivery.note
required=True
string='Delivery Note'
args: 'stock.delivery.note'
partner_shipping_id
Many2one → res.partner
related='delivery_note_id.partner_shipping_id'
args: 'res.partner'
picking_ids
Many2many → stock.picking
compute='_compute_fields'
args: 'stock.picking'
type_id
Many2one → stock.delivery.note.type
related='delivery_note_id.type_id'
args: 'stock.delivery.note.type'
check_compliance(self, pickings)
confirm(self)
can_be_invoiced
Boolean
compute='_compute_boolean_flags'
delivery_method_id
Many2one → delivery.carrier
related='delivery_note_id.delivery_method_id'
args: 'delivery.carrier'
delivery_note_carrier_id
Many2one → res.partner
related='delivery_note_id.carrier_id'
string='DN Carrier'
args: 'res.partner'
delivery_note_date
Date
related='delivery_note_id.date'
string='DN Date'
delivery_note_draft
Boolean
compute='_compute_boolean_flags'
delivery_note_exists
Boolean
compute='_compute_boolean_flags'
delivery_note_id
Many2one → stock.delivery.note
copy=False
string='Delivery Note'
args: 'stock.delivery.note'
delivery_note_note
Html
related='delivery_note_id.note'
delivery_note_partner_ref
Char
related='delivery_note_id.partner_ref'
delivery_note_partner_shipping_id
Many2one → res.partner
related='delivery_note_id.partner_shipping_id'
args: 'res.partner'
delivery_note_readonly
Boolean
compute='_compute_boolean_flags'
delivery_note_sequence_id
Many2one → ir.sequence
related='delivery_note_id.sequence_id'
args: 'ir.sequence'
delivery_note_state
Selection
related='delivery_note_id.state'
string='DN State'
delivery_note_type_code
Selection
related='delivery_note_type_id.code'
delivery_note_type_id
Many2one → stock.delivery.note.type
related='delivery_note_id.type_id'
args: 'stock.delivery.note.type'
delivery_note_visible
Boolean
compute='_compute_boolean_flags'
delivery_note_volume
Float
related='delivery_note_id.volume'
string='DN Volume'
delivery_note_volume_uom_id
Many2one → uom.uom
related='delivery_note_id.volume_uom_id'
args: 'uom.uom'
goods_appearance_id
Many2one → stock.picking.goods.appearance
related='delivery_note_id.goods_appearance_id'
args: 'stock.picking.goods.appearance'
gross_weight
Float
related='delivery_note_id.gross_weight'
gross_weight_uom_id
Many2one → uom.uom
related='delivery_note_id.gross_weight_uom_id'
args: 'uom.uom'
net_weight
Float
related='delivery_note_id.net_weight'
net_weight_uom_id
Many2one → uom.uom
related='delivery_note_id.net_weight_uom_id'
args: 'uom.uom'
packages
Integer
related='delivery_note_id.packages'
string='DN Packages'
picking_type_code
Selection
related='picking_type_id.code'
string='DN Operation Type'
transport_condition_id
Many2one → stock.picking.transport.condition
related='delivery_note_id.transport_condition_id'
args: 'stock.picking.transport.condition'
transport_datetime
Datetime
related='delivery_note_id.transport_datetime'
transport_method_id
Many2one → stock.picking.transport.method
related='delivery_note_id.transport_method_id'
args: 'stock.picking.transport.method'
transport_reason_id
Many2one → stock.picking.transport.reason
related='delivery_note_id.transport_reason_id'
args: 'stock.picking.transport.reason'
use_advanced_behaviour
Boolean
compute='_compute_boolean_flags'
use_delivery_note
Boolean
compute='_compute_boolean_flags'
valid_move_ids
One2many → stock.move
domain=[('state', '!=', CANCEL_MOVE_STATE)]
args: 'stock.move', 'picking_id'
action_delivery_note_cancel(self)
action_delivery_note_confirm(self)
action_delivery_note_create(self)
action_delivery_note_done(self)
action_delivery_note_draft(self)
action_delivery_note_invoice(self)
action_delivery_note_print(self)
action_delivery_note_select(self)
action_done(self)
delivery_note_update_transport_datetime(self)
get_partners(self)
goto(self, **kwargs)
goto_delivery_note(self, **kwargs)
update_delivery_note_fields(self, vals)
write(self, vals)
No new fields.
Public methods (1)check_compliance(self, pickings)
| STATUS | |
|---|---|
| STATUS | Open migration PR - not merged yet for this version |
| REPOSITORY | |
| REPOSITORY | OCA/l10n-italy |
| PULL REQUEST | |
| PULL REQUEST | [19.0][MIG] l10n_it_delivery_note: Migration to 19.0 (#5081) |