Paid bookings (WooCommerce)

Updated

Set Checkout to Pay with WooCommerce to take payment. WooCommerce must be active; if it isn't, the bookable shows its closed message instead of falling back to free bookings.

What visitors see

They choose a date, a time, tickets and extras, answer your questions and sign the waiver, then Book now takes them straight to checkout. The cart line shows the date, time, tickets and extras, and the price is the total of what they chose.

Their spots are held for 15 minutes while they check out, and the hold renews while they're on the cart and checkout pages. If a hold runs out and the session has filled in the meantime, the booking leaves the cart with a note saying so.

Orders

Each booking is one line on the order, with the date, time, tickets, extras, answers and waiver signature underneath. WooCommerce's own order emails include those lines, so customers get them with their receipt.

  • Processing, Completed and On hold orders keep the spots.
  • Cancelled and Refunded orders give the spots back. So does refunding the booking line itself (its quantity, 1, in the refund form) or deleting the line from the order. A refund of just an amount, with no quantity, keeps the spots: use it for a partial refund when the people are still coming.
  • An order waiting for payment keeps its spots for at least an hour (or your WooCommerce Hold stock time, if longer).

When a session fills before someone pays

If a customer pays after their hold ran out (for example from the "pay for this order" link a day later) and the session filled in the meantime, the booking isn't confirmed, so the session is never overbooked. The order goes On hold with a note explaining why. The customer gets an email saying their booking couldn't be confirmed and that you'll refund them or move them to another time, and you get an email too. Refund the order, or make room in the session and set the order back to Processing to confirm it. On Bookings → Schedule it shows as Paid, but the session was full.

Each bookable has a hidden WooCommerce product behind it. You don't need to edit it: it takes its name and image from the bookable, it isn't listed in the shop or search results, and opening it goes to the bookable's page.