My App

Managing Payments

How to track and manage ticket payments

Frank uses ticket-level payment tracking. Each ticket is tracked individually, making it easy to see exactly who has paid and who owes money.

Marking Tickets as Paid

Type directly in the raffle thread:

p @User 5

or

paid @User 10

This marks the specified ticket number as paid for that user.

Command Syntax

/pay member:@User ticket_number:5

Payment Display

Tickets show payment status in the raffle embed:

DisplayMeaning
@AliceClaimed but not paid
@Alice 💰Claimed and paid
@Alice 🎁Mini-win (free, no payment needed)
@Alice, @BobSplit ticket, neither paid
@Alice 💰, @BobSplit ticket, Alice paid
@Alice 💰, @Bob 💰Split ticket, both paid

Payment Totals

When a raffle completes (all tickets claimed), Frank posts a Payment Summary embed:

💰 Payment Totals

@Alice - 5 tickets - 500 plat (PAID: 200 plat, OWED: 300 plat)
@Bob - 3 tickets - 0 plat (3 free from mini wins)
@Charlie - 7 tickets (4 regular, 3 free from mini wins) - OWED: 400 plat
@Dave - 2.5 tickets - 250 plat (PAID: 100 plat, OWED: 150 plat)

Total Payment: @Host

Reading the Summary

FieldDescription
Total ticketsHow many tickets the user has (can be 0.5 for split tickets)
Regular ticketsTickets the user needs to pay for
Free from mini winsTickets won from minis (no payment)
PAIDAmount already received
OWEDAmount still outstanding

Split Ticket Payments

When a ticket is split between two users:

  1. Each user owns 0.5 tickets
  2. Each pays 50% of the ticket price
  3. Mark payments separately for each user

Example:

  • Ticket #5 costs 100 plat
  • Split between Alice and Bob
  • Each owes 50 plat
p @Alice 5    → Alice's half marked as paid
p @Bob 5      → Bob's half marked as paid

Mini-Win Tickets

Tickets marked as mini-wins (🎁) are free:

  • Do not mark them as paid
  • They don't appear in the "owed" calculation
  • Frank rejects /pay for mini-win tickets

How Mini-Wins Are Created

  1. User wins a mini raffle
  2. User claims tickets in the main raffle
  3. Those tickets are automatically marked as mini-wins
  4. Or host uses /assign member:@User ticket_number:5 mini_win:Y

Best Practices

Do

  • Mark tickets as paid immediately after receiving payment
  • Use the quick p @User # syntax for speed
  • Check the payment totals embed for accuracy
  • Verify users paid the correct amount
  • Track split ticket payments carefully

Don't

  • Mark tickets before receiving payment
  • Try to mark mini-win tickets as paid
  • Forget to mark split tickets per user
  • Clear paid tickets without good reason

Common Issues

"Ticket is not owned by @User"

The user you specified doesn't own that ticket. Check:

  • The ticket number is correct
  • The user actually claimed that ticket
  • You're in the correct raffle thread

"Mini-win tickets don't require payment"

Mini-win tickets (🎁) are free. You cannot mark them as paid because no payment is needed.

Payment not showing

If you marked a ticket as paid but it's not showing:

  1. Check you marked the correct ticket number
  2. Verify the user owns that ticket
  3. Refresh the thread (Discord cache issue)
  4. Check bot logs if issue persists

On this page