Case studyCustom DevelopmentWeb DevelopmentPayment Integration

Land & Wave — Custom Booking Portal

A purpose-built booking platform for 61 outdoor activities — Laravel and React, Windcave and PayPal payments, automated waivers and Activity Cloud sync, designed for a phone on a beach car park.

Land & Wave
ClientLand & Wave
Year2026
ScopeCustom Development · Web Development · Payment Integration · Systems Integration
Livebooking.landandwave.co.uk
Land & Wave website on desktop and mobile

01

The Challenge

Land & Wave run coasteering, kayaking, paddleboarding, bushcraft, lifeguard qualifications and multi-day residentials across Dorset and Wales — over sixty distinct activities, each with its own pricing rules, group limits and paperwork.

All of it was being sold through an events module bolted onto their WordPress site. It was slow, awkward to use and prone to errors. Customers hit a booking journey that buried the calendar below the fold and made them jump between separate forms to get to a payment screen. Staff hit an admin interface that fought them every time availability needed changing.

The knock-on effects were the real cost:

  • Pricing couldn't keep up with the business. Land & Wave price some activities per person and others as a private group rate with a per-head charge above a threshold. The events module had no concept of either, so prices were being worked around manually.
  • Paperwork lived somewhere else. Waivers and health forms were handled through third-party form tools, disconnected from the booking they belonged to. Chasing incomplete paperwork before an activity was a manual job.
  • Bookings had to be re-entered. Nothing flowed through to Activity Cloud, the operational system the team actually runs the day on.
  • Errors reached customers. A booking platform that throws errors at the payment step doesn't just lose that sale — it costs the trust of a customer who was ready to buy.

They needed a booking system built around how they actually sell, not a plugin bent into roughly the right shape.

61 Activities LiveFour-Step Mobile Booking FlowWindcave & PayPal PaymentsActivity Cloud Integration

02

Our Approach

We built a standalone booking portal — booking.landandwave.co.uk — as a dedicated application on Laravel 11, React, MySQL and Tailwind CSS, hosted separately from WordPress and linked from the "Book Now" buttons on each activity page. Customers experience one continuous brand; the booking engine is no longer hostage to the CMS.

A booking flow designed for a phone on a beach car park. Four steps, no detours: pick a date, choose a group size, enter details, pay. The calendar leads the page rather than hiding beneath it, unavailable dates are visibly unselectable, and — a detail that matters for a seasonal business — the calendar opens on the next month that actually has availability instead of stranding customers on an empty grid.

Project mockup

Pricing that matches the commercial model. A single server-side pricing service handles both models: straight per-person, and flat private-group rate plus a per-head charge beyond a set threshold. The same rules are mirrored in the front end so the total updates instantly as the group size changes, with a plain-English breakdown of how it was reached — but the price charged is always the one the server calculates. Deposits, balance payments, discount codes and childcare vouchers are all handled inside the same flow.

Payments without the PCI burden. Card payments run through Windcave's hosted payment page, with PayPal as an alternative route. Card details never touch Land & Wave's servers. Results are confirmed server-side against the payment provider rather than trusted from the browser, with a webhook fallback so a customer closing their browser at the wrong moment can't leave a paid booking unconfirmed.

Paperwork brought in-house. Waivers, health forms and dietary requirements are now part of the portal, tied to the booking reference and configurable per activity through the admin. Multi-participant activities such as Gold DofE residentials collect a name per person. Automated emails confirm the booking, chase outstanding paperwork and balances, and send pre-activity information on a schedule.

Connected to how the business runs. Bookings and completed forms sync through to Activity Cloud automatically, rebuilt as a direct integration with retry handling rather than a WordPress plugin dependency — so the operational system stays current without anyone re-keying a booking.

An admin the team can actually use. Availability management, booking search and amendment, CSV export, discount codes and waiver configuration, in an interface built around the jobs staff do daily.

Availability is decremented inside a database transaction so two customers can't take the last place on the same trip, and the pricing logic is covered by automated tests.

03

The Result

Land & Wave now own their booking journey end to end. What was a plugin with a workaround for every business rule is a purpose-built platform that reflects how the company sells:

Project mockup
  • Sixty-one activities live, spanning single sessions, multi-day courses, qualifications, hen and stag packages and DofE residentials — each with its own pricing model, group limits, deposit terms and paperwork requirements.
  • One continuous flow from calendar to payment, mobile-first, with pricing that updates live and is always validated server-side.
  • Paperwork completes itself. Waivers and health forms are attached to the booking that needs them and chased automatically, rather than tracked by hand.
  • No more double entry. Bookings and forms reach Activity Cloud without staff intervention.
  • Room to grow. New activities, pricing rules, discount campaigns and waiver templates are configured by the team in the admin — not booked in as development work.

The portal is live and in active development, with new capability released continuously as the season progresses.

Ready to build something great?

Land & Wave — Custom Booking Portal - Portfolio - Takeoff Digital