Skip to main content
New Connect Klaviyo at Settings → Integrations → Klaviyo and Riserva sends an event to Klaviyo at every reservation moment. From there it’s ordinary Klaviyo: build flows (“thank them the morning after a visit”, “win back a cancelled reservation”), segment on reservation behaviour, and report alongside your store metrics.

Connect it

  1. In Klaviyo, go to Account → Settings → API keys and copy the 6-character key under Public API Key / Site ID.
  2. Paste it into Public API key under Connection and press Connect. The badge turns Connected; Disconnect stops all sending.
That’s the whole setup. Riserva only ever asks for the public key — it can’t read anything in your account and is safe to share. If you paste a private key (they start with pk_), Riserva refuses it and tells you why: private keys are secrets, and no reservation app needs one.

What gets sent

Every event carries the reservation’s code, experience, venue, location, party size, date, time, channel, and whether the guest is a member — plus two properties built for flow emails: manage_url (the guest’s manage-reservation link, ready to drop behind a button) and experience_image (the experience’s photo URL, present only when it has one). Confirmed also carries the paid amount as the event’s value, so Klaviyo’s flow analytics report reservation revenue. Each event has a switch — all on to start with. Switch one off and that metric stops being sent; Riserva notes each skipped send on the reservation’s timeline, so “why isn’t my flow firing” always has an answer. Guests without an email address are skipped — Klaviyo events attach to a profile, and a walk-in with no email has none.
Good to know Events land on the guest’s Klaviyo profile, creating it if it doesn’t exist. A new profile arrives as Never Subscribed — an event never subscribes anyone to marketing. Flows you trigger from these events follow Klaviyo’s own consent rules: transactional sends need Klaviyo’s transactional approval, and SMS always requires consent.

Prove it works

Under Test integration, pick an Event, enter your own address under Profile email, and press Send test event. Then look in Klaviyo — Analytics → Metrics, or your profile’s activity feed. Allow a minute. Send all metrics sends one sample event for every metric in one press — switched-off metrics are skipped and listed as such, mirroring exactly what live dispatch would do. A mistyped key is rejected on the spot, but a well-formed wrong key can be accepted silently — Klaviyo doesn’t confirm keys. Seeing the test event in Klaviyo is the real proof the connection works.

The fine print

  • Events are sent once and never retried. If Klaviyo is unreachable, the failure is recorded on the reservation’s timeline — a marketing event can never block a booking.
  • Metric names are permanent on Klaviyo’s side, so Riserva’s are too — build your flows on the names above with confidence.
  • A guest changing their email address shows up in Klaviyo as a new profile — the public API can create profiles but not edit existing ones.

What things mean on this screen: What things mean: Settings