MemberPulse

UJ-M-010: Transfer or Gift a Ticket

Member transfers their event ticket to another person

Journey Overview

AttributeValue
Journey IDUJ-M-010
ActorTicket holder
GoalTransfer ticket ownership to another person
TriggerMember cannot attend and wants to give ticket to someone else
OutcomeNew recipient has valid ticket for the event

Preconditions

  • Member has a valid ticket for an upcoming event
  • Event allows ticket transfers (configurable)
  • Transfer deadline has not passed
  • Ticket has not been used (checked in)

Journey Flow

flowchart TD
    A[Access My Tickets] --> B[Select ticket to transfer]
    B --> C{Transfer allowed?}
    C -->|No| D[Show restriction message]
    C -->|Yes| E[Click Transfer Ticket]
    E --> F[Enter recipient details]
    F --> G[Confirm transfer]
    G --> H[Original ticket voided]
    H --> I[New ticket generated]
    I --> J[Recipient notified]
    J --> K[Transfer complete]

Detailed Steps

  1. Access My Tickets

    Member navigates to My Tickets section:

    • View list of upcoming event tickets
    • Identify ticket to transfer
    • Check transfer eligibility
  2. Check Transfer Eligibility

    System validates transfer is allowed:

    CheckRequirement
    Event allows transfersConfigured by organizer
    Transfer deadlineBefore event or cutoff date
    Ticket not usedNot checked in
    Not already transferredOriginal holder only
    Transfer limitWithin allowed number
  3. Enter Recipient Details

    Member provides new ticket holder information:

    FieldRequiredNotes
    Recipient EmailYesNew ticket sent here
    Recipient First NameYesFor new ticket
    Recipient Last NameYesFor new ticket
    Recipient PhoneConfigurableFor event communications
    Personal MessageNoIncluded in notification

    Validation:

    • Valid email format
    • Cannot transfer to self
    • Recipient may need to be a member (if member-only event)
  4. Review and Confirm

    Transfer summary displayed:

    ┌─────────────────────────────────────────────┐
    │ Transfer Ticket                             │
    ├─────────────────────────────────────────────┤
    │ Event: Annual Conference 2025              │
    │ Ticket: Member Pass                         │
    │                                             │
    │ From: John Smith (you)                      │
    │ To: Jane Doe (jane@email.com)               │
    │                                             │
    │ ⚠️ This action cannot be undone.            │
    │    Your ticket will be cancelled.           │
    │                                             │
    │ [Cancel]  [Confirm Transfer]                │
    └─────────────────────────────────────────────┘

    Member must acknowledge:

    • Transfer is permanent
    • Original ticket will be voided
    • They will lose access to the event
  5. Process Transfer

    System processes transfer:

    1. Original ticket marked as "Transferred"
    2. Original QR code invalidated
    3. New ticket record created for recipient
    4. New QR code generated
    5. Audit trail recorded
  6. Notifications Sent

    To Original Holder:

    • Confirmation of transfer
    • Receipt for records
    • Note that they can no longer attend

    To Recipient:

    • Welcome message with event details
    • New ticket with QR code
    • Registration instructions (if account needed)
    • Calendar invite

Transfer Restrictions

Organizations can configure:

SettingOptions
Transfers allowedYes/No
Transfer deadlineX days before event
Transfer feeNone, fixed, or percentage
Max transfers per ticket1, 2, unlimited
Recipient must be memberYes/No
Requires approvalYes/No

Transfer Types

Standard Transfer

  • Ownership changes completely
  • Original holder loses all access
  • Recipient becomes new owner

Name Change Only

  • Original holder remains owner
  • Attendee name updated for check-in
  • May have different approval process

Gift Ticket

  • Same as transfer but framed as gift
  • Personal message option
  • Gift-themed notification

Non-Member Recipients

If event allows non-member recipients:

  1. Recipient receives ticket without account
  2. Can access ticket via emailed link
  3. Prompted to create account (optional)
  4. No portal access for ticket management

If event requires membership:

  1. Recipient must be existing member, OR
  2. Recipient must register as member first
  3. Transfer fails if recipient ineligible

Transfer Fees

If transfer fee configured:

┌─────────────────────────────────────────────┐
│ Transfer Fee                                │
├─────────────────────────────────────────────┤
│ A transfer fee applies to this ticket.      │
│                                             │
│ Transfer Fee: $15.00                        │
│                                             │
│ Payment Method: [•••• 4242]                 │
│                                             │
│ [Pay and Transfer]                          │
└─────────────────────────────────────────────┘

Acceptance Criteria

Frontend

  • Transfer button on eligible tickets
  • Recipient details form
  • Transfer confirmation modal
  • Disabled state for ineligible tickets
  • Error messages for validation failures
  • Success confirmation page
  • Transfer history visible

Backend

  • POST /api/tickets/{id}/transfer - Initiate transfer
  • GET /api/tickets/{id}/transfer-eligibility - Check eligibility
  • Original ticket invalidation
  • New ticket generation
  • Email notifications (both parties)

Permissions

  • Only ticket owner can transfer
  • Admin can transfer on behalf (support)

Business Rules

  • Transfer deadline enforced
  • Transfer limits tracked
  • Fee charged if configured
  • Audit trail maintained
  • Member-only events validate recipient

Error Handling

  • Clear message if transfers not allowed
  • Deadline passed notification
  • Recipient validation errors
  • Payment failure handling (if fee)

On this page