| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
custom_link_tree |
custom.link.list | pos_self_order.custom_link | list | New |
pos_self_order.index |
POS Self Order | ir.ui.view | qweb | New |
pos_self_order_menu_item |
pos.config.kanban.view.inherit.self_order | pos.config | xpath | Inherits point_of_sale.view_pos_config_kanban |
pos_self_order_product_pos_category_form_view |
pos.self.pos.category.form.view | pos.category | xpath | Inherits point_of_sale.product_pos_category_form_view |
pos_self_order_search_view |
pos.self.order.search.view | pos.config | xpath | Inherits point_of_sale.view_pos_config_search |
pos_self_order_table_form_view |
Restaurant Table | restaurant.table | xpath | Inherits pos_restaurant.view_restaurant_table_form |
pos_self_view_pos_config_tree |
pos.self.pos.config.list.view | pos.config | xpath | Inherits point_of_sale.view_pos_config_tree |
pos_self_view_pos_session_form |
pos.self.session.form.view | pos.session | xpath | Inherits point_of_sale.view_pos_session_form |
product_template_form_view |
product.template.form.inherit | product.template | group | Inherits product.product_template_form_view |
product_template_search_view_pos |
product.template.search.pos.form | product.template | filter | Inherits point_of_sale.product_template_search_view_pos |
product_template_tree_view |
product.template.product.list.inherit | product.template | field | Inherits point_of_sale.product_template_tree_view |
qr_codes_page |
qr_codes_page | ir.ui.view | qweb | New |
res_config_settings_view_form_menu |
res.config.settings.view.form.inherit.pos_self_order.view | res.config.settings | block | Inherits point_of_sale.res_config_settings_view_form |
view_pos_preset_form |
pos.preset.form | pos.preset | xpath | Inherits point_of_sale.view_pos_preset_form |
No new fields.
Public methods (1)get_nearest_lang(self, lang_code: str) -> str
No new fields.
Public methods (0)No public methods.
pos_config_ids
Many2many → pos.config
string='Linked PoS Configurations'
args: 'pos.config'
No public methods.
has_paper
Boolean
default=True
args: 'Has paper'
self_ordering_available_language_ids
Many2many → res.lang
default=_self_order_kiosk_default_languages
help='Languages available for the kiosk mode'
string='Available Languages'
args: 'res.lang'
self_ordering_default_language_id
Many2one → res.lang
default=<expr>
help='Default language for the kiosk mode'
string='Default Language'
args: 'res.lang'
self_ordering_default_user_id
Many2one → res.users
default=_self_order_default_user
help='Access rights of this user will be used when visiting self order website when no session is open.'
string='Default User'
args: 'res.users'
self_ordering_image_background_ids
Many2many → ir.attachment
bypass_search_access=True
help='Image to be displayed in the background'
relation='pos_self_order_background_rels'
string='Set background image'
args: 'ir.attachment'
self_ordering_image_brand
Image
help='Image to display on the self order screen'
max_height=250
max_width=1200
string='Self Order Kiosk Image Brand'
self_ordering_image_brand_name
Char
help='Name of the image to display on the self order screen'
string='Self Order Kiosk Image Brand Name'
self_ordering_image_home_ids
Many2many → ir.attachment
bypass_search_access=True
help='Image to display on the self order screen'
string='Add images'
args: 'ir.attachment'
self_ordering_mode
Selection
default='nothing'
help='Choose the self ordering mode'
required=True
string='Self Ordering Mode'
args: [('nothing', 'Disable'), ('consultation', 'QR menu'), ('mobile', 'QR menu + Ordering'), ('kiosk', 'Kiosk')]
self_ordering_pay_after
Selection
default='meal'
help='Choose when the customer will pay'
required=True
selection=<expr>
string='Pay After:'
self_ordering_service_mode
Selection
default='counter'
help='Choose the kiosk mode'
required=True
string='Self Ordering Service Mode'
args: [('counter', 'Pickup zone'), ('table', 'Table')]
self_ordering_url
Char
compute='_compute_self_ordering_url'
status
Selection
compute='_compute_status'
store=False
string='Status'
args: [('inactive', 'Inactive'), ('active', 'Active')]
action_close_kiosk_session(self)
action_open_wizard(self)
close_ui(self)
create(self, vals_list)
get_kiosk_url(self)
get_pos_qr_order_data(self)
has_valid_self_payment_method(self)
load_data_params(self)
load_onboarding_kiosk_scenario(self)
load_self_data(self)
preview_self_order_app(self)
write(self, vals)
No new fields.
Public methods (0)No public methods.
self_ordering_table_id
Many2one → restaurant.table
readonly=True
string='Table reference'
args: 'restaurant.table'
source
Selection
selection_add=[('mobile', 'Self-Order Mobile'), ('kiosk', 'Self-Order Kiosk')]
table_stand_number
Char
string='Table Stand Number'
action_pos_order_cancel(self)
action_send_self_order_receipt(self, email, mail_template_id, ticket_image, basic_image)
recompute_prices(self)
remove_from_ui(self, server_ids)
sync_from_ui(self, orders)
write(self, vals)
combo_id
Many2one → product.combo
string='Combo reference'
args: 'product.combo'
create(self, vals_list)
write(self, vals)
No new fields.
Public methods (0)No public methods.
available_in_self
Boolean
default=False
string='Available in self'
mail_template_id
Many2one → mail.template
comodel_name='mail.template'
domain="[('model', '=', 'pos.order')]"
string='Email Confirmation'
service_at
Selection
default='counter'
required=True
string='Service at'
args: [('counter', 'Pickup zone'), ('table', 'Table'), ('delivery', 'Delivery')]
No public methods.
No new fields.
Public methods (0)No public methods.
link_html
Html
compute='_compute_link_html'
readonly=True
store=True
args: 'Preview'
name
Char
required=True
string='Label'
translate=True
pos_config_ids
Many2many → pos.config
domain="[('self_ordering_mode', '!=', 'nothing')]"
help="Select for which points of sale you want to display this link. Leave empty to display it for all points of sale. You have to select among the points of sale that have the 'QR Code Menu' feature enabled."
string='Points of Sale'
args: 'pos.config'
sequence
Integer
default=1
args: 'Sequence'
style
Selection
default='primary'
required=True
string='Style'
args: [('primary', 'Primary'), ('secondary', 'Secondary'), ('success', 'Success'), ('warning', 'Warning'), ('danger', 'Danger'), ('info', 'Info'), ('light', 'Light'), ('dark', 'Dark')]
url
Char
required=True
string='URL'
No public methods.
No new fields.
Public methods (1)write(self, vals)
No new fields.
Public methods (0)No public methods.
self_order_available
Boolean
default=True
help='If this product is available in the Self Order screens'
string='Available in Self Order'
self_order_visible
Boolean
compute='_compute_self_order_visible'
write(self, vals)
pos_self_ordering_available_language_ids
Many2many
readonly=False
related='pos_config_id.self_ordering_available_language_ids'
pos_self_ordering_default_language_id
Many2one
readonly=False
related='pos_config_id.self_ordering_default_language_id'
pos_self_ordering_default_user_id
Many2one
readonly=False
related='pos_config_id.self_ordering_default_user_id'
pos_self_ordering_image_background_ids
Many2many
readonly=False
related='pos_config_id.self_ordering_image_background_ids'
pos_self_ordering_image_brand
Image
readonly=False
related='pos_config_id.self_ordering_image_brand'
pos_self_ordering_image_brand_name
Char
readonly=False
related='pos_config_id.self_ordering_image_brand_name'
pos_self_ordering_image_home_ids
Many2many
readonly=False
related='pos_config_id.self_ordering_image_home_ids'
pos_self_ordering_mode
Selection
readonly=False
related='pos_config_id.self_ordering_mode'
required=True
pos_self_ordering_pay_after
Selection
readonly=False
related='pos_config_id.self_ordering_pay_after'
required=True
pos_self_ordering_service_mode
Selection
readonly=False
related='pos_config_id.self_ordering_service_mode'
required=True
custom_link_action(self)
generate_qr_codes_page(self)
generate_qr_codes_zip(self)
get_pos_qr_stands(self)
pos_close_ui(self)
preview_self_order_app(self)
update_access_tokens(self)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
identifier
Char
copy=False
default=<expr>
required=True
args: 'Security Token'
No public methods.
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
custom_link_tree |
custom.link.list | pos_self_order.custom_link | list | New |
pos_self_order.index |
POS Self Order | ir.ui.view | qweb | New |
pos_self_order_menu_item |
pos.config.kanban.view.inherit.self_order | pos.config | xpath | Inherits point_of_sale.view_pos_config_kanban |
pos_self_order_product_pos_category_form_view |
pos.self.pos.category.form.view | pos.category | xpath | Inherits point_of_sale.product_pos_category_form_view |
pos_self_order_search_view |
pos.self.order.search.view | pos.config | xpath | Inherits point_of_sale.view_pos_config_search |
pos_self_order_table_form_view |
Restaurant Table | restaurant.table | xpath | Inherits pos_restaurant.view_restaurant_table_form |
pos_self_view_pos_config_tree |
pos.self.pos.config.list.view | pos.config | xpath | Inherits point_of_sale.view_pos_config_tree |
pos_self_view_pos_session_form |
pos.self.session.form.view | pos.session | xpath | Inherits point_of_sale.view_pos_session_form |
product_template_form_view |
product.template.form.inherit | product.template | group | Inherits product.product_template_form_view |
product_template_search_view_pos |
product.template.search.pos.form | product.template | filter | Inherits point_of_sale.product_template_search_view_pos |
product_template_tree_view |
product.template.product.list.inherit | product.template | field | Inherits point_of_sale.product_template_tree_view |
qr_codes_page |
qr_codes_page | ir.ui.view | qweb | New |
res_config_settings_view_form_menu |
res.config.settings.view.form.inherit.pos_self_order.view | res.config.settings | block | Inherits point_of_sale.res_config_settings_view_form |
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)get_nearest_lang(self, lang_code: str) -> str
hour_after
Float
default=0.0
help='The product will be available after this hour.'
string='Availability After'
hour_until
Float
default=24.0
help='The product will be available until this hour.'
string='Availability Until'
No public methods.
has_paper
Boolean
default=True
args: 'Has paper'
self_ordering_available_language_ids
Many2many → res.lang
default=_self_order_kiosk_default_languages
help='Languages available for the kiosk mode'
string='Available Languages'
args: 'res.lang'
self_ordering_default_language_id
Many2one → res.lang
default=<expr>
help='Default language for the kiosk mode'
string='Default Language'
args: 'res.lang'
self_ordering_default_user_id
Many2one → res.users
default=_self_order_default_user
help='Access rights of this user will be used when visiting self order website when no session is open.'
string='Default User'
args: 'res.users'
self_ordering_image_brand
Image
help='Image to display on the self order screen'
max_height=250
max_width=1200
string='Self Order Kiosk Image Brand'
self_ordering_image_brand_name
Char
help='Name of the image to display on the self order screen'
string='Self Order Kiosk Image Brand Name'
self_ordering_image_home_ids
Many2many → ir.attachment
help='Image to display on the self order screen'
string='Add images'
args: 'ir.attachment'
self_ordering_mode
Selection
default='nothing'
help='Choose the self ordering mode'
required=True
string='Self Ordering Mode'
args: [('nothing', 'Disable'), ('consultation', 'QR menu'), ('mobile', 'QR menu + Ordering'), ('kiosk', 'Kiosk')]
self_ordering_pay_after
Selection
default='meal'
help='Choose when the customer will pay'
required=True
selection=<expr>
string='Pay After:'
self_ordering_service_mode
Selection
default='counter'
help='Choose the kiosk mode'
required=True
string='Self Ordering Service Mode'
args: [('counter', 'Pickup zone'), ('table', 'Table')]
self_ordering_takeaway
Boolean
self_ordering_url
Char
compute='_compute_self_ordering_url'
status
Selection
compute='_compute_status'
store=False
string='Status'
args: [('inactive', 'Inactive'), ('active', 'Active')]
action_close_kiosk_session(self)
action_open_wizard(self)
create(self, vals_list)
get_kiosk_url(self)
get_pos_qr_order_data(self)
load_onboarding_kiosk_scenario(self)
load_self_data(self)
preview_self_order_app(self)
write(self, vals)
No new fields.
Public methods (0)No public methods.
table_stand_number
Char
string='Table Stand Number'
recompute_prices(self)
remove_from_ui(self, server_ids)
sync_from_ui(self, orders)
combo_id
Many2one → product.combo
string='Combo reference'
args: 'product.combo'
create(self, vals_list)
write(self, vals)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)create(self, vals_list)
link_html
Html
compute='_compute_link_html'
readonly=True
store=True
args: 'Preview'
name
Char
required=True
string='Label'
translate=True
pos_config_ids
Many2many → pos.config
domain="[('self_ordering_mode', '!=', 'nothing')]"
help="Select for which points of sale you want to display this link. Leave empty to display it for all points of sale. You have to select among the points of sale that have the 'QR Code Menu' feature enabled."
string='Points of Sale'
args: 'pos.config'
sequence
Integer
default=1
args: 'Sequence'
style
Selection
default='primary'
required=True
string='Style'
args: [('primary', 'Primary'), ('secondary', 'Secondary'), ('success', 'Success'), ('warning', 'Warning'), ('danger', 'Danger'), ('info', 'Info'), ('light', 'Light'), ('dark', 'Dark')]
url
Char
required=True
string='URL'
No public methods.
No new fields.
Public methods (1)write(self, vals_list)
self_order_available
Boolean
default=True
help='If this product is available in the Self Order screens'
string='Available in Self Order'
write(self, vals_list)
pos_self_ordering_available_language_ids
Many2many
readonly=False
related='pos_config_id.self_ordering_available_language_ids'
pos_self_ordering_default_language_id
Many2one
readonly=False
related='pos_config_id.self_ordering_default_language_id'
pos_self_ordering_default_user_id
Many2one
readonly=False
related='pos_config_id.self_ordering_default_user_id'
pos_self_ordering_image_brand
Image
readonly=False
related='pos_config_id.self_ordering_image_brand'
pos_self_ordering_image_brand_name
Char
readonly=False
related='pos_config_id.self_ordering_image_brand_name'
pos_self_ordering_image_home_ids
Many2many
readonly=False
related='pos_config_id.self_ordering_image_home_ids'
pos_self_ordering_mode
Selection
readonly=False
related='pos_config_id.self_ordering_mode'
required=True
pos_self_ordering_pay_after
Selection
readonly=False
related='pos_config_id.self_ordering_pay_after'
required=True
pos_self_ordering_service_mode
Selection
readonly=False
related='pos_config_id.self_ordering_service_mode'
required=True
pos_self_ordering_takeaway
Boolean
readonly=False
related='pos_config_id.self_ordering_takeaway'
custom_link_action(self)
generate_qr_codes_page(self)
generate_qr_codes_zip(self)
get_pos_qr_stands(self)
preview_self_order_app(self)
update_access_tokens(self)
No new fields.
Public methods (0)No public methods.
identifier
Char
copy=False
default=<expr>
required=True
args: 'Security Token'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/17.0/pos_self_order |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Sales/Point Of Sale |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | Yes |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Martin Trigaux, Aaron Bohy, Yannick Tivisse, qsm-odoo, Odoo Online, Romain Derie, Jorge Pinna Puissant, Joseph Caburnay, Samuel Degueldre, Tiffany Chang (tic), Pierre Rousseau, Gorash, Pierre Paridans, William Braeckman, roen-odoo, Stanislas Sobieski, niyasraphy, Loan (LSE), David Monnom (moda), Mahamadasif Ansari, Dylan Kiss (dyki), Chong Wang (cwg), Brieuc-brd, Sarah Bellefroid, “moda”, Theo VINCENT (thvi), Pedram (pebr), Mahdi Cheikh Rouhou (macr), Adrien Guilliams (adgu), Zachary Hanham, kdeb@odoo.com, stefanorigano (SRI), Youssef Bashandy, Ethan Vincent, axtr, shsa-odoo, Louis (wil), Junqi Wu, Max Whale, Parth Solanki[PASO], Loukas Wets (lowe), Xavier Luyckx (xlu), gteboul, vlst, Jitendra Prajapat, David Monnom, Arthur Nanson, Pierre Pulinckx (pipu), Anton Romanova (roan), Ajit Singh, vlst-odoo, meji-odoo |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:02:06 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - pos_restaurant - point_of_sale - stock_account - stock - product - base - base_setup - web - bus - web_tour - uom - barcodes_gs1_nomenclature - barcodes - digest - portal - web_editor - http_routing - auth_signup - resource - account - onboarding - analytic |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
custom_link_tree |
custom.link.tree | pos_self_order.custom_link | tree | New |
pos_self_order.index |
POS Self Order | ir.ui.view | qweb | New |
pos_self_order_kiosk_read_only_form_dialog |
pos.self.order.kiosk.read.only.form.dialog | pos.config | form | New |
pos_self_order_menu_item |
pos.config.kanban.view.inherit.self_order | pos.config | xpath | Inherits point_of_sale.view_pos_config_kanban |
pos_self_order_search_view |
pos.self.order.search.view | pos.config | xpath | Inherits point_of_sale.view_pos_config_search |
pos_self_order_table_form_view |
Restaurant Table | restaurant.table | xpath | Inherits pos_restaurant.view_restaurant_table_form |
pos_self_view_pos_config_tree |
pos.self.pos.config.tree.view | pos.config | xpath | Inherits point_of_sale.view_pos_config_tree |
pos_self_view_pos_session_form |
pos.self.session.form.view | pos.session | xpath | Inherits point_of_sale.view_pos_session_form |
product_template_form_view |
product.template.form.inherit | product.template | xpath | Inherits point_of_sale.product_template_form_view |
product_template_search_view_pos |
product.template.search.pos.form | product.template | filter | Inherits point_of_sale.product_template_search_view_pos |
product_template_tree_view |
product.template.product.tree.inherit | product.template | field | Inherits point_of_sale.product_template_tree_view |
qr_codes_page |
qr_codes_page | ir.ui.view | qweb | New |
res_config_settings_view_form_menu |
res.config.settings.view.form.inherit.pos_self_order.view | res.config.settings | xpath | Inherits point_of_sale.res_config_settings_view_form |
No new fields.
Public methods (1)get_nearest_lang(cls, lang_code: str) -> str
access_token
Char
copy=False
default=<expr>
readonly=True
required=True
args: 'Security Token'
self_ordering_alternative_fp_id
Many2one → account.fiscal.position
help='This is useful for restaurants with onsite and take-away services that imply specific tax rates.'
string='Alternative Fiscal Position'
args: 'account.fiscal.position'
self_ordering_available_language_ids
Many2many → res.lang
default=_self_order_kiosk_default_languages
help='Languages available for the kiosk mode'
string='Available Languages'
args: 'res.lang'
self_ordering_default_language_id
Many2one → res.lang
default=<expr>
help='Default language for the kiosk mode'
string='Default Language'
args: 'res.lang'
self_ordering_default_user_id
Many2one → res.users
default=_self_order_default_user
help='Access rights of this user will be used when visiting self order website when no session is open.'
string='Default User'
args: 'res.users'
self_ordering_image_brand
Image
help='Image to display on the self order screen'
max_height=250
max_width=1200
string='Self Order Kiosk Image Brand'
self_ordering_image_brand_name
Char
help='Name of the image to display on the self order screen'
string='Self Order Kiosk Image Brand Name'
self_ordering_image_home_ids
Many2many → ir.attachment
help='Image to display on the self order screen'
string='Add images'
args: 'ir.attachment'
self_ordering_mode
Selection
default='nothing'
help='Choose the self ordering mode'
required=True
string='Self Ordering Mode'
args: [('nothing', 'Disable'), ('consultation', 'QR menu'), ('mobile', 'QR menu + Ordering'), ('kiosk', 'Kiosk')]
self_ordering_pay_after
Selection
default='meal'
help='Choose when the customer will pay'
required=True
selection=<expr>
string='Pay After:'
self_ordering_service_mode
Selection
default='counter'
help='Choose the kiosk mode'
required=True
string='Service'
args: [('counter', 'Pickup zone'), ('table', 'Table')]
self_ordering_takeaway
Boolean
self_ordering_url
Char
compute='_compute_self_ordering_url'
status
Selection
compute='_compute_status'
store=False
string='Status'
args: [('inactive', 'Inactive'), ('active', 'Active')]
action_close_kiosk_session(self)
action_open_kiosk(self)
action_open_wizard(self)
create(self, vals_list)
preview_self_order_app(self)
write(self, vals)
table_stand_number
Char
string='Table Stand Number'
take_away
Boolean
default=False
string='Take Away'
create_from_ui(self, orders, draft=False)
export_for_ui_table_draft(self, table_ids)
get_standalone_self_order(self)
remove_from_ui(self, server_ids)
combo_id
Many2one → pos.combo
string='Combo line reference'
args: 'pos.combo'
combo_line_ids
One2many → pos.order.line
string='Combo Lines'
args: 'pos.order.line', 'combo_parent_id'
combo_parent_id
Many2one → pos.order.line
string='Combo Parent'
args: 'pos.order.line'
write(self, vals)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)create(self, vals_list)
link_html
Html
compute='_compute_link_html'
readonly=True
store=True
args: 'Preview'
name
Char
required=True
string='Label'
translate=True
pos_config_ids
Many2many → pos.config
domain="[('self_ordering_mode', '!=', 'nothing')]"
help="Select for which points of sale you want to display this link. Leave empty to display it for all points of sale. You have to select among the points of sale that have the 'QR Code Menu' feature enabled."
string='Points of Sale'
args: 'pos.config'
sequence
Integer
default=1
args: 'Sequence'
style
Selection
default='primary'
required=True
string='Style'
args: [('primary', 'Primary'), ('secondary', 'Secondary'), ('success', 'Success'), ('warning', 'Warning'), ('danger', 'Danger'), ('info', 'Info'), ('light', 'Light'), ('dark', 'Dark')]
url
Char
required=True
string='URL'
No public methods.
No new fields.
Public methods (1)write(self, vals_list)
description_self_order
Html
string='Product Description for Self Order'
self_order_available
Boolean
default=True
help='If this product is available in the Self Order screens'
string='Available in Self Order'
write(self, vals_list)
pos_self_ordering_alternative_fp_id
Many2one
readonly=False
related='pos_config_id.self_ordering_alternative_fp_id'
pos_self_ordering_available_language_ids
Many2many
readonly=False
related='pos_config_id.self_ordering_available_language_ids'
pos_self_ordering_default_language_id
Many2one
readonly=False
related='pos_config_id.self_ordering_default_language_id'
pos_self_ordering_default_user_id
Many2one
readonly=False
related='pos_config_id.self_ordering_default_user_id'
pos_self_ordering_image_brand
Image
readonly=False
related='pos_config_id.self_ordering_image_brand'
pos_self_ordering_image_brand_name
Char
readonly=False
related='pos_config_id.self_ordering_image_brand_name'
pos_self_ordering_image_home_ids
Many2many
readonly=False
related='pos_config_id.self_ordering_image_home_ids'
pos_self_ordering_mode
Selection
readonly=False
related='pos_config_id.self_ordering_mode'
required=True
pos_self_ordering_pay_after
Selection
readonly=False
related='pos_config_id.self_ordering_pay_after'
required=True
pos_self_ordering_service_mode
Selection
readonly=False
related='pos_config_id.self_ordering_service_mode'
required=True
pos_self_ordering_takeaway
Boolean
readonly=False
related='pos_config_id.self_ordering_takeaway'
custom_link_action(self)
generate_qr_codes_page(self)
generate_qr_codes_zip(self)
preview_self_order_app(self)
update_access_tokens(self)
identifier
Char
copy=False
default=<expr>
required=True
args: 'Security Token'
No public methods.