Skip to content
Health
57/100
fair
  • Security22/25
    1 minor finding
  • Activity25/25
    Last human commit 4 months ago
  • Required by5/25
    0 modules depend on it
  • Maturity5/25
    In 1 Odoo series since 19.0

Heuristic over the facts below, not an audit · How it's computed

Security findings
Grave / minor (static analysis)
Required by
0
Modules depending on it
External deps
1 pip · 0 bin
Python packages / system binaries
License
AGPL-3
No conflicts with its dependencies
Folder size
0.07 MB
Module directory on disk
Code analysis 0 migration notes 2 models 6 views 3 HTTP endpoints

Description

This module extends the website checkout delivery flow for reseller-driven orders.

When the shopper enables the one-time delivery option during checkout, the delivery address entered on the website is stored as a child contact of the reseller with type one_time_delivery.

This allows downstream processes such as EDI to keep a dedicated recipient contact on the sale order while preserving the reseller as the billing partner.

Main behavior:

  • adds an Allow Drop-shipping flag on the customer that gates the whole flow: the one-time delivery option is only shown for customers that allow drop-shipping
  • adds a one-time delivery toggle to the checkout page
  • creates checkout delivery contacts with type one_time_delivery
  • keeps the invoice address on the reseller
  • keeps the shipping address on the temporary end-customer contact
  • makes one-time delivery contacts available in the checkout delivery address list

Dependencies

Code analysis

Extracted from the source by best-effort static analysis (no code is executed); details may be incomplete.

Views touched 6

XML IDNameModelTypeStatus
address_card_one_time_delivery_badge Address Card - One-Time Delivery Badge ir.ui.view qweb Inherits portal.address_card
address_card_partner_type Checkout - Address Card Partner Type ir.ui.view qweb Inherits website_sale.address_card
checkout_hide_use_delivery_as_billing Checkout - Hide Same As Delivery Address ir.ui.view qweb Inherits website_sale.billing_address_list
checkout_one_time_delivery Checkout - One-Time Delivery ir.ui.view qweb Inherits website_sale.checkout
one_time_delivery_section one_time_delivery_section ir.ui.view qweb New
view_partner_form res.partner.form.allow.dropship res.partner form Inherits base.view_partner_form

HTTP endpoints 3

Route(s)HandlerAuthTypeMethodsFlags
/shop/address/submit WebsiteSaleOneTimeDeliveryAddress.shop_address_submit public http POST website
/shop/update_address WebsiteSaleOneTimeDeliveryAddress.shop_update_address public jsonrpc ALL sudo website
/shop/update_one_time_delivery WebsiteSaleOneTimeDeliveryAddress.shop_update_one_time_delivery public jsonrpc POST website

Models touched 2

New fields (2)
  • allow_dropship Boolean
    help="When enabled, this customer can use the one-time delivery flow during the website checkout: the delivery address is stored as a temporary 'one_time_delivery' contact while billing stays on the customer. The one-time delivery option is hidden for customers that do not allow drop-shipping." string='Allow Drop-shipping'
  • type Selection
    ondelete={'one_time_delivery': 'set default'} selection_add=[('one_time_delivery', 'One-Time Delivery Address')]
Public methods (0)

No public methods.

New fields (2)
  • allow_dropship Boolean
    related='partner_id.commercial_partner_id.allow_dropship'
  • one_time_delivery Boolean
    help="When enabled, the delivery address created during the website checkout is stored as a temporary contact with type 'one_time_delivery' instead of the standard 'delivery' type. This keeps the recipient out of the customer's regular address book and is useful for reseller orders shipped to an end customer." string='One-Time Delivery Address'
Public methods (1)
  • action_confirm(self)
    Archive one-time delivery contacts once the order is confirmed. A one_time_delivery contact is a temporary recipient that is no longer needed for editing once the order is placed. Archiving (not deleting) keeps it out of the address book while remaining readable on the related pickings and order history.