TIP: You can type at any time to perform a new search.
Restaurant
pos_restaurant · odoo/odoo
Security findings
- Repository
- odoo/odoo · module folder
- Module version
- 0.1.0
- Category
- Sales/Point of Sale
- Folder size
- 6.66 MB
- License
- LGPL-3
- Application
- Yes
- Auto-installable
- No
- Website
- https://www.odoo.com/app/point-of-sale-restaurant
- Last tracking update
- 2026-10-05 00:19:44
- Authors
- Odoo S.A.
- Maintainers
- Odoo S.A.
- Committers
- Raphael Collet, odoo, Odoo Translation Bot, Christophe Matthieu, Géry Debongnie, Julien Castiaux, Victor Feyens, Sébastien Theys, Julien Mougenot, Tiffany Chang (tic), Pierre Paridans, roen-odoo, william-andre, Nicolas Bayet, Renaud Thiry, rhe-odoo, David Monnom (moda), Pedram (PEBR), Dylan Kiss (dyki), tong-odoo, Sarah Bellefroid, Louis Travaux, Adrien Guilliams (adgu), shag-odoo, Ahmad (khah), Chrysanthe (chgo), sami odoo, mano-odoo, Parth Solanki[PASO], manv-afk, Max Whale, parp-odoo, Loukas Wets (lowe), Xavier Luyckx (xlu), Stéphane Diez, paan-odoo, Jitendra Prajapat, David Monnom, Arthur Nanson, Pierre Pulinckx, Michaël Mattiello, Krzysztof Magusiak (krma), Ajit Singh, zadh-odoo, vpan-odoo, dhruv, vlst-odoo, Radu Macocian (admac), Guillaume V, Meet Jivani [MEJI], Hadi El Yakhni, bhra-odoo, romc-odoo, sjai-odoo, Julien Launois (jula), Laetitia (ldau), adip-odoo, path-odoo, Traina Ludo, rpka-odoo, Stephane Vanmeerhaeghe (stva), Léopold Cantraine, abhk-odoo, ELCO, Khaj-odoo, chpa-odoo, adgu-odoo, Shubham Agarwal, Shubham Agarwal(shag), jipr-odoo, krpat-odoo, Abhishek Khant, Louis Wicket, Vedant Pandey (vpan-odoo), Julien Coppin (jucop), Jean Schoenlaub, Elisabeth Dickinson (edi)
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- l10n_be_pos_restaurant, pos_hr_restaurant, pos_restaurant_loyalty, pos_self_order, spreadsheet_dashboard_pos_restaurant
- Description
This module adds several features to the Point of Sale that are specific to restaurant management: - Bill Printing: Allows you to print a receipt before the order is paid - Bill Splitting: Allows you to split an order into different orders - Kitchen Order Printing: allows you to print orders updates to kitchen or bar printers
Code Analysis
Views touched (15)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
pos_restaurant.pos_order_change_receipt |
pos_restaurant.pos_order_change_receipt | ir.ui.view | qweb | Inherits point_of_sale.pos_order_change_receipt |
pos_restaurant.pos_order_receipt_header |
pos_restaurant.pos_order_receipt_header | ir.ui.view | qweb | Inherits point_of_sale.pos_order_receipt_header |
pos_restaurant_pos_category_kanban_view |
pos.restaurant.pos.category.kanban | pos.category | kanban | Inherits point_of_sale.view_pos_category_kanban |
pos_restaurant_product_pos_category_tree_view |
pos.restaurant.pos.category.list.view | pos.category | list | Inherits point_of_sale.product_pos_category_tree_view |
res_config_settings_view_form |
res.config.settings.view.form.inherit.pos_restaurant | res.config.settings | form | Inherits point_of_sale.res_config_settings_view_form |
view_pos_category_form_inherit_course |
pos.category.form.inherit.course | pos.category | form | Inherits point_of_sale.product_pos_category_form_view |
view_pos_course_form |
pos.course.form | pos.course | form | New |
view_pos_course_list |
pos.course.list | pos.course | list | New |
view_pos_pos_form |
pos.order.form.view.inherit | pos.order | form | Inherits point_of_sale.view_pos_pos_form |
view_pos_preset_form_inherit_pos_restaurant |
pos.preset.form | pos.preset | form | Inherits point_of_sale.view_pos_preset_form |
view_restaurant_floor_form |
Restaurant Floors | restaurant.floor | form | New |
view_restaurant_floor_kanban |
restaurant.floor.kanban | restaurant.floor | kanban | New |
view_restaurant_floor_search |
restaurant.floor.search | restaurant.floor | search | New |
view_restaurant_floor_tree |
Restaurant Floors | restaurant.floor | list | New |
view_restaurant_table_form |
Restaurant Table | restaurant.table | form | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (13)
New fields (1)
-
course_idMany2one → pos.courseindex=Truestring='Course' args: 'pos.course'
No public methods.
New fields (6)
-
default_screenSelectiondefault='tables'string='Default Screen' args: [('tables', 'Tables'), ('register', 'Register')] -
floor_idsMany2many → restaurant.floorcopy=Falsehelp='The restaurant floors served by this point of sale.'string='Restaurant Floors' args: 'restaurant.floor' -
floor_planJsoncompute='_compute_floor_plan'string='Floor Plan' -
floor_plan_settingsJsonstring='Floor Plan Settings' -
use_course_allocationBooleanstring='Enable Course Allocation' -
use_show_items_on_course_ticketBooleanhelp='Show items again on the fired course ticket in preparation printer'string='Show Items on Fired Course Ticket'
-
create(self, vals_list)@api.model_create_multi -
get_floor_plan(self) -
load_onboarding_bar_scenario(self, with_demo_data=True)@api.model -
load_onboarding_restaurant_scenario(self, with_demo_data=True)@api.model -
save_floor_plan(self, floor_plan) -
write(self, vals)
New fields (3)
-
category_idsOne2many → pos.categorycopy=Falsestring='Pos Category' args: 'pos.category', 'course_id' -
nameCharrequired=Truestring='Course Name' -
sequenceIntegerdefault=_default_sequencestring='Sequence'
No public methods.
New fields (4)
-
course_idsOne2many → restaurant.order.coursestring='Courses' args: 'restaurant.order.course', 'order_id' -
customer_countIntegerhelp='The amount of customers that have been served by this order.'readonly=Truestring='Guests' -
durationCharcompute='_compute_duration'help='Shows how long the table has been occupied.'string='Duration' -
table_idMany2one → restaurant.tablehelp='The table where this order was served'index='btree_not_null'readonly=Truestring='Table' args: 'restaurant.table'
-
read_pos_data(self, data, config)
New fields (1)
-
course_idMany2one → restaurant.order.courseindex='btree_not_null'ondelete='set null'string='Course Ref' args: 'restaurant.order.course'
No public methods.
New fields (0)
No new fields.
Public methods (1)-
order_receipt_generate_data(self, basic_receipt=False)
New fields (1)
-
use_guestBooleandefault=Falsehelp='Force guest selection when clicking on order button in PoS restaurant'string='Guest'
No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (1)-
default_get(self, fields)@api.model
New fields (4)
-
pos_default_screenSelectionreadonly=Falserelated='pos_config_id.default_screen' -
pos_floor_idsMany2manyreadonly=Falserelated='pos_config_id.floor_ids' -
pos_use_course_allocationBooleanreadonly=Falserelated='pos_config_id.use_course_allocation' -
pos_use_show_items_on_course_ticketBooleanreadonly=Falserelated='pos_config_id.use_show_items_on_course_ticket'
No public methods.
New fields (6)
-
activeBooleandefault=True -
floor_plan_layoutJsoncopy=Falsestring='Floor Plan Layout' -
nameCharrequired=True args: 'Floor Name' -
pos_config_idsMany2many → pos.configcopy=Falsedomain="[('module_pos_restaurant', '=', True)]"string='Point of Sales' args: 'pos.config' -
sequenceIntegerdefault=1 args: 'Sequence' -
table_idsOne2many → restaurant.tablestring='Tables' args: 'restaurant.table', 'floor_id'
-
add_floor_plan_image(self, name, data)@api.model -
deactivate_floor(self, session_id) -
write(self, vals)
New fields (8)
-
course_idMany2one → pos.coursereadonly=Truestring='Course' args: 'pos.course' -
firedBooleandefault=Falsestring='Fired' -
fired_dateDatetimestring='Fired Date' -
indexIntegerdefault=0string='Course index' -
line_idsOne2many → pos.order.linereadonly=Truestring='Order Lines' args: 'pos.order.line', 'course_id' -
nameCharreadonly=Truestring='Course Name' -
order_idMany2one → pos.orderindex=Trueondelete='cascade'required=Truestring='Order Ref' args: 'pos.order' -
uuidCharcopy=Falsedefault=<expr>readonly=Truestring='Uuid'
-
create(self, vals_list)@api.model_create_multi -
write(self, vals)
New fields (7)
-
activeBooleandefault=Truehelp='If false, the table is deactivated and will not be available in the point of sale' args: 'Active' -
floor_idMany2one → restaurant.floorindex='btree_not_null'string='Floor' args: 'restaurant.floor' -
floor_plan_layoutJsonstring='Floor Plan Layout' -
parent_idMany2one → restaurant.tablehelp='The parent table if this table is part of a group of tables'string='Parent Table' args: 'restaurant.table' -
parent_sideSelectionhelp='The parent table side where this table will be displayed'selection=[('left', 'Left'), ('right', 'Right'), ('top', 'Top'), ('bottom', 'Bottom')]string='Parent Side' -
seatsIntegerdefault=1help='The default number of customer served at this table.' args: 'Seats' -
table_numberIntegerdefault=0help='The number of the table as displayed on the floor plan'required=True args: 'Table Number'
-
are_orders_still_in_draft(self) -
set_parent_id(self, parent_id, parent_side, config_id)
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…