Planning Resources & Roles in Odoo 18
By Braincuber Team
Published on January 9, 2026
A construction company runs three projects simultaneously across different sites. They have 45 workers with varying skills—electricians, plumbers, carpenters, supervisors, and general laborers. The project manager maintains a spreadsheet to track who's assigned where and when, but it becomes a nightmare when workers call in sick, projects run overtime, or clients request schedule changes. Half the time, they discover conflicts only when two supervisors show up at the same site expecting the same crew, or when a specialist is double-booked across projects.
Odoo 18 Planning module provides a visual, calendar-based scheduling system where you define roles (Electrician, Project Manager, Machine Operator), assign employees to those roles, and schedule shifts across projects and sales orders. The interface shows conflicts instantly with red indicators when employees are double-booked. Open shifts let available team members pick up uncovered work. Shift templates eliminate repetitive data entry for standard schedules. The module integrates with Projects, Manufacturing, HR, and Payroll—creating a unified resource management system that prevents conflicts, optimizes utilization, and gives everyone visibility into who's doing what, when.
Core Benefit: Visual calendar scheduling → define roles and assign resources → schedule shifts by project/sales order → automatic conflict detection → open shifts for flexibility → templates for efficiency. Complete resource visibility across the organization.
Understanding Planning Module Components
Calendar Scheduling
Visual calendar interface showing daily, weekly, monthly, or yearly views. Schedule activities by resource, role, project, or sales order. Hover for shift details, click to edit.
Roles & Resources
Define job roles (Designer, Developer, Technician) and assign employees. Resources are scheduled based on role requirements, ensuring qualified people handle appropriate work.
Open Shifts
When employees can't complete assigned shifts, tasks become available for others to claim. Ensures workflow continuity even when originally assigned resources are unavailable.
Shift Templates
Create reusable templates for standard shifts—morning warehouse crew, afternoon support desk, night security. Apply templates instead of entering the same details repeatedly.
Configuring Roles
Roles define job functions within your organization. Assigning roles to employees clarifies responsibilities and enables role-based scheduling. When you need a "Senior Developer" for a project shift, you can see which employees have that role and their availability.
Access Role Configuration
Navigate to role settings:
- Go to Planning → Configuration → Roles
- View existing roles with Name, Resources, and Services
- Click New to create a role
- Roles can be color-coded for visual identification
Define Role Details
Configure role settings:
- Name: Descriptive role title (Senior Developer, Site Supervisor)
- Resources: Assign employees who can fulfill this role
- Services: Define services provided when performing this role
- Color: Assign distinct color for calendar visibility
ROLE CONFIGURATION EXAMPLES ═══════════════════════════════════════════════════════════ ROLE 1: Senior Developer ─────────────────────────────────────────────────────────── Name: Senior Developer Color: Blue (#3498db) Resources: • Alex Thompson • Sarah Martinez • David Chen Services: • Custom Development • Code Review • Technical Architecture ROLE 2: Project Manager ─────────────────────────────────────────────────────────── Name: Project Manager Color: Green (#27ae60) Resources: • Jennifer Wilson • Michael Roberts Services: • Project Planning • Client Communication • Team Coordination ROLE 3: Site Electrician ─────────────────────────────────────────────────────────── Name: Site Electrician Color: Orange (#e67e22) Resources: • Robert Garcia • James Lee • Maria Santos • Carlos Rivera Services: • Electrical Installation • Wiring Inspection • Panel Configuration ROLE 4: Customer Support Specialist ─────────────────────────────────────────────────────────── Name: Customer Support Specialist Color: Purple (#9b59b6) Resources: • Emily Brown • Lisa Taylor • Kevin White Services: • Phone Support • Email Support • Live Chat ROLE 5: Warehouse Operator ─────────────────────────────────────────────────────────── Name: Warehouse Operator Color: Teal (#1abc9c) Resources: • John Miller • Amy Johnson • Chris Anderson • Patricia Williams • Daniel Moore Services: • Receiving • Picking & Packing • Inventory Management
Creating Shift Templates
Shift templates save time by pre-defining standard scheduling patterns. Instead of entering the same information for recurring shifts, apply a template and the details populate automatically.
SHIFT TEMPLATE CONFIGURATION
═══════════════════════════════════════════════════════════
NAVIGATION: Planning → Configuration → Shift Templates
TEMPLATE 1: Morning Warehouse Shift
───────────────────────────────────────────────────────────
Template Name: Morning Warehouse Shift
Planned Hours: 6:00 AM - 2:00 PM
Duration: 8 hours
Role: Warehouse Operator
Project: Operations - Warehouse
Notes: "Daily receiving and order processing.
Check inventory alerts before starting."
TEMPLATE 2: Afternoon Support Desk
───────────────────────────────────────────────────────────
Template Name: Afternoon Support Desk
Planned Hours: 12:00 PM - 8:00 PM
Duration: 8 hours
Role: Customer Support Specialist
Project: Customer Service Operations
Notes: "Cover phone, email, and chat.
Peak hours typically 2-5 PM."
TEMPLATE 3: Development Sprint Day
───────────────────────────────────────────────────────────
Template Name: Development Sprint Day
Planned Hours: 9:00 AM - 6:00 PM
Duration: 8 hours (1 hour lunch)
Role: Senior Developer
Project: (Linked at scheduling time)
Notes: "Sprint-focused development.
Daily standup at 9:15 AM."
TEMPLATE 4: Night Security Watch
───────────────────────────────────────────────────────────
Template Name: Night Security Watch
Planned Hours: 10:00 PM - 6:00 AM
Duration: 8 hours
Role: Security Officer
Project: Facility Security
Notes: "Perimeter checks every 2 hours.
Log all entries after midnight."
TEMPLATE 5: Weekend Field Service
───────────────────────────────────────────────────────────
Template Name: Weekend Field Service
Planned Hours: 8:00 AM - 4:00 PM
Duration: 8 hours
Role: Field Service Technician
Project: (Linked to service orders)
Notes: "On-call for emergency service.
Premium overtime rates apply."
HOW TO USE TEMPLATES
═══════════════════════════════════════════════════════════
1. Create new schedule (New button)
2. Select template from dropdown
3. Template populates:
- Planned hours
- Duration
- Role
- Project (if specified)
- Notes
4. Add specific resource and date
5. Save or Publish
Scheduling Activities
The main scheduling interface uses a calendar view where you create, view, and manage shifts. Schedule by resource, role, project, or sales order depending on your planning approach.
Create a New Schedule
Add a shift to the calendar:
- Click New button or click directly on a time slot
- Select Resource (the employee assigned)
- Select Role (the function they'll perform)
- Link to Project and/or Sales Order Item
- Set Date, Time, and Allocated Hours
Configure Recurring Shifts
Set up repeating schedules:
- Click the Repeat button on the shift form
- Select frequency (daily, weekly, monthly)
- Edits to one instance don't affect others
- Deleting one instance removes only that occurrence
- Disable repeat to stop future occurrences
Publish and Notify
Distribute schedules to team:
- Click Publish & Send to email schedule to assigned resources
- Or click Save to store as draft without notifying
- Published shifts appear in employees' "My Planning" view
- Notes added to shifts are included in notifications
Complete Scheduling Example
WEEKLY SCHEDULE: IT SUPPORT TEAM
═══════════════════════════════════════════════════════════
TEAM RESOURCES
───────────────────────────────────────────────────────────
Role: IT Support Specialist
• Emily Brown (Senior)
• Kevin White (Junior)
• Lisa Taylor (Junior)
Role: System Administrator
• David Chen (Senior)
MONDAY - FRIDAY COVERAGE
═══════════════════════════════════════════════════════════
MONDAY 2026-01-06
───────────────────────────────────────────────────────────
08:00-16:00 | Emily Brown | IT Support | Morning Desk
12:00-20:00 | Kevin White | IT Support | Afternoon Desk
09:00-17:00 | David Chen | Sys Admin | Server Maint.
TUESDAY 2026-01-07
───────────────────────────────────────────────────────────
08:00-16:00 | Lisa Taylor | IT Support | Morning Desk
12:00-20:00 | Emily Brown | IT Support | Afternoon Desk
09:00-17:00 | David Chen | Sys Admin | Backup Config
WEDNESDAY 2026-01-08
───────────────────────────────────────────────────────────
08:00-16:00 | Kevin White | IT Support | Morning Desk
12:00-20:00 | Lisa Taylor | IT Support | Afternoon Desk
09:00-17:00 | David Chen | Sys Admin | Patch Deployment
THURSDAY 2026-01-09
───────────────────────────────────────────────────────────
08:00-16:00 | Emily Brown | IT Support | Morning Desk
12:00-20:00 | Kevin White | IT Support | Afternoon Desk
08:00-12:00 | David Chen | Sys Admin | Team Meeting
13:00-17:00 | David Chen | Sys Admin | Documentation
FRIDAY 2026-01-10
───────────────────────────────────────────────────────────
08:00-16:00 | Lisa Taylor | IT Support | Morning Desk
12:00-20:00 | Emily Brown | IT Support | Afternoon Desk
09:00-17:00 | David Chen | Sys Admin | Weekly Review
WEEKEND ON-CALL (OPEN SHIFTS)
═══════════════════════════════════════════════════════════
Saturday 2026-01-11
10:00-14:00 | [Unassigned] | IT Support | On-Call Support
Sunday 2026-01-12
10:00-14:00 | [Unassigned] | IT Support | On-Call Support
Note: Weekend shifts published as "Open Shifts" for
team members to claim voluntarily.
SCHEDULE SUMMARY
───────────────────────────────────────────────────────────
Emily Brown: 32 hours (4 shifts)
Kevin White: 24 hours (3 shifts)
Lisa Taylor: 24 hours (3 shifts)
David Chen: 40 hours (5 shifts)
────────────────────────────────────────────────────────
Total Team: 120 hours
Managing Open Shifts
Open Shifts are unassigned time slots that employees can voluntarily claim. When someone can't work their shift, it can be released as an open shift for others to pick up, ensuring coverage without manual reassignment.
OPEN SHIFTS WORKFLOW
═══════════════════════════════════════════════════════════
SCENARIO: Employee Unavailable
───────────────────────────────────────────────────────────
Original Assignment:
Date: January 10, 2026
Time: 08:00 - 16:00
Resource: Lisa Taylor
Role: IT Support Specialist
Project: Help Desk Coverage
Situation: Lisa calls in sick Thursday evening
STEP 1: RELEASE SHIFT
───────────────────────────────────────────────────────────
Action: Manager opens Lisa's Friday shift
Clicks "Unassign Resource"
Shift becomes "Open Shift"
Open Shift Created:
Date: January 10, 2026
Time: 08:00 - 16:00
Resource: [Unassigned]
Role: IT Support Specialist
Status: Open - Available for claim
STEP 2: NOTIFICATION
───────────────────────────────────────────────────────────
System Action:
Notifies all employees with "IT Support Specialist" role
Email Sent:
Subject: "Open Shift Available - Friday Jan 10"
Body: "A Help Desk shift on Friday 08:00-16:00 is
available. Claim in your Planning portal."
STEP 3: EMPLOYEE CLAIMS SHIFT
───────────────────────────────────────────────────────────
Kevin White sees notification
Opens Planning → Open Shifts
Clicks "Assign to Me" on the Friday shift
Result:
Date: January 10, 2026
Time: 08:00 - 16:00
Resource: Kevin White ← Now assigned
Role: IT Support Specialist
Status: Assigned
STEP 4: CONFIRMATION
───────────────────────────────────────────────────────────
Kevin receives confirmation email
Manager sees updated schedule
Lisa's planned hours adjusted
ADDITIONAL OPEN SHIFT FEATURES
═══════════════════════════════════════════════════════════
SELF-UNASSIGNMENT
─────────────────
Employees can unassign themselves from shifts
Deadline can be set (e.g., 24 hours before shift)
Released shifts become open for others
SHIFT SWAPPING
─────────────────
Employee A wants to switch with Employee B
Employee A releases their shift
Employee B claims the open shift
Works for voluntary shift exchanges
ADMIN CONTROLS
─────────────────
Withdrawal Deadline: How far in advance employees
can unassign themselves
Claim Restrictions: Limit who can claim based on role
Auto-Publish: Automatically notify on open shifts
Conflict Detection
The Planning module automatically detects scheduling conflicts when an employee is assigned to overlapping shifts. A red indicator appears on the calendar to highlight the issue.
🚨 Conflict Detection in Action
Scenario: David Chen is scheduled for two overlapping shifts on Wednesday:
- 09:00-12:00: Server Maintenance (Project Alpha)
- 10:00-14:00: Client Meeting (Project Beta)
Result: Red conflict indicator appears on David's Wednesday slot. Hovering shows both conflicting shifts. Manager must reassign one shift or adjust times to resolve the conflict.
Viewing Schedules
Multiple view options help you analyze schedules from different perspectives. Switch between views to see plans organized by resource, role, project, or sales order.
SCHEDULE VIEW OPTIONS
═══════════════════════════════════════════════════════════
TIME PERIOD VIEWS
───────────────────────────────────────────────────────────
Day View: Detailed hourly breakdown for single day
Week View: 7-day overview (most commonly used)
Month View: Calendar grid showing shift density
Year View: Long-term planning visibility
ORGANIZATION VIEWS
───────────────────────────────────────────────────────────
By Resource: Rows = Employees, Columns = Dates
See each person's complete schedule
By Role: Rows = Roles, Columns = Dates
See who's covering each function
By Project: Rows = Projects, Columns = Dates
See resource allocation per project
By Sales Order: Rows = Sales Orders, Columns = Dates
See delivery/service scheduling
DEFAULT FILTERS
═══════════════════════════════════════════════════════════
Open Shifts: Show only unclaimed shifts
My Shifts: Current user's assignments only
My Team: User's direct reports
My Department: Same department members
My Role: Same role colleagues
My Project: Assigned project schedules
My Sales Orders: Related sales order schedules
CONFLICT FILTERS
───────────────────────────────────────────────────────────
Shifts in Conflict: Double-booked resources
Employees on Time Off: Scheduled during leave
No Timesheets: Completed shifts without time entry
STATUS FILTERS
───────────────────────────────────────────────────────────
Draft: Saved but not published
Published: Sent to employees
Billable: Customer-chargeable shifts
Non-Billable: Internal/overhead shifts
GROUP BY OPTIONS
═══════════════════════════════════════════════════════════
Department Manager Resource
Role Sales Order Sales Order Item
Project Company Start Date
End Date Properties
Time-Saving Features
✅ Productivity Features:
- Auto Plan: Click to automatically assign unallocated sales orders to available staff based on roles and availability
- Copy Previous Week: Replicate last week's schedule for this week—perfect for consistent weekly patterns
- Publish & Send: One click to publish and email schedules to all assigned resources
- Shift Templates: Apply pre-configured templates instead of entering shift details manually
- Click-to-Edit: Click any time slot on the calendar to quickly adjust schedules
- Hover Preview: Hover over shifts to see details without opening the form
Planning Analysis Report
The Reporting menu provides Planning Analysis for reviewing scheduled activities. Use pivot views, filters, and measures to analyze resource utilization, workload distribution, and scheduling patterns.
PLANNING ANALYSIS REPORT ═══════════════════════════════════════════════════════════ NAVIGATION: Planning → Reporting → Planning Analysis AVAILABLE MEASURES ─────────────────────────────────────────────────────────── • Allocated Hours • Planned Hours • Count (number of shifts) • Duration SAMPLE REPORT: Weekly Hours by Role ═══════════════════════════════════════════════════════════ Week: January 6-12, 2026 Role | Mon | Tue | Wed | Thu | Fri | Total ──────────────────────────────────────────────────────────── IT Support Specialist | 16 | 16 | 16 | 16 | 16 | 80h System Administrator | 8 | 8 | 8 | 8 | 8 | 40h Project Manager | 8 | 8 | 8 | 8 | 8 | 40h Senior Developer | 24 | 24 | 24 | 24 | 24 | 120h ──────────────────────────────────────────────────────────── TOTAL | 56 | 56 | 56 | 56 | 56 | 280h SAMPLE REPORT: Hours by Project ═══════════════════════════════════════════════════════════ Project | Allocated | Planned | Variance ──────────────────────────────────────────────────────────── Website Redesign | 80h | 72h | +8h Mobile App Development | 120h | 120h | 0h Customer Support | 80h | 80h | 0h Infrastructure Upgrade | 40h | 32h | +8h ──────────────────────────────────────────────────────────── TOTAL | 320h | 304h | +16h SAMPLE REPORT: Utilization by Employee ═══════════════════════════════════════════════════════════ Employee | Planned | Available | Utilization ──────────────────────────────────────────────────────────── Emily Brown | 32h | 40h | 80% Kevin White | 24h | 40h | 60% Lisa Taylor | 24h | 40h | 60% David Chen | 40h | 40h | 100% Alex Thompson | 40h | 40h | 100% Sarah Martinez | 40h | 40h | 100% ──────────────────────────────────────────────────────────── AVERAGE | 83%
Best Practices
✅ Follow These Guidelines:
- Define clear roles: Create specific, well-named roles that reflect actual job functions—avoid generic "Worker" roles
- Assign multiple resources per role: Ensure coverage flexibility by having multiple employees capable of each role
- Use shift templates: Create templates for recurring patterns to save time and ensure consistency
- Publish schedules promptly: Give employees advance notice of their schedules—aim for at least one week ahead
- Monitor conflicts regularly: Check for red conflict indicators and resolve double-bookings immediately
- Leverage open shifts: Use open shifts for optional overtime or to fill gaps rather than forcing assignments
- Review utilization reports: Analyze Planning Analysis to identify over/under-utilized resources
- Set realistic withdrawal deadlines: Allow shift changes but require reasonable notice (24-48 hours)
Common Issues and Solutions
🚨 Issue #1: Employee Not Appearing as Resource Option
Can't assign employee to a shift. Solution: Ensure the employee has the required role assigned. Go to Configuration → Roles, edit the role, and add the employee to the Resources field.
🚨 Issue #2: Schedule Not Visible to Employee
Employee doesn't see their shifts. Solution: Ensure shifts are Published (not just saved as draft). Click Publish or Publish & Send to make schedules visible in employees' My Planning view.
🚨 Issue #3: Recurring Shifts Not Repeating
Set up repeat but only one instance created. Solution: Check the repeat configuration—ensure frequency is set and end date (if specified) is in the future. Verify the recurring pattern was saved properly.
🚨 Issue #4: Auto Plan Not Working
Auto Plan button doesn't assign sales orders. Solution: Verify sales orders have associated roles, employees are assigned to those roles, and employees have availability during the required dates.
Conclusion
Configuring Planning Resources and Roles in Odoo 18 creates a structured foundation for workforce scheduling. Define roles that match your organization's job functions, assign qualified employees to each role, and create shift templates for recurring patterns. The visual calendar interface makes scheduling intuitive—view by resource to see individual workloads, by role to ensure function coverage, or by project to track allocation. Conflict detection prevents double-bookings, open shifts provide flexibility when assignments change, and the Copy Previous Week feature replicates consistent schedules instantly. With Planning Analysis reporting, you gain visibility into utilization patterns and workload distribution across your team.
🎯 Key Takeaway: Define roles → assign resources → create templates → schedule shifts → detect conflicts → use open shifts for flexibility → publish to notify team → analyze with reports. Complete resource visibility and optimized workforce utilization.
