TIP: You can type at any time to perform a new search.
Restaurant
pos_restaurant · odoo/odoo
- Repository
- odoo/odoo · module folder
- Module version
- 1.0
- Category
- Sales/Point of Sale
- Folder size
- 6.06 MB
- License
- LGPL-3
- Application
- Yes
- Auto-installable
- No
- Website
- https://www.odoo.com/app/point-of-sale-restaurant
- Last tracking update
- 2026-08-20 10:12:45
- Authors
- Odoo S.A.
- Maintainers
- Odoo S.A.
- Committers
- Raphael Collet, odoo, Odoo Translation Bot, Aaron Bohy, Alexandre Kühn, Julien Castiaux, Xavier-Do, Victor Feyens, Julien Mougenot, Achraf (abz), Tiffany Chang (tic), Gorash, Pierre Paridans, roen-odoo, Renaud Thiry, rhe-odoo, David Monnom (moda), Louis Wicket (wil), alsh-odoo, Pedram (PEBR), Victor Piryns (pivi), Mahamadasif Ansari, Claire Bretton (clbr), Levi Siuzdak (sile), Dylan Kiss (dyki), Sarah Bellefroid, Pedram (pebr), Louis Travaux, Adrien Guilliams (adgu), shag-odoo, vava-odoo, kcv-odoo, Chrysanthe (chgo), mano-odoo, manv-afk, aamo-odoo, Joseph (jcb), parp-odoo, Loukas Wets (lowe), Xavier Luyckx (xlu), Stéphane Diez, gteboul, Pierre Pulinckx (PIPU), paan-odoo, Jitendra Prajapat, David Monnom, Nesma Harraz, Smit Patel, Arthur Nanson, Mohammad Abdulmoneim (abdu), Pierre Pulinckx, Bastien PIERRE, plha-odoo, kkuj-odoo, Shubham Agarwal [SHAG], ksku-odoo, Basioni (basm), vpan-odoo, dhruv, vlst-odoo, Guillaume V, Meet Jivani [MEJI], Hadi El Yakhni, bhra-odoo, aksi-odoo, sjai-odoo, Ali Hassan (alhy), path-odoo, suma-odoo, Traina Ludo, rpka-odoo, Stephane Vanmeerhaeghe (stva), Stephane Vanmeerhaeghe, Léopold Cantraine, abhk-odoo, chpa-odoo, adgu-odoo, Shubham Agarwal(shag), Stephane vm, krpat-odoo
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- l10n_be_pos_restaurant, pos_hr_restaurant, pos_restaurant_adyen, pos_restaurant_loyalty, pos_restaurant_stripe, 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 (8)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
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_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 (10)
New fields (5)
-
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' -
iface_printbillBooleanhelp='Allows to print the Bill before payment.'string='Bill Printing' -
iface_splitbillBooleanhelp='Enables Bill Splitting in the Point of Sale.'string='Bill Splitting' -
set_tip_after_paymentBooleanhelp='Adjust the amount authorized by payment terminals to add a tip after the customers left or at the end of the day.' args: 'Set Tip After Payment'
-
create(self, vals_list)@api.model_create_multi -
load_onboarding_bar_scenario(self, with_demo_data=True)@api.model -
load_onboarding_restaurant_scenario(self, with_demo_data=True)@api.model -
write(self, vals)
New fields (3)
-
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' -
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 (0)No public methods.
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 (5)
-
pos_default_screenSelectionreadonly=Falserelated='pos_config_id.default_screen' -
pos_floor_idsMany2manyreadonly=Falserelated='pos_config_id.floor_ids' -
pos_iface_printbillBooleancompute='_compute_pos_module_pos_restaurant'readonly=Falsestore=True -
pos_iface_splitbillBooleancompute='_compute_pos_module_pos_restaurant'readonly=Falsestore=True -
pos_set_tip_after_paymentBooleancompute='_compute_pos_set_tip_after_payment'readonly=Falsestore=True
No public methods.
New fields (8)
-
activeBooleandefault=True -
background_colorCharhelp='The background color of the floor in a html-compatible format' args: 'Background Color' -
background_imageBinaryargs: 'Background Image' -
floor_background_imageImagestring='Floor Background Image' -
nameCharrequired=True args: 'Floor Name' -
pos_config_idsMany2many → pos.configdomain="[('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'
-
deactivate_floor(self, session_id) -
rename_floor(self, new_name) -
sync_from_ui(self, name, background_color, config_id)@api.model -
write(self, vals)
New fields (6)
-
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' -
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 (11)
-
activeBooleandefault=Truehelp='If false, the table is deactivated and will not be available in the point of sale' args: 'Active' -
colorCharhelp="The table's color, expressed as a valid 'background' CSS property value" args: 'Color' -
floor_idMany2one → restaurant.floorindex='btree_not_null'string='Floor' args: 'restaurant.floor' -
heightFloatdefault=50help="The table's height in pixels" args: 'Height' -
parent_idMany2one → restaurant.tablehelp='The parent table if this table is part of a group of tables'string='Parent Table' args: 'restaurant.table' -
position_hFloatdefault=10help="The table's horizontal position from the left side to the table's center, in pixels" args: 'Horizontal Position' -
position_vFloatdefault=10help="The table's vertical position from the top to the table's center, in pixels" args: 'Vertical Position' -
seatsIntegerdefault=1help='The default number of customer served at this table.' args: 'Seats' -
shapeSelectiondefault='square'required=Truestring='Shape' args: [('square', 'Square'), ('round', 'Round')] -
table_numberIntegerdefault=0help='The number of the table as displayed on the floor plan'required=True args: 'Table Number' -
widthFloatdefault=50help="The table's width in pixels" args: 'Width'
-
are_orders_still_in_draft(self) -
set_parent_id(self, parent_id, config_id)
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…