Title: Bookvatio
Author: Krasimir Ignatov
Published: <strong>30 juin 2026</strong>
Last modified: 30 juin 2026

---

Recherche d’extensions

![](https://ps.w.org/bookvatio/assets/banner-772x250.png?rev=3591182)

![](https://ps.w.org/bookvatio/assets/icon-256x256.png?rev=3591182)

# Bookvatio

 Par [Krasimir Ignatov](https://profiles.wordpress.org/krasimirignatov/)

[Télécharger](https://downloads.wordpress.org/plugin/bookvatio.1.4.19.zip)

 * [Détails](https://fr.wordpress.org/plugins/bookvatio/#description)
 * [Avis](https://fr.wordpress.org/plugins/bookvatio/#reviews)
 *  [Installation](https://fr.wordpress.org/plugins/bookvatio/#installation)
 * [Développement](https://fr.wordpress.org/plugins/bookvatio/#developers)

 [Support](https://wordpress.org/support/plugin/bookvatio/)

## Description

Bookvatio is a modern booking plugin that handles two booking types under one roof:

 * `[bookvatio]` — appointment booking for nail studios, yoga, massage, wellness,
   beauty salons
 * `[bookvatio-rooms]` — accommodation booking for guest houses, vacation rentals,
   small hotels

(The legacy `[booknest]` and `[booknest-rooms]` shortcodes are still registered 
as aliases so existing pages keep rendering after upgrade.)

No payment processing, no SMS — just clean, focused email-based bookings with a 
beautiful warm earthy design that you can fully customize from the admin.

#### Core Features

 * **Two separate shortcodes** — appointments and rooms are independent
 * **Multi-step booking flows** — 5-step guided experience for both types
 * **Services, staff, categories** — full CRUD with photos and custom styling
 * **Rooms management** — photo galleries, amenities, free-text room types
 * **Color-coded availability calendar** — available, limited, full, closed states
 * **Working hours per day** — weekly schedule with per-day open/close times
 * **Email notifications** — client confirmation, owner notification, cancellation
 * **Google Calendar integration** — one-way sync of bookings to each staff member’s
   Google Calendar (BYO credentials)
 * **Full translation support** — every customer-facing label is editable
 * **Consent checkboxes** — Privacy Policy + Terms & Conditions with configurable
   URLs
 * **Walk-in bookings** — add bookings manually from the admin

#### Design

 * Warm earthy color palette (fully customizable)
 * Bundled DM Sans (body) + Fraunces (headings) — served locally, no external font
   requests
 * Granular color controls for every UI element
 * Border radius, font sizes, calendar state colors — all configurable

#### Pro version

Bookvatio Pro is a separately-sold commercial add-on that extends the free plugin
with:

 * **Coupons / Discount codes** — percentage or fixed-amount discounts, per-service
   targeting, usage limits, expiry dates, walk-in support
 * **Staff Vacation / Time off** — block date ranges per staff member; the customer-
   facing calendar and slot picker automatically respect the blackouts
 * **Booking Rules** — minimum advance notice (e.g. « must book at least 24h ahead»),
   maximum advance window (e.g. « no bookings further than 60 days out »), global
   blackout dates (holidays, closures)

Pro requires this free plugin to be installed and active. A product page with pricing
and download will be announced once it goes live. In the meantime, if you’d like
early access — pricing details, an invoice, and a download link — email contact@
ignatovdesigns.com.

#### A note on internal naming

Internal class names (`BookNest_*`), database table names (`wp_booknest_*`), option
keys (`booknest_*`), filter/action names, and the REST API namespace (`booknest/
v1`) intentionally use the legacy `booknest` prefix. This preserves settings and
bookings for users upgrading from earlier internal versions. The public plugin name,
text domain, and primary shortcodes (`[bookvatio]` / `[bookvatio-rooms]`) use `bookvatio`.
The old `[booknest]` shortcodes are registered as aliases so saved pages keep working.

#### Privacy

Bookvatio does not phone home, include analytics, or load external assets on the
public site. All fonts (DM Sans and Fraunces) are bundled with the plugin and served
from your own server. See the « External services » section below for the optional
Google Calendar integration.

#### Trademarks

Google and Google Calendar are trademarks of Google LLC. This plugin is not affiliated
with, endorsed by, or sponsored by Google.

### External services

This plugin connects to Google services **only** when a site administrator explicitly
enables the optional Google Calendar integration and connects a Google account. 
With the integration disabled (the default), the plugin makes no external requests.

When enabled, the plugin connects to the following Google services:

**Google OAuth — accounts.google.com, oauth2.googleapis.com**

What it does: Authenticates a staff member’s Google account so the plugin can create
calendar events on their behalf.

When data is sent:
 * During the one-time « Connect Google Calendar » setup, after
the admin clicks the connect button. * When a stored access token expires (typically
every ~60 minutes) and needs to be refreshed.

Data sent: The Google OAuth client ID and client secret the admin entered in BookNest
settings (provided by the admin’s own Google Cloud project), an authorization code(
initial connect) or a refresh token (subsequent refreshes), and the redirect URI
back to this site.

Service provider: Google LLC
 * Terms of Service: https://developers.google.com/
terms/ * Privacy Policy: https://policies.google.com/privacy

**Google Calendar API — www.googleapis.com**

What it does: Creates, updates, and deletes calendar events on the connected staff
member’s Google Calendar. Also fetches the staff member’s email address once during
connect (so the admin UI can label which Google account is connected).

When data is sent:
 * Once during the connect flow, to fetch the staff member’s 
email (userinfo endpoint). * Each time a booking is created in BookNest with a staff
member who has Google Calendar connected (creates the event). * Each time a booking
is updated or has its status changed to « cancelled » (updates or deletes the event).

Data sent: Booking details (service name, staff name, client name, client email,
client phone, client notes, booking date and time) and the staff member’s OAuth 
access token in the Authorization header.

Service provider: Google LLC
 * Terms of Service: https://developers.google.com/
terms/ * Privacy Policy: https://policies.google.com/privacy

## Installation

 1. Upload the plugin zip via Plugins  Add New  Upload Plugin
 2. Activate the plugin
 3. Go to Bookvatio in your admin menu to configure services, staff, rooms, and settings
 4. Add `[bookvatio]` to any page for appointments, or `[bookvatio-rooms]` for rooms(
    the legacy `[booknest]` / `[booknest-rooms]` shortcodes also still work)

## FAQ

### Does Bookvatio process payments?

No. Bookvatio is a « pay on arrival / pay on site » booking system. Payment processing
is intentionally out of scope for version 1.

### Can I translate Bookvatio?

Yes. Every customer-facing label is editable directly in the admin under Labels &
Language. The plugin also ships with a `.pot` file for theme-level translation tools
like Loco Translate.

### What are the shortcodes?

Use `[bookvatio]` for appointments and `[bookvatio-rooms]` for room reservations.
The legacy `[booknest]` and `[booknest-rooms]` are still registered as aliases so
any page saved before the rename keeps working — you do not need to edit existing
content.

### How does Google Calendar sync work?

It’s a one-way sync: bookings created in Bookvatio are pushed to the assigned staff
member’s Google Calendar. You bring your own Google Cloud OAuth credentials (the
plugin does not proxy anything through our servers). Setup takes about 5 minutes.

### Do I need the React build tools?

No. The admin panel ships with a pre-built JavaScript bundle.

## Avis

Il n’y a aucun avis pour cette extension.

## Contributeurs/contributrices & développeurs/développeuses

« Bookvatio » est un logiciel libre. Les personnes suivantes ont contribué à cette
extension.

Contributeurs

 *   [ Krasimir Ignatov ](https://profiles.wordpress.org/krasimirignatov/)

[Traduisez « Bookvatio » dans votre langue.](https://translate.wordpress.org/projects/wp-plugins/bookvatio)

### Le développement vous intéresse ?

[Parcourir le code](https://plugins.trac.wordpress.org/browser/bookvatio/), consulter
le [SVN dépôt](https://plugins.svn.wordpress.org/bookvatio/), ou s’inscrire au [journal de développement](https://plugins.trac.wordpress.org/log/bookvatio/)
par [RSS](https://plugins.trac.wordpress.org/log/bookvatio/?limit=100&mode=stop_on_copy&format=rss).

## Journal des modifications

#### 1.4.8

 * The OAuth callback page’s CSS and JS are now registered with `wp_register_style()`/`
   wp_register_script()` and enqueued with `wp_enqueue_style()` / `wp_enqueue_script()`.
   The `<link>` and `<script>` tags themselves are emitted by `wp_print_styles()`/`
   wp_print_scripts()` (captured via output buffering and inserted in the response)—
   no hand-written `<link rel="stylesheet">` or `<script src>` tags remain in the
   response.

#### 1.4.7

 * Follow-up to 1.4.6: when the input-base rule’s specificity was raised in 1.4.6,
   the icon-padding, focus, placeholder, autofill, and phone-country-picker rules
   ended up lower than the base — which let the base `padding: 10px 12px` override`
   padding-left: 42px` and made the leading icons in the Full Name / Email fields
   overlap with the input text. All five rule groups now match the base-rule specificity
   so the icon padding, focus border, placeholder color, autofill background, and
   phone wrap layout are preserved against theme overrides.

#### 1.4.6

 * Booking form input styles are now resilient to active themes (especially Elementor’s
   kit, Astra, GeneratePress and similar) that style global `input` elements via
   a `:not([type="button"]):not([type="submit"])` selector. The plugin’s own input
   rule now uses the same selector pattern to match their specificity, so customer-
   facing forms keep their colors, padding, and borders regardless of the active
   theme’s global form styles.

#### 1.4.5

 * **Requires WordPress 6.2+** (bumped from 6.0). This release uses the `%i` identifier
   placeholder in `$wpdb->prepare()`, introduced in WP 6.2 (April 2023).
 * Every direct database query now passes the table name through `$wpdb->prepare()`
   as an `%i` placeholder, instead of string-concatenating the result of `BookNest_DB::
   table_*()` into the SQL. Behavior is identical; the query construction is now
   obviously safe to any static analyzer. Removed the file-level `phpcs:disable 
   WordPress.DB.PreparedSQL.*` suppressions that previously documented the safety
   case — they’re no longer needed.

#### 1.4.4

 * Google OAuth callback page no longer uses inline `<style>` or `<script>` tags.
   Page styling moved to `public/css/google-callback.css` (loaded via `<link>`) 
   and behavior moved to `public/js/google-callback.js` (loaded via `<script src
   >`). Success state is communicated through a data attribute on `<body>`.
 * CSS-variable helper (`booknest_css_vars`) now sanitizes all color values via `
   sanitize_hex_color()` with safe defaults, replacing the previous `esc_attr()`
   calls. Prevents any non-hex string from leaking into the generated stylesheet.
 * Rewrote the readme’s « External services » section to follow WP.org’s recommended
   template — each Google endpoint (OAuth, Calendar API) listed individually with
   the data sent, when, and links to Google’s Terms of Service and Privacy Policy.

#### 1.4.3

 * Added contact email (contact@ignatovdesigns.com) to the Pro version section for
   users interested in early access while the public product page is being built.

#### 1.4.2

 * Added a « Pro version » section to the readme describing the Bookvatio Pro add-
   on (Coupons, Staff Vacation, Booking Rules). No external link until the product
   page is live.
 * Cleaned up the « Design » section to reflect 1.4.0 changes (fonts are now bundled
   DM Sans + Fraunces; the Custom CSS textarea has been removed).

#### 1.4.1

 * Room card availability badge now shows free-day count (next 30 days) when no 
   future booking exists, mirroring the existing « X booked » treatment.
 * Bulgarian translations corrected for singular vs plural: `1 свободен` / `2+ свободни`,`
   1 зает` / `2+ заети`. English unchanged (« 1 free » / « 2 free » stay identical).
   Added `freeWordSingular` and `bookedWordSingular` label fields for translators.

#### 1.4.0

 * Bundled DM Sans and Fraunces font files locally (no more requests to fonts.googleapis.
   com). Fixes the WP.org reviewer flag about external requests on the public site
   without opt-in consent.
 * Removed the « Custom CSS » textarea from appearance settings. Arbitrary CSS insertion
   is no longer permitted by WordPress.org plugin guidelines; structured controls(
   colors, font sizes, border radius, etc.) cover the same use cases safely.
 * Removed the font-family picker. Fonts are now locked to DM Sans (body) and Fraunces(
   headings). The 4 alternative font choices (Nunito, Lato, Playfair Display, Montserrat)
   are no longer available.
 * Removed « Powered by Bookvatio » attribution from all client-facing emails. Per
   WP.org guidelines, attribution on user-facing surfaces requires explicit opt-
   in consent which the plugin does not currently provide. The admin panel keeps
   the attribution since admin-facing credits are permitted.
 * Refactored the inline CSS variables output to use wp_add_inline_style() directly(
   no … wrapping in the helper).

#### 1.3.9

 * Pre-submission housekeeping: rebranded source file headers + LICENSE + translation
   template (.pot) from BookNest to Bookvatio; cleaned up dead « Needs Recommendation»
   translation entry left behind after the feature was removed.

#### 1.3.8

 * Added a small bottom margin to the client email row in the admin bookings table
   for better vertical spacing between email and phone.

#### 1.3.7

 * Admin table polish: client email + phone bumped to 16px with black text for better
   readability; status pill padding tightened to 2px vertical.

#### 1.3.6

 * Removed the « Needs Recommendation » (REC) badge, filter button, and detail-panel
   banner from the appointment bookings table. The DB column is preserved (no data
   migration) but the indicator is no longer shown in the admin UI.

#### 1.3.5

 * Notes panel in the booking tables now opens only when the « Notes » button is
   clicked. Status dropdowns and action buttons no longer trigger accidental expansion.
   Pill restyled for better button affordance.

#### 1.3.4

 * Booking tables (appointments + rooms) now surface customer notes — a green « 
   Notes » badge appears next to the client name when notes were submitted, and 
   clicking the row expands an inline panel with the full note text.

#### 1.3.3

 * Removed an outdated hyperlink from email footer credits (now plain text « Powered
   by Bookvatio »). A new product URL will be added once the Bookvatio site is live.

#### 1.3.2

 * Switched menu icon to the built-in WordPress `dashicons-calendar-alt` (no more
   bundled PNG)
 * Admin dashboard now displays primary `[bookvatio]` / `[bookvatio-rooms]` shortcodes
   in the copy-paste shortcut bar and settings panels

#### 1.3.1

 * New Bookvatio logo in admin menu and shell header
 * Primary shortcodes `[bookvatio]` / `[bookvatio-rooms]` (legacy `[booknest]` shortcodes
   still registered as aliases)
 * « Powered by Bookvatio » credit in email footers

#### 1.3.0

 * Renamed plugin from BookNest to Bookvatio (public name + text domain only; internal
   class names, DB tables, shortcodes, and option keys preserved for upgrade safety)
 * New extensibility hooks for add-on plugins (slot/month availability filters, 
   email-row filter, admin tab/walk-in/staff-editor extension registries)
 * Calendar now correctly blocks click on dates marked as closed by integrations
 * CSS polish: tighter phone country picker spacing, consistent admin form input/
   select heights, higher-contrast consent checkbox

#### 1.2.0

 * Added Google Calendar integration (one-way sync, per-staff, BYO credentials)
 * Added custom fields builder for appointments (text, select, checkbox)
 * Fixed template field persistence on save
 * Improved recursive settings merge for sequential arrays

#### 1.1.0

 * Room booking shortcode `[booknest-rooms]`
 * Consent checkboxes with configurable Privacy / Terms URLs
 * Walk-in booking forms

#### 1.0.0

 * Initial release

## Méta

 *  Version **1.4.19**
 *  Dernière mise à jour **il y a 14 heures**
 *  Installations actives **Moins de 10**
 *  Version de WordPress ** 6.2 ou plus **
 *  Testé jusqu’à **7.0**
 *  Version de PHP ** 8.0 ou plus **
 *  Langue
 * [English (US)](https://wordpress.org/plugins/bookvatio/)
 * Étiquettes
 * [appointments](https://fr.wordpress.org/plugins/tags/appointments/)[booking](https://fr.wordpress.org/plugins/tags/booking/)
   [reservations](https://fr.wordpress.org/plugins/tags/reservations/)[room booking](https://fr.wordpress.org/plugins/tags/room-booking/)
   [scheduling](https://fr.wordpress.org/plugins/tags/scheduling/)
 *  [Vue avancée](https://fr.wordpress.org/plugins/bookvatio/advanced/)

## Évaluations

Aucun avis n’a encore été envoyé.

[Your review](https://wordpress.org/support/plugin/bookvatio/reviews/#new-post)

[Voir tous les avis](https://wordpress.org/support/plugin/bookvatio/reviews/)

## Contributeurs

 *   [ Krasimir Ignatov ](https://profiles.wordpress.org/krasimirignatov/)

## Support

Quelque chose à dire ? Besoin d’aide ?

 [Voir le forum de support](https://wordpress.org/support/plugin/bookvatio/)