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

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 (attendees tool key)
  • Event: registration_type=registration and attendees_enabled=True
  • Stripe for paid registrations
  • (Optional) attendee_gdpr_enabled for EU compliance workflows

Step-by-step — Enable and configure

  1. Edit event → enable Attendee Management.
  2. Complete setup wizard (attendee_registration_info, attendee_data_retention_years).
  3. Add registration questions via Survey & Custom Questions full manager.
  4. Configure ticket tiers on event edit form.
  5. Share /attendees/register/<pk>/<tag>/.
  6. Monitor /attendees/events/<pk>/<tag>/registrations/.

[SCREENSHOT: Attendee registrations list]


Step-by-step — Guest registration flow

  1. Guest opens registration URL.
  2. Selects tier / completes profile fields.
  3. Answers custom questions (AttendeeCustomAnswer).
  4. Pays if required → /attendees/registrations/<pk>/pay/.
  5. 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

flowchart TD Enable[Enable attendees module] --> Wizard[Setup wizard] Wizard --> Questions[Custom questions] Questions --> Publish[Share register URL] Publish --> Reg[Guest registers] Reg --> Pay{Paid?} Pay -->|Yes| Stripe[Stripe] Pay -->|No| Ticket[Ticket + QR] Stripe --> Ticket Ticket --> CheckIn[Check-in scan]

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

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