Odoo 17 takes online bookings through the Appointments app: you define an appointment type with a duration, the staff who can take it and the hours they are available, and Odoo publishes a page where customers pick a free slot. Each booking becomes a calendar event with confirmation and reminder emails. Appointments is an Enterprise app.
Let Customers Book Appointments Online with Odoo 17
Why Online Appointment Booking Matters
Customers today expect convenience. Whether you're offering sales demos, health consultations, virtual meetings, or onboarding calls, online booking:
- 🎯 Reduces no-shows with reminders
- 🕒 Cuts back on email/phone scheduling
- 📲 Offers real-time availability 24/7
With Odoo 17, you don't need a third-party booking tool — it's already built in.
Enabling the Appointment Module
To start using this feature:
Apps → Install "Appointments"
It adds a simple backend configuration and a customer-facing appointment form on your website.
Creating Bookable Services
Define each appointment type under:
Appointments → Configuration → Appointment Types → Create
- 📝 Service Name (e.g., "Free Demo", "Therapy Session")
- ⏱️ Duration (15, 30, 60 minutes)
- 📅 Assigned staff members
- 🖥️ Meeting location: In-person, phone, or video
Customize lead time, buffer time between slots, and cancellation rules.
How Customers Book Appointments
Each service gets its own link or web page:
- 🌐 Customers pick a date and time based on live availability
- 🧑 Fill in their name, email, and optional custom fields
- 📩 Receive instant confirmation and calendar invite
It's a smooth, professional experience that builds trust from the first interaction.
Managing Staff Availability
Each user defines their working hours in:
Settings → Users → Working Hours
You can block out breaks, public holidays, or personal time. Odoo supports:
- 📆 Weekly schedules (e.g., Mon–Fri, 9am–5pm)
- 🔄 Sync with Google/Outlook calendars via iCal
- 📍 Routing bookings based on team or user availability
Automated Confirmations and Reminders
Odoo sends timely communication to reduce no-shows:
- ✅ Instant confirmation email on booking
- 🔔 Reminder emails before the meeting
- ❌ Optional reschedule/cancellation links
You can personalize the templates with your logo, instructions, or follow-up links.
Integration with CRM and Website
Appointments work hand-in-hand with:
- 🧪 CRM — Log meetings as activities for leads
- 🌐 Website — Embed on your "Contact" or "Book Now" pages
- 📋 Helpdesk or Sales — Route specific services by department
This means every booking helps move your business forward — from lead to loyal customer.
Conclusion
Odoo 17's Appointments module makes scheduling effortless — for you and your customers. Whether you're a service provider, consultant, or coach, you can turn availability into opportunity with automated, professional online bookings.
Want help setting up appointment types or linking your calendar? Our Odoo team can make it work for you.
Questions we get asked
Is the Appointments app in Odoo 17 Community?
No. Appointments carries the Enterprise licence, so it comes with an Odoo Enterprise subscription or a paid Odoo Online plan rather than the free Community edition. Community users can still collect requests through a website form that creates a lead or a calendar activity, but without live availability, self-service slots or customer rescheduling.
How does Odoo know when someone is free?
From two places: the working hours on the user's record, which set the outer limits of the day, and their calendar, where existing meetings block the matching slots. The appointment type adds its own rules on top - minimum notice before a booking, a gap between slots, and how far into the future the calendar can be filled.
Can bookings sync with Google or Outlook calendars?
Yes. Odoo's Calendar app synchronises both ways with Google Calendar and Microsoft Outlook once the connection is authorised in the settings. Meetings booked in Odoo then appear in the personal calendar, and events created there block the matching slots on the booking page, so an hour that is already busy is never offered twice.
Can customers reschedule or cancel by themselves?
Yes, when the appointment type allows it. The confirmation email carries links to move or cancel the booking, and you set how close to the start time that stays possible. A cancellation frees the slot immediately and updates the underlying calendar event, so no one has to trade emails to give the time back.
Can I take payment at the time of booking?
Yes, provided a payment provider is configured on the website. An appointment type can require payment before the slot is confirmed, which suits paid consultations and cuts no-shows sharply. The price is set per appointment type, and the resulting transaction is recorded like any other online payment in the database.
