This module provides a REST API to create new stays. Useful if you have a web form on your website and you want it to create a new draft stay upon validation.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Adds a REST API so an external web form can create, read, update and cancel stays in Odoo, with automatic guest matching, validation, notifications and a configurable stay type list.
This module lets an external website form talk to Odoo through a REST API. When a visitor submits the form, a draft stay is created in Odoo with the guest's details (name, title, email, phone, mobile, address, country, message and extra questions) and the arrival/departure dates and times.
The API also allows reading a stay, updating it and cancelling it, using a unique identifier (UUID) generated automatically for each stay. The UUID is shown on the stay form to system users, and an update URL can be built from the stay type configuration.
Business rules are enforced: arrival date cannot be in the past, departure cannot be before arrival, at least one guest is required, arrival and departure times must be morning, afternoon or evening, and the title and country codes must exist in Odoo. Phone and mobile numbers are reformatted according to the country. A partner can be matched automatically from the web form information, and a button on the stay form lets users do this manually.
A notification email is sent to the configured users when a stay is created, updated or cancelled. To protect against abuse, the API refuses new requests when too many draft stays were created in the last 24 hours.
A new 'Types' menu under the Stay configuration lets managers maintain stay types, each with its own update URL. A setting defines the default company for stays created from the web form.
Depends on
Menus it adds
Models and fields (4)
- stay.stay · extends an existing modeltype_id, controller_zip (ZIP), controller_city (City), controller_mode (Web Form Mode), controller_uuid (UUID), controller_email (E-mail), controller_notes (Additional Questions), controller_phone (Phone), controller_mobile (Mobile), controller_street (Address Line 1), controller_message (Guest Message), controller_street2 (Address Line 2), controller_lastname (Lastname), controller_title_id (Title), controller_firstname (Firstname), controller_country_id (Country), controller_update_url (Update URL)
- stay.type · new modelname, active, sequence, update_url (Update URL)
- fastapi.endpoint · extends an existing model
- res.config.settings · extends an existing modelstay_controller_company_id (Default Company for Stays created from Web Form)
Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 3 confirmed, 6 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/vertical-abbey.
terminal Installation and usage
OCA documentation · Odoo 18.0Installation
Source · Odoo 18.0This module depends on the OCA module fastapi from rest-framework.
No verified information in OCA: Configuration, Usage.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.