Cancel your own ticket and get refunded

Use the self-cancel window on your order, and understand the fee, the deadline and the credit-only rule.

Owned by Member · 9 steps · about 12 minutes

Why this exists

Self-cancellation is a pre-authorised refund: the venue decides the terms once, per event, and the platform then lets members act inside those terms without asking anyone. That is why the refund it issues is recorded as initiated by the system rather than by a person — nobody approved it, because the policy already did.

Three policy numbers do all the work, and all three are set per event. The cancellation deadline is a number of hours before doors; leave it empty and self-cancellation is simply off for that event. The non-refundable fee is withheld per refunded ticket, and it is snapshotted onto your order line at purchase time — so changing the policy later never rewrites what you were promised when you bought. Credit-only forces the refund to house credit rather than back to the card.

Cancellation is per ticket, not per order. You may cancel two of your four and keep the rest; each ticket may be refunded exactly once, enforced by a unique constraint rather than by the UI hiding a button. Refunding a ticket revokes it and kills its door pass, and the inventory goes straight back on sale.

The demo event ships with a $5 non-refundable fee and a 48-hour deadline, so you can see all of it working without configuring anything.

Before you start

  • A paid order with at least one issued ticket.
  • An event whose refund policy sets a cancellation deadline, and a clock still inside it.
  • An admin session for the participant steps.

Practise with

PersonaEmailPasswordNote
membernova@demo.club nova-pass-123holds a paid order with two tickets on the demo event
adminadmin@club.test admin123sets the policy and is the only persona who can refund outside it

Steps 1–6 — Member

their manual →
  1. 1
    Read the event's policy before you buy, not after. It is public.
    /api/events/{event_id}/refund-policy payments
    Expected result The non-refundable fee, whether refunds are credit-only, and the computed self-cancel deadline.
    Watch out for A null deadline means self-cancellation is disabled for that event entirely. No amount of clicking will produce a cancel button.
  2. 2
    Open your orders and pick the paid one.
    /my/orders payments
    Expected result Orders with their status and totals.
  3. 3
    Open the order. Tick the specific tickets you want to cancel and read the refund preview.
    /my/orders/{order_id} payments
    Expected result A per-ticket checkbox, a live preview of what you would get back, and the policy restated at the bottom of the page.
    Watch out for Tickets that cannot be cancelled have no checkbox at all — already refunded, past the deadline, or sold on the exchange.
  4. 4
    Cancel the selected tickets. Send their ids.
    /api/orders/{order_id}/cancel POST payments
    Expected result A refund for the ticket value plus its exact share of tax, minus the non-refundable fee per ticket, and the inventory returned to the tier.
    Watch out for Three refusals to recognise. Past the deadline is a 403. An event with no deadline configured is a 403 saying self-cancel is disabled. And a ticket you already sold on the resale exchange is a 409 saying it was transferred — you cannot refund a ticket that now belongs to someone else.
  5. 5
    Look at your wallet immediately afterwards.
    Expected result The pass for the cancelled ticket is revoked and shows as void.
    Watch out for Revocation is terminal and it blacklists the serial. Do not cancel a ticket you intend to use — there is no undo, and re-buying gets you a different ticket.
  6. 6
    If the event was credit-only, or you paid with credit in the first place, check where the money landed.
    /my/credit ledger
    Expected result Your prepaid balance has gone up by the refunded amount.
    Watch out for For an order paid with house credit, 'refund to the original method' means house credit. There is no card to refund, so asking for one is not an option the platform offers.

Steps 7–9 — Admin

their manual →

Owns the refund policy that decides whether you can self-cancel at all, and handles everything outside it.

  1. 7
    As an admin, open the policy editor for the event and read the three settings together.
    /admin/events/{event_id}/refund-policy payments
    Expected result Fee, credit-only flag and deadline hours, plus the refund-everyone danger zone.
  2. 8
    Change the policy and observe what it does and does not affect.
    /api/admin/events/{event_id}/refund-policy PUT payments
    Expected result New purchases carry the new fee.
    Watch out for It does not rewrite history. The fee is snapshotted onto existing order lines, so orders placed under the old policy keep the old terms. That is the point of snapshotting, not an oversight.
  3. 9
    Handle the case the policy does not cover: refund from the staff side, with a reason, optionally waiving fees or overriding the policy.
    /admin/orders/{order_id} payments
    Expected result A refund row recording the mode, the reason, who did it, and a snapshot of the policy at the time.
    Watch out for Refunding is admin-only. A venue manager can read this page and cannot refund from it — moving money outward is a deliberately narrower permission than running the night.