Case studyCustom DevelopmentWeb DevelopmentOnline Booking

Skating in the Square — Ice Rink Booking System & Website

A custom ice rink booking system and website for Dorchester’s festive outdoor rink at Brewery Square: live session availability, SumUp payments verified on the server, places that release themselves when a basket is abandoned, and a check-in screen built for the side of the ice.

Skating in the Square
ClientSkating in the Square
Year2026
ScopeLaravel & React build · Live-availability booking · SumUp payments · Rink-side check-in · SEO migration from WordPress
Liveskatinginthesquare.co.uk ↗
Skating in the Square website on desktop and mobile

01

The Challenge

Skating in the Square is Dorchester’s festive, eco-friendly outdoor rink in the middle of Brewery Square: synthetic ice, no generators, twinkling lights and skaters of every age from the first weekend of the Christmas season into the new year. It is run by the same team behind Santos + Co, the restaurant a few steps from the ice.

A rink lives and dies by a few short weeks. Every session has a fixed number of places, the popular ones go fast, and a place that is not sold by the time the clock starts is gone for good. The old WordPress site was not built for that kind of pressure:

  • Places were held without payment. A visitor could tie up tickets mid-checkout and walk away, leaving a sold-out session that was not really sold out.
  • The timetable was a chore. A season of back-to-back sessions, every day, with different prices and occasional changes, was hard to set up and harder to keep accurate.
  • Nothing happened at the rink edge. There was no proper check-in, so the team on the ice had no quick way to find a booking, confirm it and wave a family through.
  • Search visibility was at stake. The rink comes back every year, and the old site had years of Google history that a rebuild could easily throw away.

The brief was simple to say and hard to get right: sell every session cleanly, make the season easy to run, and do not lose a single visitor from search on the way.

Live-Availability Session BookingSumUp Payments, Verified Server-SideRink-Side Check-InWordPress Exit With Every URL Redirected

02

Our Approach

We replaced WordPress with a purpose-built booking system on Laravel, React and Tailwind CSS: a fast, branded website for the rink and a booking engine underneath it that was designed around sessions, capacity and the Christmas rush. It is the same thinking behind our Land & Wave booking portal, shaped for a single venue with a very short, very busy season.

Booking that shows the truth. Pick a date on the calendar, see that day’s sessions with live availability, choose tickets, pay. Four clear steps, a running basket that follows you down the page on a phone, and dates with no sessions simply cannot be picked.

Project mockup

Payments you can trust. Card payments run through SumUp, and every payment is confirmed on the server with SumUp before a booking is marked as paid. The browser never gets to decide whether someone has paid.

Places that free themselves. When a skater starts checking out, their places are held so nobody else can take them mid-payment. If the basket is abandoned, the hold expires after 35 minutes and those places drop back into the calendar on their own. No phantom sell-outs, no one at a desk releasing tickets by hand.

Emails that do the reminding. Every booking gets an instant confirmation with its reference, followed by a reminder before the session.

A season set up in minutes. From the admin, the team generates a whole run of sessions in one go, or imports the timetable from a CSV. Prices and discount codes are managed in the same place, and bookings export to CSV whenever the office needs them.

Check-in at the edge of the ice. A dedicated check-in screen lets staff find a booking by name or reference and mark it as arrived in seconds, on a phone or tablet, with a queue of families in front of them.

Built to stay up when it matters. reCAPTCHA keeps bots out of the checkout, automated tests cover the booking and payment logic, the site runs behind Cloudflare, and every change goes through a staging copy of the platform before it reaches the live rink.

A migration that keeps the Google history. Every old WordPress URL was mapped and 301-redirected to its new home, and a fresh XML sitemap went live with the new site, so the links and rankings the rink had built up over the years point straight at the new platform.

03

The Result

35 minafter which an unpaid basket gives its places back to the calendar, automatically

Skating in the Square now runs on a booking system that was built for the way a rink actually sells: in fixed sessions, under pressure, for a few weeks of the year.

Project mobile mockup

For skaters, booking is quick on any device. The calendar shows what is genuinely available, payment is a single secure step, and the confirmation is in their inbox before they have put their phone away.

For the team, the season runs itself. Sessions are generated in bulk, abandoned baskets clean themselves up, prices and discount codes are changed without a developer, and check-in at the rink takes seconds instead of a scroll through a spreadsheet.

For the business, every session sold is a session paid for, the move off WordPress happened without breaking a single old link, and the platform is ready to open again every winter.

If you sell timed sessions, events or experiences and your booking plugin is holding you back, this is what we build. See our custom booking system development service.

Ready to build something great?