Skip to content

Case study · Built and run by our team

Lifestyle Vacation Clubs: A Member Booking App and the CRM Behind It

A mobile-first member booking app, a landing site and Leadcockpit, a small custom CRM that replaced an expensive platform, built and run by the Xaden team.

The member booking app on a phone: destination search, featured resort deals and popular destinations, with prices blurred
The member app on a phone. Prices blurred.
The member app on a phone. Prices blurred.
Industry
Travel and HospitalityTravel and ToursMembership Organizations
Project type
Booking app and custom CRM
Technology
Next.js · TypeScript · PostgreSQL · Drizzle · Prisma · Stripe · Sentry · Railway
Integrations
Travel supplier API for hotels · Stripe card payments · Sentry error alerts · One-time import from the previous CRM

The context

The business behind the brief

A vacation club sells memberships, then has to deliver on them. Members expect to find and book travel easily, and the sales team needs to know who to call next.

Members had no simple way to search and book on their phones. On the sales side, years of past customers sat in an expensive CRM that showed a long list but never said who was worth calling today. We built both sides.

The challenge

What the system needed to solve

  • 01

    Let members search hotels and pay in one flow on a phone, with an app that installs like a native one.

  • 02

    Show member pricing in a way members can check on their own instead of asking staff.

  • 03

    Move years of customer history out of an expensive CRM without losing the original data.

  • 04

    Turn a long customer list into a short daily queue: who to call today, who to revive, what to clean up.

The solution

From requirements to working software

Delivered functionality and implementation boundaries.

01

A member booking app

A mobile-first app where members search hotels through a travel supplier API and pay by card through Stripe in one flow. It installs on a phone like a native app, and errors are reported to an alerting tool so problems are found before members report them.

02

A landing site for new members

A separate site explains the membership and shows public member deals. It is its own small application, so the booking app and the marketing site can change independently.

03

Leadcockpit, a small CRM

A single-user CRM on its own database that imported the whole old customer list. Every past customer is scored on simple signals from their history, and the daily queues are Today, Revive and Clean up. The scoring rules can be changed and re-run at any time.

04

The original data kept alongside

The full original export is kept next to each contact, so a record can be re-processed later without asking for a fresh export from the old platform.

Leadcockpit CRM showing the ranked daily lead queue and a contact with a recommended next step, an AI summary and a drafted reply
Leadcockpit’s daily queue with an AI summary and drafted reply. Sample data.
Leadcockpit’s daily queue with an AI summary and drafted reply. Sample data.
The deals tab of the member app on a phone, showing resort deal cards with prices blurred
Member deals by destination. Prices blurred.
Member deals by destination. Prices blurred.

Core functionality

What the product lets people do

  • Member booking app that installs on a phone
  • Hotel search and booking through a travel supplier API
  • Card payments through Stripe
  • Landing site for new members
  • Leadcockpit: every past customer scored on simple signals
  • Daily call queues: today, revive and clean up

Technical implementation

Architecture and system boundaries

Three separate applications, each doing one job. The booking app talks to the supplier API and Stripe and reports errors to an alerting tool. The landing site explains the membership. Leadcockpit is a small web app on its own database, with the full original export kept alongside each contact so records can be re-processed without a fresh export.

Documented technology

Next.js · TypeScript · PostgreSQL · Drizzle · Prisma · Stripe · Sentry · Railway

Business impact

The delivered outcome

  • Members book on their phones instead of asking for help
  • The expensive CRM subscription was cancelled
  • Sales work now starts from a ranked daily queue instead of a raw list
  • Scoring rules can be changed and re-run without a fresh export

Let’s talk about the system you need.

Tell us where the current process breaks down. We can map the workflow, examine the integration requirements and define a practical scope for the build.

  • A mutual NDA is signed before project details are shared.
  • Scope is fixed in writing before any build starts.
  • You own the source code, the IP and the documentation at delivery.
  • Support plans are available and tailored on a discovery or technical call.