Rebuilding a European travel-membership storefront on a headless Jamstack

Summary

As Harvest Hosts expanded beyond North America into Europe, Quarry replatformed Brit Stops from an ageing PHP monolith to a modern headless stack — a Next.js storefront, headless WordPress CMS, modernised Stripe payments, and Cloudflare Workers edge services — handing day-to-day content control to the marketing team and de-risking future change.

Team
Product & Engineering
Team members / roles
Rafael Osorio / Senior Engineer
Puneet Maloo / Principal Engineer
Maria Cecília / Senior Engineer
Derek Paranhos / Senior Engineer
Oleg Bochulyak / Product Design
Brendan Binger / Principal Architect / TPO
Released
October 2023
Duration
Feb–Oct 2023
Web05.17.26

Photo by Kevin Schmid on Unsplash

The Challenge

Brit Stops represented Harvest Hosts’ expansion beyond its established North American market and into Europe. The product was an annual guide and companion app that connected motorhome and campervan travellers with hundreds of UK host sites – farms, pubs, vineyards and farm shops – offering free overnight stays. It served a pan-European customer base, sold direct and through resellers in Germany, the Netherlands, Spain and Norway, on an annual cycle that refreshed every March.

The storefront ran on an ageing, hand-rolled PHP monolith: procedural page scripts for the shop, basket, checkout and membership join flows, a bespoke class autoloader, almost no dependency tooling, and a Stripe SDK pinned to v7.8.0 with no documentation available. Routine content changes required a developer, the codebase was risky to extend, and the annual product cadence demanded a storefront the marketing team could run without engineering.

As a newly acquired brand entering the portfolio, Brit Stops needed to align with Harvest Hosts’ modern, maintainable technology standards while keeping its distinct brand and its multi-reseller commerce intact.

The Solution

Quarry replatformed Brit Stops onto a modern headless architecture. We built a new storefront on Next.js with React, TypeScript and Tailwind, using server rendering and static generation for SEO and speed, with a blog, sitemap, and country-based internationalisation for the European audience.

We decoupled content into a headless WordPress CMS using Atlas Content Modeler for structured content types, exposed over WPGraphQL and consumed through Apollo Client, with Yoast for SEO – including the documented integration patches needed to make Atlas Content Modeler, Yoast and GraphQL cooperate. This handed day-to-day control of listings, pages and blog content to the marketing team.

We modernised payments, moving off the undocumented legacy Stripe v7 integration to a modern Stripe Checkout flow that supported one-time book purchases alongside yearly and worldwide subscription tiers.

Finally, we added two lightweight Cloudflare Workers edge services – member authentication and a configurable promotional offer bar injected at the edge – each deployable independently of the storefront.

The Results

Brit Stops moved from a fragile, developer-bound monolith to a composable headless platform aligned with the wider Harvest Hosts portfolio standards. The marketing team could manage content and promotions without engineering involvement, comfortably supporting the annual March product cycle.

A modern payments stack supported multi-tier subscriptions and one-time purchases across a pan-European customer and reseller network, while independent edge services and CI/CD-friendly repositories lowered maintenance overhead and de-risked future change – giving Brit Stops room to grow within the portfolio.

Make the connection

Discover how Quarry's unique blend of design, technology, strategy, service, and economy can grow your digital product.

Learn More