Refunds on online payments go back to the customer's card through Stripe; you can give account credit instead, and offline payments are refunded by you. What customers can do themselves is set by your cancellation and reschedule policy.

How refunds are recorded
Every booking keeps two figures: Amount paid, the gross amount captured, which never goes down, and Refund amount, the running total refunded. Your takings in reports and CSV exports are the difference. Refunds you issue in your Stripe dashboard are picked up and added automatically.
Cancel and refund a booking
- 1Open the booking from the bookings page or the session calendar.
- 2Choose Edit booking → Cancel booking and check the Refund amount. It's prefilled with the full outstanding amount - lower it for a partial refund, or set it to 0.
- 3Confirm. Session refunds the card and emails the customer.
The refund is capped at what's still owed.
Voucher, bundle and membership credit
If the booking used a voucher, bundle session, account credit or included membership session, the cancel dialog shows Return the credit they used. It's ticked when you cancel before your cancellation cutoff, so the credit goes back to the customer, and the cancellation email says where. After the cutoff, or once the session has started, it's unticked and the credit stays used - tick it to return it anyway. This is separate from the cash refund, and the booking's History records which you chose.
For a no-show or a non-refundable late cancellation, cancel with a £0 refund and leave Return the credit they used unticked: the space is freed and the customer notified, and you keep the payment and the credit.
Refund without cancelling the booking
Use this when only the money is wrong - a forgotten discount code, a corrected price, or a goodwill gesture.
- 1Open the booking and choose Edit booking → Refund.
- 2Set the amount (it prefills with everything still refundable) and confirm. The money goes back to their card.
The booking and any credits it used stay as they are. The customer isn't emailed, so let them know yourself (Stripe sends its own receipt if you have those switched on). Refund isn't offered on a cancelled booking; to refund one later, use your Stripe dashboard.
If the booking is wrong - the wrong price, or they meant to book a private hire - cancel and rebook instead.
Give account credit instead of a refund
Instead of a card refund, you can give account credit - a CR- code the customer redeems against a future booking. Customers' own cancellations follow What they get back in your cancellation policy; when you cancel, you choose per booking.
- 1In the cancel dialog, set the method to Account credit and check the amount (it prefills from your policy's percentage of the net paid).
- 2Confirm. Session emails the
CR-code to the customer.
No card refund is recorded, and the code appears under Offers → Discounts.
Refund some of the spaces
- 1Open the booking and select Edit booking → Edit quantity.
- 2Lower the number of spaces, adjust the refund if needed (it prefills with the removed spaces' share), and confirm.
If a member's free session covers some of the spaces, the paid spaces are removed first and refunded at what was paid for them. If they used a voucher or bundle, Return the credit they used shows here too, with the same default as cancelling. Ticked, the removed spaces' credit goes back. An included membership session only comes back when you cancel the whole booking. A booking with more than one ticket type (say a member and two guests, or a standard and a concession space) shows Remove spaces instead of Edit quantity: step down the ticket type that's losing a space, and the refund prefills with that ticket's price. The member's own space stays - cancel the booking to remove it. A booking with more than one ticket type that used a voucher or bundle still needs cancelling and rebooking. A private hire is priced as one unit, so cancel and refund it instead.
How long a refund takes to arrive
Session records a refund straight away and Stripe sends it to the card the customer paid with. Their bank then takes 5 to 10 working days to show it, sometimes a little longer.
To check one, open your Stripe dashboard, go to Payments, search for the customer's email and open the payment. The refund is listed with its status. If their bank still can't find it after 10 working days, give them the refund reference number Stripe shows there, once available.
Offline and walk-in refunds
For a booking paid offline (card machine, cash or bank transfer), Session records the refund when you cancel or reduce spaces, and you return the money yourself.
Refund a membership payment
- 1Open the customer from the Customers page, or click their row in the member list under Offers → Memberships, and find their membership.
- 2Select Refund a payment, pick the charge, set the amount (it prefills with the full refundable balance) and confirm.
Tick Also end this membership now to end it in the same step (and stop any future payments); a refund alone never ends one.
This only refunds charges taken through Session. If a member's old booking system is still billing them, refund and cancel it there.
Common questions
-
Can staff issue refunds? Yes. Staff can cancel a booking and set the refund amount, including partial and £0 refunds. See admins and staff roles.
-
Can I apply a discount code after someone has booked? No, so refund what it would have taken off with Edit booking → Refund. Don't ask them to rebook with a one-use code they've already used - checkout will refuse it.
-
How do I move a booking instead of refunding it? Use Edit booking → Move booking - no money changes hands. See managing bookings.
-
Do I get Stripe's fee back when I refund? No. Stripe keeps its processing fee. Account credit avoids that, as no money goes back to the card.