Website Appointment Odoo

Hệ thống đặt lịch hẹn trực tuyến tự động với tích hợp calendar, thanh toán và quản lý slot thông minh

Module Website Appointment trong Odoo 19 cho phép khách hàng tự đặt lịch hẹn trực tuyến 24/7, tự động đồng bộ với calendar của nhân viên và gửi xác nhận qua email/SMS.

Hệ thống quản lý availability thông minh, tự động block slot đã đặt, tích hợp Google Calendar/Outlook, thu phí đặt lịch, và cho phép reschedule/cancel dễ dàng.

Từ tư vấn bán hàng, khám bệnh, cắt tóc đến coaching - mọi loại dịch vụ đều có thể nhận booking online với quy trình tự động hoàn toàn.

Odoo 19
Online Booking
Calendar Sync
Payment
Automation
Google Calendar

Tính năng nổi bật

Điểm chính

  • Self-Service Booking: Khách hàng tự chọn ngày giờ, nhân viên, dịch vụ trên website 24/7

  • Smart Availability: Tự động hiển thị slot trống dựa trên working hours, leaves, existing appointments

  • Calendar Integration: Đồng bộ 2-way với Google Calendar, Outlook, Apple Calendar

  • Payment Collection: Thu phí đặt lịch hoặc deposit qua Stripe, PayPal trước khi confirm

  • Auto-Confirmation: Gửi email/SMS xác nhận tự động với calendar invite (.ics file)

  • Reschedule/Cancel: Khách hàng tự reschedule hoặc cancel với policy linh hoạt

  • Resource Management: Quản lý rooms, equipment, staff assignment cho appointment

  • Reminders: Tự động gửi reminder email/SMS trước appointment (24h, 1h)


Quy trình đặt lịch

Các bước thực hiện

  • 1. Khách hàng vào website, nhấn "Book Appointment". Chọn loại dịch vụ (Sales Consultation, Medical Checkup, Haircut).

  • 2. Chọn nhân viên (hoặc "Any Available"). Hệ thống hiển thị avatar, bio, rating của staff.

  • 3. Chọn ngày từ calendar. Hệ thống chỉ hiển thị ngày có slot trống, disable ngày nghỉ/full.

  • 4. Chọn time slot (9:00 AM, 9:30 AM, 10:00 AM). Chỉ hiển thị slot available dựa trên working hours và appointments đã có.

  • 5. Điền thông tin: Name, Email, Phone, Notes. Nếu dịch vụ yêu cầu payment, nhập thẻ tín dụng.

  • 6. Review booking details, nhấn Confirm. Nếu có payment, xử lý thanh toán qua gateway.

  • 7. Nhận email xác nhận với calendar invite (.ics). Appointment tự động thêm vào Google Calendar của staff và customer.


Cấu hình appointment type

Các bước thực hiện

  • 1. Vào Website → Configuration → Appointment Types. Nhấn Create.

  • 2. Basic Info: Name (Sales Consultation), Duration (30 minutes), Category (Sales).

  • 3. Availability: Chọn working hours (Mon-Fri 9AM-5PM). Set buffer time (15 min before/after). Max bookings per day (8).

  • 4. Staff Assignment: Chọn staff có thể handle appointment này. Bật "Allow customer to choose staff" hoặc auto-assign.

  • 5. Location: Office address, Zoom link, hoặc Phone call. Tự động thêm vào calendar invite.

  • 6. Payment: Bật "Require Payment". Chọn amount ($50) hoặc percentage (20% deposit). Chọn payment provider (Stripe).

  • 7. Confirmation: Customize email template. Thêm instructions, preparation checklist. Bật SMS reminder.

  • 8. Cancellation Policy: Allow cancel up to 24h before. Refund policy (full/partial/no refund).


Tích hợp Google Calendar

Các bước thực hiện

  • 1. Vào Settings → General Settings → Integrations → Google Calendar. Nhấn Configure.

  • 2. Authorize: Nhấn "Connect Google Account". Login với Google account của staff. Grant calendar permissions.

  • 3. Sync Settings: Chọn calendar để sync (Work, Personal). Bật 2-way sync (Odoo ↔ Google).

  • 4. Conflict Detection: Bật "Block slots with existing events". Nếu staff có meeting trong Google Calendar, slot đó sẽ unavailable.

  • 5. Auto-Create Events: Khi appointment được book, tự động tạo event trong Google Calendar với title, description, attendees.

  • 6. Update Sync: Nếu appointment reschedule/cancel trong Odoo, tự động update/delete event trong Google Calendar.

  • 7. Test: Book test appointment, verify event xuất hiện trong Google Calendar. Tạo event trong Google Calendar, verify slot bị block trong Odoo.


Quản lý availability

Điểm chính

  • Working Hours: Set working hours cho từng staff (Mon-Fri 9-5, Sat 10-2). Hệ thống chỉ hiển thị slot trong working hours.

  • Time Off: Staff request time off trong HR module. Appointments tự động block những ngày nghỉ.

  • Buffer Time: Set buffer before/after appointment (15 min) để staff có thời gian chuẩn bị/wrap up.

  • Slot Duration: Customize slot duration (15/30/60 min). Có thể set different duration cho different appointment types.

  • Max Bookings: Limit số bookings per day/week để tránh overload. Ví dụ: max 8 consultations per day.

  • Advance Booking: Set minimum (24h) và maximum (30 days) advance booking window.

  • Same-Day Booking: Bật/tắt same-day booking. Nếu tắt, khách hàng phải book ít nhất 1 ngày trước.


Payment và pricing

Payment options

OptionUse CaseSetup
Full PaymentThu toàn bộ phí trước appointmentSet Amount = service price. Require payment before confirm
DepositThu deposit, còn lại trả sauSet Amount = 20% of price. Collect remaining at appointment
Free BookingKhông thu phí đặt lịchDisable "Require Payment". Useful for internal meetings
Pay at VenueKhách trả tiền khi đếnDisable payment. Add note "Payment due at appointment"
Cancellation FeeThu phí nếu cancel muộnSet cancellation policy. Charge fee if cancel < 24h

Email và SMS automation

Điểm chính

  • Confirmation Email: Gửi ngay sau khi book. Include appointment details, calendar invite, location, preparation instructions.

  • Reminder Email: Gửi 24h trước appointment. Include reschedule/cancel link. Bật trong Appointment Type settings.

  • SMS Reminder: Gửi 1h trước appointment. Short message với time, location. Require SMS credits.

  • Reschedule Notification: Gửi khi appointment được reschedule. Include new date/time.

  • Cancellation Confirmation: Gửi khi appointment bị cancel. Include refund info nếu có.

  • Follow-up Email: Gửi sau appointment. Request feedback, offer next appointment.


Reschedule và cancellation

Các bước thực hiện

  • 1. Khách hàng nhận email confirmation với link "Reschedule" và "Cancel".

  • 2. Reschedule: Click link, chọn ngày giờ mới từ available slots. Confirm reschedule. Nhận email xác nhận mới.

  • 3. Cancellation: Click link, confirm cancel. Nếu trong cancellation window (>24h), full refund. Nếu muộn (<24h), no refund hoặc partial refund.

  • 4. Admin Reschedule: Staff có thể reschedule từ backend. Gửi notification cho customer.

  • 5. No-Show: Nếu customer không đến, staff mark "No-Show". Không refund, có thể charge no-show fee.

  • 6. Refund Process: Nếu eligible, refund tự động process qua payment gateway. Tiền về account trong 5-10 ngày.


Use cases theo ngành

Ứng dụng thực tế

NgànhAppointment TypeSetup
HealthcareDoctor Consultation (30 min)Require patient info. Sync with medical records. Send pre-visit forms
Beauty/SpaHaircut (45 min), Massage (60 min)Show staff portfolio. Require deposit. Send preparation tips
EducationTutoring Session (60 min)Recurring appointments. Zoom integration. Send homework before session
Real EstateProperty Viewing (30 min)Attach property details. Location on map. Require ID verification
LegalLegal Consultation (60 min)Require case summary. NDA signing. Full payment upfront
FitnessPersonal Training (45 min)Package booking (10 sessions). Track attendance. Send workout plan

Tối ưu booking rate

Điểm chính

  • Reduce Friction: Minimize form fields (Name, Email, Phone only). Pre-fill info for logged-in users.

  • Show Availability: Display "Next available: Tomorrow 2PM" prominently. Create urgency.

  • Staff Profiles: Add photos, bios, specialties. Let customers choose preferred staff.

  • Social Proof: Show "15 people booked this week". Display reviews/ratings.

  • Mobile-First: 70% bookings from mobile. Ensure calendar picker works well on mobile.

  • Instant Confirmation: Confirm immediately, don't make customer wait for approval.

  • Flexible Rescheduling: Make it easy to reschedule. Reduces no-shows.

  • Reminders: Send 24h and 1h reminders. Reduces no-shows by 30-40%.


Báo cáo và analytics

Điểm chính

  • Booking Dashboard: Vào Appointments → Reporting. View total bookings, revenue, no-show rate.

  • Staff Performance: Bookings per staff, average rating, revenue generated.

  • Peak Times: Identify busiest days/hours. Optimize staff scheduling.

  • Cancellation Analysis: Track cancellation rate, reasons. Adjust policy if needed.

  • Revenue Tracking: Total revenue from appointments. Break down by service type.

  • Customer Insights: Repeat booking rate, average time between appointments.


Khắc phục sự cố

Common issues

IssueCauseSolution
No slots availableWorking hours not set or all slots bookedCheck staff working hours. Increase max bookings per day
Calendar not syncingGoogle Calendar not authorizedRe-authorize Google account. Check sync settings
Payment failedInvalid card or gateway errorCheck payment provider settings. Test with test card
Email not sentEmail server not configuredConfigure SMTP in Settings → Email Servers
Double booking2-way sync not enabledEnable 2-way sync with Google Calendar
Customer can't rescheduleReschedule link expired or disabledCheck appointment settings. Generate new link

FAQ

Điểm chính

  • Có thể book recurring appointments không? Có, bật "Recurring" trong appointment type. Khách hàng chọn frequency (weekly, monthly).

  • Làm sao để block specific dates? Vào Calendar → Time Off, tạo time off cho staff. Hoặc create "Blocked" appointment type.

  • Có thể tích hợp với Zoom không? Có, cài module website_appointment_zoom. Tự động tạo Zoom meeting cho appointment.

  • Làm sao để require deposit? Trong Appointment Type, bật "Require Payment", set amount = 20% of price.

  • Có thể customize booking form không? Có, vào Appointment Type → Form Fields. Thêm custom fields (Address, Age, etc).

  • Làm sao để prevent no-shows? Require deposit, send reminders, có no-show policy rõ ràng.

  • Có thể book cho nhiều người cùng lúc không? Có, set "Max Attendees" > 1. Useful cho group classes.

  • Làm sao để track attendance? Staff mark "Attended" hoặc "No-Show" sau appointment. View report trong Analytics.