Manage & Schedule Appointments in Odoo 18: With or Without Payments
By Braincuber Team
Published on February 2, 2026
Whether you're running a wellness spa, a consulting firm, or a medical clinic, a smooth appointment booking system can make or break your customer experience. Odoo 18's Appointment module lets you offer online scheduling with or without requiring payment upfront—giving you the flexibility to match your business model exactly.
In this guide, we'll set up two appointment types for a wellness spa: a free 15-minute consultation (no payment required) and a 60-minute deep tissue massage that requires upfront payment to secure the booking. By the end, you'll have a fully functional online booking system integrated with your Odoo website.
Free Consultation
15-minute intro session
- No payment required
- Customer selects time slot
- Confirmation email sent
- Calendar invitation created
Deep Tissue Massage
60-minute treatment - $85
- Upfront payment required
- Reduces no-shows
- Professional booking flow
- Automatic invoice creation
Prerequisites
Part 1: Create a Free Appointment Type
Let's start with the simpler case—a free consultation where customers can book directly from your website without paying anything.
Create the Appointment Type
Navigate to Appointments → Appointment Types → New
| Field | Value | Notes |
|---|---|---|
| Appointment Title | Free Wellness Consultation | Displayed on website |
| Duration | 00:15 | 15 minutes |
| Pre-Booking Time | 2 hours | Minimum notice before booking |
| Scheduling Window | Available Now | Or set specific date range |
| Allow Cancelling | Enabled | Let customers cancel/reschedule |
Configure Availability
In the Availability section:
| Field | Value |
|---|---|
| Availability On | Users |
| Users | Select staff members who can take appointments |
| Assignment Method | Choose based on calendar availability |
Switch to the Schedule tab to define working hours:
Disable Payment Requirement
Go to the Options tab and ensure:
This is the key setting that makes this a free appointment. Customers will be able to book directly without going through checkout.
Add Booking Questions (Optional)
In the Questions tab, add any information you need to collect during booking:
Publish to Website
Click Go to Website in the top-right corner, then toggle Published to enable the appointment on your website.
Customers can now visit your website, select an available time slot, and book their free consultation. They'll receive an automatic confirmation email with calendar invite.
Part 2: Create a Paid Appointment Type
Now let's create an appointment that requires upfront payment. This is ideal for premium services where you want to reduce no-shows and guarantee commitment.
Create the Appointment Type
Navigate to Appointments → Appointment Types → New
| Field | Value |
|---|---|
| Appointment Title | Deep Tissue Massage - 60 min |
| Duration | 01:00 |
| Pre-Booking Time | 24 hours |
| Scheduling Window | Within 30 days |
| Allow Cancelling | Enabled (with 24-hour notice) |
Enable Upfront Payment
Go to the Options tab and configure payment settings:
When you enable this option, additional fields appear:
| Field | Value |
|---|---|
| Product | Deep Tissue Massage (service product) |
| Price | $85.00 |
You need to create a service product in Sales → Products first. Set the product type to "Service" and configure your price. This product will be linked to the appointment and included in the invoice.
Configure Messages
In the Messages tab, customize the confirmation and cancellation messages:
Test the Booking Flow
Click Go to Website and enable Published. Then test the complete booking flow:
Managing Appointments
Once appointments start coming in, you can manage them from the Appointments module:
Calendar View
See all appointments in a calendar view organized by staff member or appointment type.
List View
Filter and search appointments by date, customer, status, or appointment type.
Linked Invoices
For paid appointments, invoices are automatically created and linked to the booking.
Email Reminders
Configure automatic reminder emails to be sent before appointments.
You now have a professional appointment booking system with both free and paid options. Customers can book directly from your website, staff members receive calendar invitations, and payments are processed automatically. This same approach works for any service business—consulting, healthcare, beauty services, fitness training, or professional coaching.
Frequently Asked Questions
Yes, the Appointment module is only available in Odoo Enterprise Edition. The Community Edition doesn't include this module. However, you can use third-party appointment apps from the Odoo App Store for Community Edition, though features may vary.
Yes, if you enable the 'Allow Cancelling' option when creating the appointment type, customers receive a link in their confirmation email that lets them cancel or reschedule. You can also set a minimum notice period (e.g., 24 hours before the appointment) for cancellations.
Odoo supports multiple payment providers including Stripe, PayPal, Authorize.net, and many others. Configure your preferred payment provider in the Website settings under eCommerce > Payment Providers. Once configured, customers can pay during the booking process using credit cards or other supported methods.
In the appointment type settings, under the Availability section, select 'Users' for 'Availability On' and choose the staff members who can accept this type of appointment. You can set the Assignment Method to 'Choose based on calendar availability' for automatic assignment or let customers choose their preferred staff member.
Odoo automatically sends email confirmations when appointments are booked. For additional reminders, you can set up automated actions in Settings > Technical > Automated Actions to send reminder emails at specific intervals before the appointment. For SMS reminders, you'll need to configure the SMS module and integrate it with your appointment workflow.
