Gelato

sale_gelato
REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/19.0/sale_gelato
VERSION
VERSION 0.1.0
CATEGORY
CATEGORYSales/Sales
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo S.A.
MAINTAINERS
MAINTAINERSOdoo S.A.
COMMITTERS
COMMITTERSOdoo Translation Bot, Thibault Delavallée, Xavier ALT, Toufik Ben Jaa, Julien Castiaux, Tiffany Chang (tic), Thomas Becquevort (thbe), Dylan Kiss (dyki), Anita (anko), Mohammad Abdulmoneim (abdu), anko-odoo, Krzysztof Magusiak (krma), Mahdi Alijani (malj), defl
WEBSITE
WEBSITE
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 01:51:42
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - account_payment
    - account
    - onboarding
    - product
    - uom
    - analytic
    - portal
    - http_routing
    - auth_signup
    - digest
    - resource
    - payment
    - utm
    - delivery
    - payment_custom
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
delivery_carrier_form Delivery Carrier Form delivery.carrier button Inherits delivery.view_delivery_carrier_form
product_document_form Product Document Form product.document form New
product_product_easy_form Product Product Easy Form product.product group Inherits product.product_variant_easy_edit_view
product_product_normal_form Product Product Normal Form product.product group Inherits product.product_normal_form_view
product_template_form Product Template Form product.template xpath Inherits product.product_template_only_form_view
res_config_settings_form Res Config Settings Form res.config.settings div Inherits sale.res_config_settings_view_form
Models touched (9)

New fields (2)
  • delivery_type Selection
    ondelete={'gelato': 'cascade'} selection_add=[('gelato', 'Gelato')]
  • gelato_shipping_service_type Selection
    default='normal' required=True selection=[('normal', 'Standard Delivery'), ('express', 'Express Delivery')] string='Gelato Shipping Service Type'
Public methods (2)
  • available_carriers(self, partner, source)
    Override of `delivery` to filter out regular delivery methods from Gelato orders and Gelato delivery methods from non-Gelato orders. :param res.partner partner: The partner to check. :param sale.order or stock.picking source: The current order or stock transfer. :return: The available delivery methods. :rtype: delivery.carrier
  • gelato_rate_shipment(self, order)
    Fetch the Gelato delivery price based on products, quantity and address. This method is called by `delivery`'s `rate_shipment` method. Note: `self._ensure_one()` from `rate_shipment` :param sale.order order: The order for which to fetch the delivery price. :return: The shipment rate request results. :rtype: dict

New fields (1)
  • is_gelato Boolean
    readonly=True
Public methods (0)

No public methods.

New fields (1)
  • gelato_product_uid Char
    name='Gelato Product UID' readonly=True
Public methods (0)

No public methods.

New fields (4)
  • gelato_image_ids One2many → product.document
    comodel_name='product.document' domain=[('is_gelato', '=', True)] inverse_name='res_id' readonly=True string='Gelato Print Images'
  • gelato_missing_images Boolean
    compute='_compute_gelato_missing_images' string='Missing Print Images'
  • gelato_product_uid Char
    compute='_compute_gelato_product_uid' inverse='_inverse_gelato_product_uid' readonly=True string='Gelato Product UID'
  • gelato_template_ref Char
    help='Synchronize to fetch variants from Gelato' string='Gelato Template Reference'
Public methods (1)
  • action_sync_gelato_template_info(self)
    Fetch the template information from Gelato and update the product template accordingly. :return: The action to display a toast notification to the user. :rtype: dict

New fields (2)
  • gelato_api_key Char
    groups='base.group_system' string='Gelato API Key'
  • gelato_webhook_secret Char
    groups='base.group_system' string='Gelato Webhook Secret'
Public methods (0)

No public methods.

New fields (2)
  • gelato_api_key Char
    readonly=False related='company_id.gelato_api_key'
  • gelato_webhook_secret Char
    readonly=False related='company_id.gelato_webhook_secret'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (2)
  • action_confirm(self)
    Override of `sale` to send the order to Gelato on confirmation.
  • action_open_delivery_wizard(self)
    Override of `delivery` to set a Gelato delivery method by default in the wizard.

New fields (0)

No new fields.

Public methods (2)
  • create(self, vals_list)
    @api.model_create_multi
  • write(self, vals)
REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/18.0/sale_gelato
VERSION
VERSION 0.1.0
CATEGORY
CATEGORYSales/Sales
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORS
MAINTAINERS
MAINTAINERS
COMMITTERS
COMMITTERSOdoo Translation Bot, Xavier ALT, Toufik Ben Jaa, Tiffany Chang (tic), Thomas Becquevort (thbe), Dylan Kiss (dyki), Anita (anko), anko-odoo
WEBSITE
WEBSITE
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 01:25:55
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - 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
    - delivery
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
delivery_carrier_form Delivery Carrier Form delivery.carrier button Inherits delivery.view_delivery_carrier_form
product_document_form Product Document Form product.document form New
product_product_easy_form Product Product Easy Form product.product group Inherits product.product_variant_easy_edit_view
product_product_normal_form Product Product Normal Form product.product group Inherits product.product_normal_form_view
product_template_form Product Template Form product.template xpath Inherits product.product_template_only_form_view
res_config_settings_form Res Config Settings Form res.config.settings setting Inherits sale.res_config_settings_view_form
Models touched (9)

New fields (2)
  • delivery_type Selection
    ondelete={'gelato': 'cascade'} selection_add=[('gelato', 'Gelato')]
  • gelato_shipping_service_type Selection
    default='normal' required=True selection=[('normal', 'Standard Delivery'), ('express', 'Express Delivery')] string='Gelato Shipping Service Type'
Public methods (2)
  • available_carriers(self, partner, order)
    Override of `delivery` to filter out regular delivery methods from Gelato orders and Gelato delivery methods from non-Gelato orders. :param res.partner partner: The partner to check. :param sale.order order: The current order. :return: The available delivery methods. :rtype: delivery.carrier
  • gelato_rate_shipment(self, order)
    Fetch the Gelato delivery price based on products, quantity and address. This method is called by `delivery`'s `rate_shipment` method. Note: `self._ensure_one()` from `rate_shipment` :param sale.order order: The order for which to fetch the delivery price. :return: The shipment rate request results. :rtype: dict

New fields (1)
  • is_gelato Boolean
    readonly=True
Public methods (0)

No public methods.

New fields (1)
  • gelato_product_uid Char
    name='Gelato Product UID' readonly=True
Public methods (0)

No public methods.

New fields (4)
  • gelato_image_ids One2many → product.document
    comodel_name='product.document' domain=[('is_gelato', '=', True)] inverse_name='res_id' readonly=True string='Gelato Print Images'
  • gelato_missing_images Boolean
    compute='_compute_gelato_missing_images' string='Missing Print Images'
  • gelato_product_uid Char
    compute='_compute_gelato_product_uid' inverse='_inverse_gelato_product_uid' readonly=True string='Gelato Product UID'
  • gelato_template_ref Char
    help='Synchronize to fetch variants from Gelato' string='Gelato Template Reference'
Public methods (1)
  • action_sync_gelato_template_info(self)
    Fetch the template information from Gelato and update the product template accordingly. :return: The action to display a toast notification to the user. :rtype: dict

New fields (2)
  • gelato_api_key Char
    groups='base.group_system' string='Gelato API Key'
  • gelato_webhook_secret Char
    groups='base.group_system' string='Gelato Webhook Secret'
Public methods (0)

No public methods.

New fields (3)
  • gelato_api_key Char
    readonly=False related='company_id.gelato_api_key'
  • gelato_webhook_secret Char
    readonly=False related='company_id.gelato_webhook_secret'
  • module_sale_gelato Boolean
    args: 'Gelato'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (2)
  • action_confirm(self)
    Override of `sale` to send the order to Gelato on confirmation.
  • action_open_delivery_wizard(self)
    Override of `delivery` to set a Gelato delivery method by default in the wizard.

New fields (0)

No new fields.

Public methods (2)
  • create(self, vals_list)
    @api.model_create_multi
  • write(self, vals)