Skip to content

The Registration Experience — What Attendees See

This article covers the attendee-facing registration experience — everything a visitor sees from landing on your event website to completing their registration.


The attendee registration flow follows these steps:

  1. Browse Tickets — attendee visits the event website and sees available tickets with pricing.
  2. Select Tickets — choose one or more ticket types and quantities.
  3. Fill Registration Form — enter personal details and custom form fields.
  4. Review & Pay — review order summary, apply coupon, accept terms, and complete payment.
  5. Confirmation — receive success page with ticket details, badge download, and calendar event.

When an attendee clicks a Register button on a specific ticket, they go directly to the registration form for that ticket at /register/[ticketId].

The registration page shows:

  • Ticket name and description
  • Price (or “Free” for free tickets)
  • Event name, dates, and venue in the header
  • Custom theme colors matching your event branding

When multi-ticket checkout is enabled, attendees land on the checkout page (/checkout) with a 3-step wizard:

Step 1 — Select Tickets

  • All available tickets displayed as interactive cards
  • Each ticket shows: name, description, price, and availability status
  • Quantity selector — attendees choose how many of each ticket they want
  • Minimum and maximum purchase limits are enforced
  • Sold-out tickets appear greyed out with a “Sold Out” badge
  • Running total updates as tickets are added

Step 2 — Attendee Details

  • Registration form for each ticket/attendee
  • If buying multiple tickets, a form appears for each attendee (not just the buyer)
  • Buyer information is collected separately from attendee details
  • Form fields are dynamically generated from your Form Builder configuration

Step 3 — Checkout & Payment

  • Complete order summary with line items
  • Payment processing (see below)

A progress indicator at the top shows all three steps with visual states:

  • ✅ Green checkmark for completed steps
  • 🔵 Blue highlight for the current step
  • ⚪ Grey for upcoming steps

The registration form is dynamically generated from the fields you configured in the Form Builder.

Field TypeWhat Attendees See
TextSingle-line text input
TextareaMulti-line text input
EmailEmail input with validation
Mobile NumberPhone input with country code selector (auto-detected from attendee’s location)
NumberNumeric input
DateDate picker
Date & TimeCombined date and time picker
CheckboxSingle checkbox or multiple checkboxes
Select (Dropdown)Dropdown menu with predefined options
Multi-SelectMultiple selection with checkboxes
File UploadFile upload with format and size limits
  • Country auto-detection — phone fields automatically select the attendee’s country dial code based on their location
  • Voice Form Fill — attendees can use the microphone button to fill the form using voice input (AI converts speech to form data)
  • Field validation — real-time validation with clear error messages
  • Required fields — marked with an asterisk (*), form cannot be submitted until all required fields are filled
  • RTL support — for Arabic and other RTL languages, the form layout mirrors automatically
  • CAPTCHA — bot protection widget appears when enabled by the organizer

When attendees receive an invitation link (from private tickets), the form may be pre-filled with their details from the invitation — name, email, phone — so they only need to confirm and add any remaining fields.


Before payment, attendees see a detailed breakdown:

  • Selected tickets — name, quantity, and unit price per ticket
  • Discounts — any ticket-level discounts (percentage, fixed, or tiered pricing)
  • Tax breakdown — GST, VAT, or custom taxes (shown as line items with rates)
  • Coupon discount — if a coupon code is applied
  • Total amount — final amount to pay

If your event has active coupons, attendees can:

  1. Enter the coupon code in the coupon input field (marked with a tag icon).
  2. Click Apply (or press Enter).
  3. If valid — a green success message shows the discount applied, and the total updates.
  4. If invalid — a red error message explains why (expired, wrong ticket, usage limit reached, etc.).

When tax invoicing is enabled, attendees can enter:

  • Company name
  • Tax ID (GST/VAT number)
  • Billing address

This information is included in the payment receipt.

Before completing the order, attendees must accept:

  • Terms & conditions — event policies
  • Refund policy — if configured
  • Privacy policy — data handling consent

These appear as checkboxes that must be ticked before the payment button becomes active.

Attendees see the Razorpay checkout modal overlay with options for:

  • Credit/debit cards
  • UPI
  • Net banking
  • Wallets
  • EMI

After successful payment, attendees see the confirmation page with:

  • Success icon and confirmation message
  • Order reference number — unique identifier for support inquiries
  • Total tickets purchased and amount paid
  • Attendee list — each registered attendee with their details

If badge generation is enabled:

  • Each attendee in the order has a Download Badge button
  • Badges are generated as PDF files matching your Badge Designer template
  • Badge includes QR code for event check-in

Attendees can add the event to their calendar:

  • Downloads an .ics file that works with Google Calendar, Outlook, and Apple Calendar
  • Includes event name, dates, venue, and timezone

When the ticket requires approval workflow:

  • The success page shows a “Pending Approval” notice instead of a confirmed status
  • Attendees are informed their registration is under review
  • Payment is held until approved
  • Once approved, they receive a confirmation email/WhatsApp with their ticket

If Advocacy Posters are enabled, a “Share Your Attendance” CTA appears after registration — letting attendees create and share a personalized “I Am Attending” poster on social media.


Organizers can embed the registration form on external websites using an iframe. Attendees on third-party sites see the same registration experience within an embedded frame.

The embed URL format is:

https://your-event.eventhex.ai/embed/[ticketIdOrSlug]

See Embedding the Registration Widget for setup details.


When attendees receive a private invitation:

  1. They click the unique invitation link (/invite/[token]).
  2. The registration form loads with pre-filled data from the invitation.
  3. They review, add any missing fields, and submit.
  4. Their RSVP status updates automatically (Accepted/Declined).

ScenarioWhat Attendees See
Ticket sold out”Sold Out” badge on the ticket, register button disabled
Registration closed”Registration Closed” message with event dates
Payment failedError message with failure reason and “Try Again” option
Invalid couponRed error text below coupon field explaining the issue
Required field missingField highlighted in red with validation message
Event not found”Event Not Configured” error with an alert icon