Volunteer Management¶
Overview¶
Volunteer Management enables volunteer profiles, departments, shifts, applications, assignments, onboarding, waitlist, benefits configuration, event dashboards, and QR check-in for crew operations.
Purpose¶
Staff large events with structured volunteer recruitment, shift scheduling, and day-of attendance tracking.
Who should use it¶
- Volunteer coordinators
- Department leads
- Volunteers seeking opportunities
- Operations Suite organizers
Benefits¶
- Public opportunities directory
- Approval / waitlist workflow
- Assignment to shifts with check-in/out
- Benefits flags (meals, t-shirt, certificate)
Navigation path¶
| Action | Path |
|---|---|
| Volunteers hub | /events/volunteers/ |
| Opportunities | /events/volunteers/opportunities/ |
| Apply | /events/volunteers/apply/<pk>/<tag>/ |
| Event dashboard | /events/<pk>/<tag>/volunteers/ |
| Application review | /events/volunteers/applications/<pk>/review/ |
| Volunteer portal | /events/volunteers/portal/<pk>/ |
| Check-in dashboard | /events/<pk>/<tag>/volunteer-checkin/ |
| Check-in scan | /events/<pk>/<tag>/volunteer-checkin/scan/ |
| Profiles CRUD | /events/volunteers/profiles/ |
| Departments / shifts | /events/volunteers/departments/, .../shifts/ |
Prerequisites¶
- Subscription: Operations Suite (
volunteerstool key) - Event:
volunteers_enabled=True - Wizard step
volunteerscompleted - Volunteer accounts (free) for applicants
Step-by-step — Configure volunteer program¶
- Enable Volunteers on event.
- Wizard: prospectus, deadline, total needed, benefits, min age, skills.
- Create departments and shifts in Volunteers hub.
- Publish opportunities directory link.
Step-by-step — Volunteer lifecycle¶
- Volunteer browses opportunities → applies.
- Organizer reviews: approve / reject / waitlist.
- Assignment to shift created.
- Volunteer uses portal for schedule.
- Day-of QR check-in at volunteer desk.
[SCREENSHOT: Volunteer event dashboard]
Field descriptions¶
| Event field | Description |
|---|---|
volunteer_prospectus |
Public recruiting copy |
volunteer_total_needed |
Headcount goal |
volunteer_benefit_* |
Free access, meals, t-shirt, certificate |
volunteer_min_age |
Default 16 |
volunteer_skills_required |
One per line |
volunteer_check_in_location |
Desk location |
volunteer_approval_type |
auto / organizer / admin |
Assignment timing¶
actual_check_in_time, actual_check_out_time → hours_worked computed property.
Business rules¶
| Rule | Detail |
|---|---|
| Waitlist | waitlist_volunteer() with position email |
| Free access benefit | Default volunteer_benefit_free_access=True |
| Volunteer ID | VOL- prefixed UUID fragment on profiles |
| Discover | discoverable_volunteer_events() service filters |
Validation rules¶
- Min age on application
- Shift capacity enforced on assignment
User permissions¶
| Role | Apply | Review | Check-in |
|---|---|---|---|
| Volunteer | ✅ | ❌ | Self via portal |
| Host | ❌ | ✅ | ✅ |
| Staff | ❌ | ✅ admin | ✅ |
Workflow¶
flowchart LR
Discover[Opportunities] --> Apply --> Review --> Assign --> CheckIn
Examples¶
Music festival: 200 volunteers, departments (Parking, Stage, Medical), shift-based check-in.
Best practices¶
- Set
volunteer_total_neededfor recruiting UI - Communicate benefits clearly in prospectus
- Use waitlist rather than over-assigning shifts
Tips¶
- Department CRUD before shift creation
- Waitlist position in notification email
Common mistakes¶
| Mistake | Result | Fix |
|---|---|---|
| No shifts created | Nowhere to assign | Create shifts first |
| Wrong min age | Rejected apps | Update event setting |
FAQs¶
Do volunteers need paid plans?
No — organizers need Operations Suite; volunteers use free accounts.
Troubleshooting¶
| Symptom | Cause | Fix |
|---|---|---|
| Opportunity hidden | Module off / past deadline | Check toggles and dates |
| Check-in fails | Wrong assignment | Verify assignment ID |
Related features¶
Screenshot placeholders¶
[SCREENSHOT: Volunteer opportunities directory][SCREENSHOT: Shift assignment form][SCREENSHOT: Volunteer check-in scan]
Administrator notes¶
- Notifications:
events/volunteer_notifications.py - Workflow:
events/volunteer_workflow_services.py
Developer/API notes¶
Models: VolunteerProfile, VolunteerDepartment, VolunteerShift, VolunteerAssignment in events.models.
See also: Events & Registration