Industry Hospitality
Client Arenas del Mar Resort (Costa Rica)
Year 2023
Stack Laravel · Livewire · Stripe

Rebuilding a 5-star resort's booking stack — without taking it offline

Arenas del Mar's legacy booking engine was costing them OTA fees on direct customers. We replaced it under live traffic, with zero downtime during cutover. Direct bookings grew 52% YoY.

+52%
Direct bookings YoY
Rebuilding a 5-star resort's booking stack — without taking it offline

The challenge

An aging Vue 2 + Laravel 7 booking engine. Stripe payments worked but the booking flow leaked sessions on mobile, the staff dashboard required a VPN to access, and the resort was paying 15% OTA fees on customers who had typed `arenasdelmar.com` directly into their browser. Six months to peak season.

Our solution

Rebuild the public booking flow on Livewire 4 for the speed (no SPA boot time), keep the Laravel core, replace the legacy admin with Filament, and route every public route through Cloudflare Workers so we could A/B test the new flow against the old without touching origin code. Cutover was a 12-line worker config change at 4am on a Tuesday.

The results

Direct bookings up 52% year-over-year, six months post-migration. Cart abandonment dropped from 38% to 24% on mobile. The resort kept the OTA channels open but their share of bookings dropped from 71% to 49%. Zero downtime during cutover.

The cutover

The hard part of a booking-engine migration isn’t the new engine — it’s the cutover. We staged the rebuild for 12 weeks, with the new engine answering 5% of traffic via a Cloudflare Worker route rule for the last 3 weeks before launch. By the time we flipped the rule to 100% at 4am on a Tuesday, we had:

  • 3 weeks of real production traffic on the new engine
  • 14,000+ successful test bookings (some real, some QA shadow)
  • A rollback plan that was a 12-line worker config change

The “launch” was a non-event. The team watched dashboards for 2 hours, saw no anomalies, and went back to sleep.

What we’d warn the next client about

Don’t underestimate the email integration. Booking confirmation emails are the silent killer of these migrations — the resort had 22 different email templates across confirmation, modification, cancellation, and dietary-requests, all rendered from a legacy template engine no one understood. Porting those took longer than the booking flow itself. Budget 30% of the engagement for it.

“We thought a rebuild meant six weeks of 'sorry, please try again.' We had zero customer-visible downtime and a measurable bump in direct bookings inside three months.”
Roberto Sandoval GM, Arenas del Mar
§ — Become the next one

Ready to be
our next study?