To create appointments in Odoo 19, create an appointment type, choose the users or resources people can book, define the available hours, and publish the booking page. This guide covers the scheduling setup for demos, interviews, service visits and shared spaces.
If you already have a working booking calendar and want to use it to attract and qualify prospective customers, continue with our guide to building a free consultation booking flow with Odoo CRM.
Why a booking link alone is not enough
A booking page needs to reflect the way your team works. A consultant needs time between calls. A room can accommodate only a certain number of people. Customers in another country need to understand which time they are choosing.
Without clear rules, a convenient form can still produce unavailable hosts, bookings outside working hours and cancellation requests that arrive too late to reuse the slot. The aim is a calendar people can actually rely on.
Understand the appointment type before configuring it
An appointment type is a reusable definition of a bookable service. It specifies the duration, hosts or resources, available hours and booking rules. An individual appointment is a reservation made using that definition.
For example, a 30-minute product demonstration and a two-hour meeting room reservation should be separate types. They need different availability and assignment rules.
How it works in Odoo 19
The following steps use the standard Appointments app and the terminology in the Odoo 19 documentation. Check that the app is available in your database. An external calendar connection needs its own configuration; assigning a user does not by itself configure Google or Outlook synchronization.
1. Create the type and choose users or resources
Open Appointments → New. Enter an Appointment Title and Duration. Use a name customers will understand, such as “Product demonstration — 30 minutes”.
Choose Users when the booking needs a person, such as a consultant, salesperson or interviewer. Select the users who can host it. Choose Resources when customers are reserving a space or facility.
For a resource, go to Appointments → Configuration → Resources and define its name, capacity and time zone. Resource capacity describes how many people the resource accommodates. Enable Manage Capacities on a resource-based type when booking must respect that limit; it is not the general setting for preventing overlapping staff meetings.
Choose an Assignment Method: customers can select a user or resource before choosing a time, choose the time first, or select a time and let Odoo assign the available user or resource.
2. Define available hours and booking limits
In the Schedule tab, add the days and time ranges when the appointment can be booked. For example, add 09:00–12:00 and 13:00–16:00 on working days to leave a lunch break. These are illustrative hours, not a recommended schedule for every team.
Set Pre-Booking Time to require preparation time before a meeting. Use the Scheduling Window to limit how many days ahead people can book or to offer appointments within a particular date range. Configure Allow Cancelling to define how close to the appointment customers may cancel themselves.
Check the time zone in Options, especially for a team serving several countries. Test what a customer sees rather than assuming the booking page and every participant’s calendar use the same local time.
3. Configure questions, messages and reminders
Use the Questions tab to collect information needed to deliver the appointment. For an illustrative technical support call, ask for the machine type, serial number and issue category. Set Mandatory Answer only where the answer is essential.
In Messages, explain the appointment in the Introduction Message and add any joining or arrival instructions in Extra Message on Confirmation. These messages are visible to customers.
In Options, select Reminders and their timing. Check the available communication methods and delivery setup in your database before relying on email or SMS. Enable Manual Confirmation if bookings require approval; the requested slot remains reserved until accepted or rejected.
4. Publish and test the complete booking
Click Go to Website and switch the appointment from Unpublished to Published. Open its public page as a visitor, select a date and time, answer the questions and complete the reservation.
- Check that the correct host or resource receives the booking.
- Try a time outside the schedule and a time already occupied by the host.
- Check the minimum notice, booking horizon and cancellation limit.
- Test confirmation messages, configured reminders and time-zone display.
- For a resource booking, check the capacity with more than one participant.
When a booking needs a separate website integration
The publishing steps above refer to the Odoo booking page. A website built on another platform needs a deliberate connection to that booking flow. Linking to the published page and building a custom interface are different implementation choices; do not assume an Odoo Website editor action applies to every website.
For help connecting an external site or another system, see Odoo integration. For a sales-specific example after the calendar is ready, read how to turn free consultation bookings into CRM opportunities.
Check the process after launch
Track scheduling conflicts, manual rescheduling requests and reminder delivery using your own records. Compare them with the period before the change. A working configuration should make responsibility and availability clearer; improved attendance or sales still needs to be measured.
If your team needs help defining these rules and setting up the application, discuss your workflow through Odoo implementation or book a meeting with Alexander Koltsov.
