Connecting Relaxy (wellness lead channel)

Updated on 2026-10-01

Settings → Integrations → Guest experience → Relaxy

Relaxy (relaxy.be) is a Belgian marketplace for private saunas and wellness. Anyone who requests a package there now automatically becomes a wellness reservation with a payment link on your side. The guest pays you, never Relaxy, and your slot is only final once payment has been made.

This integration is part of the wellness module (Starter and higher). It works for properties that sell wellness through BedFlow. If the wellness module is not included in your plan, the tile shows Not in your plan, with an Upgrade button.

How it works

  1. A guest submits a request for your package on Relaxy.
  2. Every five minutes, BedFlow reads Relaxy's private calendar feed and picks up the new request, with name, email, phone, number of people and the requested time.
  3. BedFlow creates a regular wellness reservation: proforma, calendar event, and a payment link by email and WhatsApp to the guest, exactly as with a booking through your own widget.
  4. If the guest pays, the session is confirmed and they receive the usual confirmation. If they don't pay within the deadline, the reservation lapses automatically and the slot becomes available again.
  5. If the guest withdraws the request on Relaxy, we release the slot as well.

If the requested time is already taken on your side, the guest receives an email asking them to choose another time via your own booking page, and you get a notification to decline the request in Relaxy. After all, Relaxy does not know your calendar.

Setting up

In Relaxy

  1. In the partner portal, go to Connections → Apple Calendar & Outlook.
  2. Switch on Send customer details. Without that toggle, the feed only contains the name of the package and BedFlow cannot send anyone a payment link.
  3. Copy the ICS link (starts with https://www.relaxy.be/agenda/…). Keep that link private: anyone who has it can read your requests.
  4. Under Units → Work schedule → Booking settings, set the time between two bookings and the minimum booking time to match what you use in BedFlow, so that Relaxy does not accept requests that could never work on your side anyway.

In BedFlow

  1. Go to Settings → Integrations, category Guest experience, and click Configure on the Relaxy tile.
  2. Paste the link into Relaxy ICS link, switch on Convert Relaxy requests automatically and choose the Payment deadline (hours) (default 24). BedFlow never holds the slot longer than until two hours before the session.
  3. Click Save. Within five minutes, the first fetch appears under Status at the bottom of the window.

Last-minutes on Relaxy

With Relaxy's Partner API, BedFlow can also work the other way round: your free slots appear as last-minutes on relaxy.be, and disappear there as soon as they are taken on your side.

  1. In Relaxy, under Connections → Partner API, create an OAuth client with the permissions accommodations:read, last-minutes:read and last-minutes:write. Copy the client ID and client secret (Relaxy only shows the secret once).
  2. Enter them under Partner API client ID and Partner API client secret on the Relaxy tile and click Save. BedFlow tests the connection straight away and reports the result (Relaxy API connected or Relaxy API: connection failed). If Relaxy refuses the login, ask support for BedFlow's IP address and add it to the client's IP access list at Relaxy.
  3. Switch on Publish free slots as last-minutes on Relaxy and fill in: Preferred start times (e.g. 10:00,14:30,19:00), Days ahead (default 7), Close an offer how many hours in advance? (default 4) and optionally Discount on last-minutes (%).

Every fifteen minutes, BedFlow checks per day which preferred times your own slot engine considers free (the same buffers and the same daily maximum as your widget) and publishes them as a 2.5-hour last-minute for 2 people, one booking per slot. If none of the preferred times is free on a given day while a session does still fit, BedFlow publishes that one free slot as a last-minute: the slot closest to a preferred time. That way, even a half-booked day on which the remaining slot falls outside your fixed times stays visible on Relaxy. If someone books such a slot, or a booking or hold is added on your side, BedFlow withdraws the last-minute in the next round. A booking on a last-minute simply arrives as a request in the feed and therefore also gets a payment link from you. If you switch off the toggle, all your last-minutes disappear from Relaxy.

An offer disappears a number of hours before it starts, four by default. That threshold is deliberately wider than the minimum advance notice of your own widget: someone who books directly with you pays straight away, but a request via Relaxy comes in through the calendar feed, gets a payment link and then still has the hold period to pay. If the threshold is too short, the session is already underway before the guest has paid.

What you see in BedFlow

  • Every request appears as a wellness booking in Daily → Bookings → Wellness bookings tab, with the usual payment status.
  • You get the same notifications as for a direct wellness booking, marked "via Relaxy" with the Relaxy number.
  • Under Status at the bottom of the window you see the last fetch, any error, the number of active last-minutes and a count for the last thirty days (awaiting payment, paid, expired, time slot was taken, …). If a fetch goes wrong, the tile shows Setup incomplete with the reason below it.

Good to know

  • Requests that were already in the feed at the moment you switch on the integration are not converted: you have already handled those yourself. Only what comes in afterwards gets a payment link automatically.
  • Relaxy requests remain on "Request" in the Relaxy portal; there is no integration for that. You don't need to do anything with them.
  • Relaxy's own Google Calendar connection is blocked by Google (their app is not verified). That is why everything runs through the calendar feed.
  • State in your Relaxy description that the guest will receive a payment link from you after the request and that the session is only final after payment. Relaxy removes web addresses from descriptions, so write the name of your website without a link.

Related