Paddles Up Docs
Guides

Issuing Refunds and Cancellations

How staff issue refunds and cancellations, and how Stripe Dashboard refunds sync back automatically.

This guide is for organization staff. See Refunds and cancellations for the underlying behavior.

Where this lives

Open the staff registration detail view at:

https://register.paddlesup.io/listings/<id>

Switch to the Registrations tab and open a registration row. The Manage card supports refund, cancellation, or both in a single submission.

Issuing a refund

  1. In the Manage card, check Refund.
  2. Pick a quick-amount chip — Full or Half — or enter a custom amount.
  3. Tap Apply.
  4. The button is disabled while the app polls for up to 15 seconds for Stripe's charge.refunded webhook so the UI catches up without a manual reload.

Refunds are idempotent — clicking again won't double-refund. The Stripe idempotency key is scoped to the registration.

Cancelling a registration

  1. In the Manage card, check Cancel.
  2. Tap Apply.

Cancellation is a soft delete: the row is preserved with a cancelled_at timestamp, the seat is freed, and any waitlist promotion runs.

Refunding and cancelling together

Check both Refund and Cancel before submitting. The refund fires first; if it fails, the cancel is skipped so you don't end up with a cancelled registration that wasn't refunded.

A successful refund alone does not cancel the registration. If you want both, you must check both — this is intentional so you can refund without removing the registrant from the event.

Stripe Dashboard refunds

Refunds initiated directly from your Stripe Dashboard are picked up by the charge.refunded webhook and appear in the activity feed as "by account owner via Stripe Dashboard". You don't need to do anything in Paddles Up — the DB updates within a few seconds.

A Dashboard refund leaves the Paddles Up registration alone. The detail view shows "refunded but still registered" via the badge so staff can decide whether to also cancel.

Activity feed

Every refund and cancellation appears chronologically in the Activity feed on the staff detail view, with actor attribution (staff name or "account owner via Stripe Dashboard"). Only succeeded refunds appear — failed attempts are not surfaced as activity entries today.

What registrants see after a cancel or refund

  • Cancelled registrations stay visible in the registrant's /registrations list with a Cancelled badge.
  • The confirmation view (/l/<org>/<event>?view=confirmation) reflects the latest payment and registration status.
  • Stripe sends its own refund email when applicable.

The platform does not send extra notifications on staff actions today.

On this page