Waitlist management
When a paid event occurrence sells out, customers can join a waitlist instead of walking away. When capacity is released – through cancellation, refund, or manual adjustment – Pro automatically promotes the next person in line and emails them a purchase link.
The free plugin includes basic RSVP waitlist functionality for free events. Pro adds the full WooCommerce-integrated flow for paid tickets, including the auto-promotion cron, notification TTL, and cascade-on-expiry handling.
The waitlist flow
- Event sells out. The ticket form on the frontend switches to a waitlist join form.
- Customer joins. They enter their name and email, and are added to the waitlist in FIFO order.
- Capacity is released. A cancellation, refund, or admin adjustment frees up a ticket slot.
- Auto-promote. Pro promotes the oldest waiting entry and marks it Notified.
- Email notification. The promoted customer receives an email with a time-limited link to complete their purchase.
- 48-hour window (default). If they complete the purchase, the entry is marked Converted. If the window expires, the entry is marked Expired and the system promotes the next person (cascade).
Managing the waitlist
Navigate to Events → Waitlist in your WordPress admin.
- Filter by occurrence: pick an event and occurrence to view its waitlist.
- Status indicators: Waiting (still in line), Notified (currently holding a slot), Converted (purchased), Expired (notification timed out).
- Manual actions: promote a specific entry out of order, or remove an entry entirely.
- Conversion tracking: see which notified customers completed their purchase vs. expired.
Settings
| Setting | Default | Description |
|---|---|---|
| Auto-promote | Enabled | Automatically promote the next entry when capacity is released. |
| Notification TTL | 48 hours | How long a notified entry has to purchase before it expires. |
| Email subject | “You’re off the waitlist for [Event Name]” | Customizable via the nte_pro_waitlist_email_subject filter. |
| Email body | Default template | Customizable via the nte_pro_waitlist_email_body filter. |
Cron processing
A WordPress cron job runs hourly to expire stale notifications. When a notification expires:
- The entry status changes from Notified to Expired.
- The system looks for the next waiting entry in the same occurrence.
- If one exists, Pro promotes it and sends a fresh notification – the cascade continues until either someone purchases or the waitlist empties.
If the site has no real WordPress cron (it’s disabled or broken), the cron job won’t run on schedule. Either enable WP-Cron, configure a real system cron for wp-cron.php, or process the waitlist manually from the admin page.
Tips
- Encourage customers to join the waitlist even for events that look close to selling out – FIFO is kinder than “first to refresh wins.”
- If you use the 48-hour default TTL and your event sells out the day before showtime, consider shortening the TTL so cascades reach real buyers in time.
- The
Convertedcount is a useful post-event metric for deciding whether to add capacity for next time.