Attendee Management Module¶
Overview¶
The Attendee Management module (attendees_enabled) provides rich registration profiles, ticket tiers, QR tickets, session check-in, networking, GDPR compliance, and exports—replacing the legacy RSVP sidebar for Registration-type events.
Purpose¶
Operate professional conferences and ticketed events with unified registration data, payment integration, and day-of scanning workflows.
Who should use it¶
- Conference organizers
- Compliance officers (GDPR retention)
- Registration desk staff
- Marketing (segmentation via custom questions)
Benefits¶
- Per-event registrations with status workflow
- Stripe-integrated payments
- QR tickets and scan API
- Networking directory and privacy controls
- CSV export with custom question columns
Navigation path¶
| Action | Path |
|---|---|
| Attendee hub | /attendees/ |
| Register for event | /attendees/register/<pk>/<event_tag>/ |
| Event registrations (host) | /attendees/events/<pk>/<tag>/registrations/ |
| Export CSV | /attendees/events/<pk>/<tag>/registrations/export/ |
| Question manager | /attendees/events/<pk>/<tag>/questions/ |
| Event analytics | /attendees/events/<pk>/<tag>/analytics/ |
| GDPR compliance | /attendees/events/<pk>/<tag>/compliance/ |
| Module setup | /events/create/<pk>/setup/attendees/ |
Prerequisites¶
- Subscription: Essentials or higher (
attendeestool key) - Event:
registration_type=registrationandattendees_enabled=True - Stripe for paid registrations
- (Optional)
attendee_gdpr_enabledfor EU compliance workflows
Step-by-step — Enable and configure¶
- Edit event → enable Attendee Management.
- Complete setup wizard (
attendee_registration_info,attendee_data_retention_years). - Add registration questions via Survey & Custom Questions full manager.
- Configure ticket tiers on event edit form.
- Share
/attendees/register/<pk>/<tag>/. - Monitor
/attendees/events/<pk>/<tag>/registrations/.
[SCREENSHOT: Attendee registrations list]
Step-by-step — Guest registration flow¶
- Guest opens registration URL.
- Selects tier / completes profile fields.
- Answers custom questions (
AttendeeCustomAnswer). - Pays if required →
/attendees/registrations/<pk>/pay/. - Receives ticket at
/attendees/registrations/<pk>/ticket/.
Field descriptions¶
Event-level attendee settings¶
| Field | Description |
|---|---|
attendees_enabled |
Master toggle |
attendee_registration_info |
Shown on registration page |
attendee_gdpr_enabled |
GDPR consent + export/delete |
attendee_data_retention_years |
1, 2, or 5 years |
Registration record (summary)¶
| Field | Description |
|---|---|
| Registration status | confirmed, pending, cancelled, waitlisted, etc. |
| Ticket tier | Selected SKU |
| Waitlist position | When waitlisted |
| Check-in timestamps | Event and session level |
| Networking visibility | Per registration settings |
Attendee profile¶
Multi-step profile at /attendees/profile/create/ — industry, dietary, visibility, t-shirt size, etc.
Business rules¶
| Rule | Detail |
|---|---|
| Routing | attendees_enabled → registration URL, not RSVP sidebar |
| Waitlist | Email notifications on waitlist and promotion |
| GDPR | Export/delete requests via privacy center |
| Segmentation | Questions with used_for_segmentation filter exports |
| Badge printing | Questions with show_on_badge |
| Platform fee | 5% (Free/Essentials) or 3% (Pro tiers) on ticket revenue |
Validation rules¶
- Tier capacity enforced per ticket type
- Required custom questions block registration submit
- Payment required before confirmed status for paid tiers
User permissions¶
| Action | Host | Staff | Attendee |
|---|---|---|---|
| View all registrations | ✅ | ✅ | ❌ |
| Export | ✅ | ✅ | ❌ |
| Register | ❌ | ✅ | ✅ |
| Own ticket | ❌ | ✅ | ✅ |
| Compliance actions | ✅ | ✅ | Own data requests |
Workflow¶
Examples¶
Free meetup: Single free tier, QR check-in, networking enabled.
Paid conference: Multiple tiers, GDPR on, session registration via Program module.
Best practices¶
- Write clear
attendee_registration_info(refund policy, what's included) - Enable GDPR for EU audiences
- Test payment in Stripe test mode first
- Use segmentation questions for targeted email blasts
Tips¶
- Resend tickets:
/attendees/registrations/<pk>/ticket/resend/ - Session check-in separate from event check-in
- Orders view:
/attendees/events/<pk>/<tag>/orders/
Common mistakes¶
| Mistake | Result | Fix |
|---|---|---|
| Attendees off | Legacy checkout | Enable module |
| RSVP type + attendees | Confusing UX | Use registration type |
| No retention setting | Default 2 years | Set in wizard |
FAQs¶
Same questions as RSVP surveys?
Same EventRegistrationQuestion model; answers stored on AttendeeRegistration.
Where are refunds?
See Payments & Refunds.
Troubleshooting¶
| Symptom | Cause | Fix |
|---|---|---|
| Register link 404 | Module off | Enable attendees |
| Stuck pending | Payment incomplete | Complete Stripe |
| No QR | Not confirmed | Verify payment status |
Related features¶
Screenshot placeholders¶
[SCREENSHOT: Registration form with tiers][SCREENSHOT: Registrations table with status filters][SCREENSHOT: Compliance dashboard][SCREENSHOT: Analytics charts]
Administrator notes¶
- Stripe webhook must reach
/payments/webhook/ - Email notifications in
attendees/notifications.py
Developer/API notes¶
| Item | Detail |
|---|---|
| Models | AttendeeProfile, AttendeeRegistration in attendees.models |
| Check-in API | POST .../checkin/scan/api/ |
| Export | event_registrations_export view |
| Mobile tickets | GET /api/mobile/v1/tickets/ |
See also: Events & Registration