Klaviyo Integration
Connect your own Klaviyo account to Camper BMS to turn your booking data into a consent-based email audience that stays up to date automatically - guest profiles and live booking events flow straight into Klaviyo under your own brand and sender details.
What It Does
The integration links your Klaviyo account to Camper BMS over a secure connection (OAuth - no API keys to copy and paste) and keeps two things in sync: who your consented guests are, and what those guests are doing. Only guests who have opted in to marketing are ever synced.
Where to Find It
Navigate to Marketing > Klaviyo from the main navigation. If you don't see Marketing in the sidebar, it may be hidden under Settings > Navigation, or your role may not include integration permissions.
Setting It Up
Connect - on the Klaviyo page, click Connect Klaviyo. You are sent to Klaviyo to authorise the connection, then returned to Camper BMS. (While the app is completing Klaviyo's partner review, Klaviyo may show a "not yet reviewed" notice on the consent screen - the page pre-warns you it is safe to continue.)
Choose a list - pick which Klaviyo list your guests should sync into and save. We recommend setting that list to single opt-in, since guests already give explicit marketing consent at checkout. As soon as you save the list, Camper BMS sends an example profile carrying every property and metric, so your segment and flow builders are populated straight away.
Sync existing guests - click the sync button to backfill your existing consented guests into the list. You'll see live progress and a completion state. Nothing is sent in bulk until you press this.
Done - from then on everything is automatic. New consents, profile updates and booking events flow in real time with no further action needed.
Guest Profiles
Every guest who has opted in to marketing syncs into your chosen Klaviyo list as a subscribed profile, carrying Camper BMS-branded properties for personalisation and segmentation:
The park they stayed at
Total completed stays, and their last and next stay dates
Their most relevant site type
Lifetime spend across all their paid invoices
Behavioural tags - such as booking guest, repeat guest, checked in, and the site types they prefer
These properties refresh automatically whenever the guest's data changes, so your segments stay accurate on their own.
Booking Events
As a booking moves through its lifecycle, the guest's Klaviyo profile receives branded metrics in real time, ready to trigger flows:
Booking Reserved, Booking Pending, Booking Confirmed, Booking Cancelled
Checked In and Checked Out
The e-commerce trio - Started Checkout (with a resume-checkout link), Placed Order (with its dollar value), and Cancelled / Refunded Order
Orders sync forward only, from the day you connect - there's no historical order backfill, as lifetime value is already represented on the profile through the lifetime spend property.
Consent Works Both Ways
Only guests who opted in to marketing are ever synced, and consent stays honest in both directions:
If a guest withdraws consent in Camper BMS, they are unsubscribed in Klaviyo.
If a guest unsubscribes from a Klaviyo email, their consent is revoked back in Camper BMS by a nightly reconciliation that reads their Klaviyo subscription status.
Routine syncs never re-assert consent, so a Klaviyo-side unsubscribe always sticks.
What You Can Build
Abandoned-checkout recovery - a flow triggered on Started Checkout emails the guest their resume link with their dates and site type.
Pre-arrival and post-stay flows - confirmation and "before you arrive" sequences, and Checked Out to trigger review requests or come-back offers.
Segmentation from day one - build audiences like "stayed before", "spent over $1,000", "glamping guests" or "no stay in 12 months" straight from the synced properties, with no order history needed.
Win-back and loyalty campaigns keyed on each guest's last-stay date.
Revenue attribution - campaign links carry a click through to the booking, and Placed Order values let Klaviyo report the revenue each campaign produced.
Permissions We Request
Camper BMS requests only the minimum Klaviyo scopes its guest-sync integration needs. Every scope maps to specific endpoints the app calls, and none is requested speculatively - so when you connect you can see exactly what access you are granting and why.
Scope | Why we need it | Endpoints called |
|---|---|---|
| After the OAuth callback we fetch the account's organisation name once, so you can see which Klaviyo account is connected (for example "Connected - Acme Holiday Park") and catch a wrong-account connection. |
|
| Populates the list picker you use to choose which list guests sync into, and reads that list's members for the nightly consent reconciliation and for membership checks before an unsubscribe. |
|
| Subscribes guests into - and unsubscribes them from - your chosen list. The subscribe and unsubscribe job endpoints require this scope whenever a list relationship is included. |
|
| Reads list membership and subscription status during the nightly consent reconciliation, which flows back into Camper BMS so a guest who opts out is never contacted again. |
|
| Creates and updates guest profiles with their contact details and Camper BMS-branded properties (prefixed |
|
| Records consent: guests who consent at checkout are subscribed (live consent), previously consented guests are imported with their original consent timestamp ( |
|
| Streams booking activity into your flows and segmentation - Booking Reserved / Pending / Confirmed / Cancelled, Checked In, Checked Out, Started Checkout (abandoned-cart recovery), and Placed / Cancelled / Refunded Order with order values for revenue attribution. Also seeds one example event per metric at setup. |
|
Disconnecting
Click Disconnect on the Klaviyo page. Camper BMS stops all syncing and revokes the connection immediately.
Related articles
Still need a hand?
Our support team is happy to help.
Contact support