Refunds
Issue refunds inline from a ticket card, or through the two-step approval queue on the Refunds tab. Attendees can request one too, per ticket, from their own portal.
Events lets you issue refunds two ways: inline from a ticket card in the registration, or through the dedicated Refunds tab. Both paths fire a Stripe refund on your connected account, the difference is whether an approval step is involved.
Paid tickets require a connected Stripe account before any refund path is available. If you haven't connected Stripe yet, see Connecting Stripe.
Two ways to issue refunds
The inline refund fires Stripe immediately with no approval queue. Open a registration, find the ticket card, open its menu, and choose Refund…. The charge hits Stripe the moment you confirm.
The Refunds tab workflow has a two-step approve cycle: a refund request is created first, in Pending status, then you explicitly approve or deny it. Stripe fires on approval. This path also handles attendee-initiated requests, which land in the Pending filter for your review.
Inline refund from the ticket card
Open a registration, go to the Tickets tab, and open the menu on the ticket you want to refund. Choose Refund… to open the refund dialog.
The dialog pre-fills the Amount field with the amount the attendee paid. Edit it to issue a partial refund, or leave it to refund in full. The Reason field is optional and stored for your records. Confirm to send the refund.
The inline refund option appears on any ticket where the attendee paid more than zero, including already-cancelled tickets. It's not available while a pending transfer is in progress on that ticket.
Issuing refund requests from the Refunds tab
Open your event and go to the Refunds tab, next to Invoices. The tab lists every refund request for the event, defaulting to Pending. Open the filter menu in the toolbar to narrow the list to All / Pending / Approved / Denied / Failed / Withdrawn.
To create a new refund request, use New refund request in the page header, the tab's one primary action. The dialog asks you to:
- Select a registration from the search picker (only confirmed, paid registrations appear).
- Choose Full or Partial as the refund type.
- If Partial, enter the amount to refund (cannot exceed what the attendee paid).
- Add an optional reason or notes for your records.
This creates a request initiated by you on the whole registration, useful for back-office cancellations. It lands in Pending. To complete it, find the row and click Approve. An approval dialog lets you confirm the amount and add notes for the attendee before the charge fires.
Attendee-initiated refund requests
Attendees can request a refund for a single ticket from their own portal, on that ticket's detail page. They don't need to contact you first, and the request is scoped to that one ticket rather than the whole order, so a group buyer can request back one seat without touching the rest.
When an attendee submits a request, it appears in the Pending filter on your Refunds tab. From there you can approve or deny it. The attendee gets an email notification either way, see Approval and denial emails below.
A ticket can only have one open request at a time, so an attendee can't submit a second while the first is still pending. If your event has a refund deadline configured, Mercleo rejects attendee requests submitted after that date; requests already Pending aren't retroactively closed when a deadline passes.
Full vs partial refunds
A full refund returns exactly what the attendee paid. A partial refund is any amount you choose up to the amount paid. There's no pro-rata calculation, you enter the dollar amount directly.
You can turn off partial refunds for an event with the Allow partial refunds toggle in the event's refund policy. When it's off, attendees can't request partial refunds and the Partial option is hidden in both operator refund dialogs.
Refund policy fields on the event
Each event has a Refund policy section in its settings. All three fields are optional; leave them blank and refunds stay unrestricted, no deadline, no fee, partials allowed.
- Refund deadline: a date after which attendee-submitted requests are automatically rejected. Operator-initiated refunds aren't blocked by this deadline.
- Cancellation fee: a fixed amount deducted from every refund on this event. Set this if your policy retains a processing or admin fee.
- Allow partial refunds: on by default. Turn it off to force all-or-nothing refunds on this event.
Approval and denial emails
Mercleo sends the attendee a notification email when you approve or deny a refund request:
- Approved: an email is sent with the refund amount and any notes you added during approval.
- Denied: an email is sent, including the reason if you provided one.
These emails are sent best-effort. If the send fails, the error is logged and the refund or denial still completes, the email failure doesn't block the status change.
When a Stripe refund fails
If the Stripe API call fails at the point of approval, the request is marked Failed and the error message is recorded on the request. No money moves.
Use the Failed filter on the Refunds tab to surface these rows. Common causes include an insufficient Stripe balance, a charge too old to refund, or a disconnected Stripe account. Resolve the underlying Stripe issue, then re-approve the request.
Chargebacks aren't refunds
Updated