01 — Quick setup
One script tag
Resevu automatically places the booking button.
<script src="https://www.resevu.com/widget/widget.js"
data-tenant="tenant-slug"
data-language="en"
data-template="oasis"></script>
Start with one script, use your own booking button, choose an exact position or connect through WordPress.
01 — Quick setup
Resevu automatically places the booking button.
<script src="https://www.resevu.com/widget/widget.js"
data-tenant="tenant-slug"
data-language="en"
data-template="oasis"></script>
02 — Your own button
Your website button opens the Resevu booking flow.
<button type="button"
onclick="window.openServiceModal()">
Book now
</button>
03 — Exact placement
Use a placeholder near your treatments, hero or price list.
<div class="resevu-booking-widget">
Book now
</div>
04 — WordPress
Configure your tenant once and add the widget with a shortcode or block.
[resevu_booking_widget]
The embed connects your website to the services, employees, schedules and exceptions configured in your Resevu workspace. Changes to that setup flow through to the widget, so you do not need to replace the website code whenever availability changes.
Replace the example tenant slug, choose the client-facing language and select the widget theme that matches your website. Load the script once, even when several buttons open the same booking flow.
Open the widget on desktop and mobile, select a service and verify that only the expected employees and bookable times appear. If payments or vouchers are enabled for the workspace, test those paths separately before linking the button from your main navigation.
Use a real button with a clear label such as “Book now” when you provide your own launcher. Keep keyboard focus visible and call the Resevu modal from that button; use the placeholder class on a wrapper when Resevu should generate the visible button.
Use the public API or contact us for help with your website.