Repository
OCA/delivery-carrier · module folder · Try on Runboat
Module version
1.0.8
Category
Delivery
Folder size
3.9 MB
License
AGPL-3
Application
Yes
Auto-installable
No
Website
https://github.com/OCA/delivery-carrier
Last tracking update
2026-08-07 07:31:53
Authors
Camptocamp, Odoo Community Association (OCA)
Maintainers
Camptocamp
Committers
Yannick Vaucher, Guewen Baconnier, Pedro M. Baeza, Iryna Vyshnevska, Weblate, OCA Transbot, OCA-git-bot, oca-travis, oca-ci, Telmo Santos
Odoo dependencies
Python dependencies
unidecode
System dependencies
None
Required by
None
Description

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
delivery_carrier_option_view_form delivery_base.delivery_carrier_option.view_form delivery.carrier.option form Inherits base_delivery_carrier_label.delivery_carrier_option_view_form
postlogistics_license_view_list postlogistics.license.view_list postlogistics.license tree New
view_delivery_carrier_form delivery_base.delivery.carrier.view_form delivery.carrier form Inherits base_delivery_carrier_label.view_delivery_carrier_form
view_picking_withcarrier_out_form delivery.stock.picking.out.form stock.picking form Inherits base_delivery_carrier_label.view_picking_withcarrier_out_form
view_postlogistics_auth_form postlogistics.auth.form postlogistics.auth form New
view_postlogistics_config_settings postlogistics settings res.config.settings form Inherits base.res_config_settings_view_form
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (10)

New fields (4)
  • allowed_tmpl_options_ids Many2many → delivery.carrier.template.option
    compute='_compute_allowed_options_ids' store=False args: 'delivery.carrier.template.option'
  • delivery_type Selection
    selection_add=[('postlogistics', 'Post logistics')]
  • postlogistics_basic_service_ids One2many → delivery.carrier.template.option
    comodel_name='delivery.carrier.template.option' compute='_compute_basic_service_ids' help='Basic Service defines the available additional options for this delivery method' string='PostLogistics Service Group'
  • postlogistics_license_id Many2one → postlogistics.license
    comodel_name='postlogistics.license' string='PostLogistics Franking License'
Public methods (4)
  • postlogistics_cancel_shipment(self, pickings)
    @api.multi
  • postlogistics_get_tracking_link(self, picking)
    @api.multi
  • postlogistics_rate_shipment(self, order)
    @api.multi
  • postlogistics_send_shipping(self, pickings)
    @api.multi

New fields (2)
  • allowed_tmpl_options_ids Many2many → delivery.carrier.template.option
    compute='_compute_allowed_tmpl_options_ids' store=False args: 'delivery.carrier.template.option'
  • name Char
    translate=True
Public methods (0)

No public methods.

New fields (5)
  • name Char
    translate=True
  • postlogistics_additonial_service_ids Many2many → delivery.carrier.template.option
    column1='basic_service_id' column2='service_id' comodel_name='delivery.carrier.template.option' domain=[('postlogistics_type', '=', 'additional')] relation='postlogistics_compatibility_service_rel' string='Compatible Additional Services'
  • postlogistics_basic_service_ids Many2many → delivery.carrier.template.option
    column1='service_id' column2='basic_service_id' comodel_name='delivery.carrier.template.option' domain=[('postlogistics_type', '=', 'basic')] help='List of basic service for which this service is compatible' relation='postlogistics_compatibility_service_rel' string='Basic Services'
  • postlogistics_delivery_instruction_ids Many2many → delivery.carrier.template.option
    column1='basic_service_id' column2='service_id' comodel_name='delivery.carrier.template.option' domain=[('postlogistics_type', '=', 'delivery')] relation='postlogistics_compatibility_service_rel' string='Compatible Delivery Instructions'
  • postlogistics_type Selection
    selection=POSTLOGISTIC_TYPES string='PostLogistics option type'
Public methods (0)

No public methods.

New fields (5)
  • authentication_url Char
    default='https://wedecint.post.ch/WEDECOAuth/token' required=True string='Authentication url'
  • client_id Char
    string='Client ID'
  • client_secret Char
    string='Client Secret'
  • generate_label_url Char
    default='https://wedecint.post.ch/api/barcode/v1/generateAddressLabel' required=True string='Generate label url'
  • state Selection
    default='todo' required=True args: [('todo', 'OAuth Config'), ('done', 'Complete')]
Public methods (3)
  • default_get(self, field_list)
    @api.model
  • generate_access_token(self)
    @api.multi
  • reset_access_token(self)
    @api.multi

New fields (4)
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> required=True string='Company'
  • name Char
    required=True string='Description' translate=True
  • number Char
    required=True string='Number'
  • sequence Integer
    help='Gives the sequence on company to define priority on license when multiple licenses are available for the same group of service.' string='Sequence'
Public methods (0)

No public methods.

New fields (11)
  • postlogistics_label_layout Many2one → delivery.carrier.template.option
    comodel_name='delivery.carrier.template.option' domain=[('postlogistics_type', '=', 'label_layout')] string='Default label layout'
  • postlogistics_license_ids One2many → postlogistics.license
    comodel_name='postlogistics.license' inverse_name='company_id' string='PostLogistics Franking License'
  • postlogistics_logo Binary
    help='Optional company logo to show on label.\nIf using an image / logo, please note the following:\n– Image width: 47 mm\n– Image height: 25 mm\n– File size: max. 30 kb\n– File format: GIF or PNG\n– Colour table: indexed colours, max. 200 colours\n– The logo will be printed rotated counter-clockwise by 90°\nWe recommend using a black and white logo for printing in the ZPL2 format.' string='Company Logo on Post labels'
  • postlogistics_office Char
    help='Post office which will receive the shipped goods' string='Domicile Post office'
  • postlogistics_output_format Many2one → delivery.carrier.template.option
    comodel_name='delivery.carrier.template.option' domain=[('postlogistics_type', '=', 'output_format')] string='Default output format'
  • postlogistics_password Char
    args: 'Password'
  • postlogistics_proclima_logo Boolean
    args: 'Print ProClima logo'
  • postlogistics_resolution Many2one → delivery.carrier.template.option
    comodel_name='delivery.carrier.template.option' domain=[('postlogistics_type', '=', 'resolution')] string='Default resolution'
  • postlogistics_tracking_format Selection
    default='postlogistics' string='Tracking number format' args: [('postlogistics', 'Use default postlogistics tracking numbers'), ('picking_num', 'Use picking number with pack counter')]
  • postlogistics_username Char
    args: 'Username'
  • postlogistics_wsdl_url Char
    compute='_compute_wsdl_url' string='WSDL URL'
Public methods (0)

No public methods.

New fields (2)
  • proclima_logo Boolean
    help='The “pro clima” logo indicates an item for which the surcharge for carbon-neutral shipping has been paid and a contract to that effect has been signed. For Letters with barcode (BMB) domestic, the ProClima logo is printed automatically (at no additional charge)' related='company_id.postlogistics_proclima_logo'
  • tracking_format Selection
    help='Allows you to define how the ItemNumber (the last 8 digits) of the tracking number will be generated:\n- Default postlogistics numbers: The webservice generates it for you.\n- Picking number with pack counter: Generate it using the digits of picking name and add the pack number. 2 digits forpack number and 6 digits for picking number. (eg. 07000042 for picking 42 and 7th pack' related='company_id.postlogistics_tracking_format' selection=[('postlogistics', 'Use default postlogistics tracking numbers'), ('picking_num', 'Use picking number with pack counter')] string='Tracking number format' type='selection'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • delivery_fixed_date Date
    help='Specific delivery date (ZAW3217)' args: 'Fixed delivery date'
  • delivery_mobile Char
    help='For notify delivery by telephone (ZAW3213)' args: 'Mobile'
  • delivery_phone Char
    help='For notify delivery by telephone (ZAW3213)' args: 'Phone'
  • delivery_place Char
    help='For Deposit item service (ZAW3219)' args: 'Delivery Place'
Public methods (2)
  • generate_shipping_labels(self)
    @api.multi
    Add label generation for Postlogistics
  • postlogistics_cod_amount(self)
    @api.multi
    Return the Postlogistic Cash on Delivery amount of a picking If the picking delivers the whole sales order, we use the total amount of the sales order. Otherwise, we don't know the value of each picking so we raise an error. The user has to create packages with the cash on delivery price on each package.

New fields (1)
  • postlogistics_manual_cod_amount Float
    help='If the cash on delivery amount for this package is different than the total of the sales order, write the amount there.' string='Postlogistics Cash On Delivery Amount'
Public methods (1)
  • postlogistics_cod_amount(self)
    @api.multi
    Return the Postlogistic Cash on Delivery amount of a package If we have only 1 package which delivers the whole sales order we use the total amount of the sales order. Otherwise we don't know the value of each package so we raise an error and the user has to write the prices on the packages. When a price is manually set on a package, it's always used as the cash on delivery amount.

Loading…

Loading…

Loading…

Loading…

Loading…