Your visitors are already on your website. anny bookings lets them book right there — a desk, a court, a meeting room, a guided tour, a lab instrument — instead of being sent off to a separate portal and losing half of them on the way.
Connect your anny account once, then build booking pages the way you build every other page: add a block, pick what it should show, publish. No code. No API keys to copy around. No embed snippets to paste into an HTML widget and hope for the best.
There is nothing to configure in between, and nothing to maintain afterwards: your resources, prices, opening hours and availability stay in anny, and every block on your site follows automatically.
Import your brand colours from anny with one click, or fine-tune every design token — primary colour, backgrounds, text, borders, radii and shadows — with a colour picker. Set them once for the whole site and override them per block where a page needs something different. Each block previews live in the editor, so you see the real widget while you write the page, not a grey placeholder.
anny bookings works with an anny account, and anny has a free plan — so you can set your booking page up end to end before you ever talk to sales. Sign up and manage your resources at anny.co.
Your data stays in the anny region you choose, global (anny.co) or European (anny.eu). The connection uses OAuth 2.0 with PKCE, so there are no API keys in your WordPress install; the access token is stored encrypted and you can revoke it at any time with one click.
This plugin is a front end for anny, the booking platform operated by anny GmbH (Bonn, Germany). It cannot work without it: your resources, availability, prices and bookings live in anny, and the plugin embeds them in your site. Which hosts are contacted depends on the data region you pick on the settings screen — anny.co (global) or anny.eu (European).
Terms of service: https://anny.co/terms
Privacy policy: https://anny.co/privacy
The booking widgets are web components loaded from anny’s CDN. Your visitor’s browser requests annyComponents.umd.latest.min.js from cdn.anny.co or cdn.anny.eu, depending on the selected data region, on any page that contains an anny block, and in the block editor while you edit one. As with any asset request, the visitor’s IP address and browser user agent reach the CDN. No other data is sent by the plugin.
Once loaded, the widget talks to the anny API from the visitor’s browser to show live availability and to take bookings. Anything a visitor enters in a booking form — for example name, e-mail address, and the booking details themselves — is sent to anny, not stored in your WordPress site.
Your site also calls this API from the server while an administrator works in wp-admin: to list your organizations, resources, services, plans and categories for the block pickers, and to read your organization’s brand colours for the “Import brand” button. Those requests carry the access token from the connection below and the ID of the selected organization. They send no visitor data, and they only happen while an editor is using the plugin’s screens.
Clicking “Connect with anny” sends the administrator to anny’s consent screen using OAuth 2.0 with PKCE. The request carries the plugin’s public client ID, the requested scopes, and the callback URL of your site. After approval, your site exchanges the returned code for an access token and a refresh token, which are stored encrypted in your WordPress database and can be revoked from the settings screen at any time. No WordPress user data is transmitted during this exchange.
The plugin is developed in the open at github.com/anny-co/anny-wordpress-plugin — issues and pull requests are welcome there.
The readable sources of the compiled files in build/ live in src/ in that repository, together with the build tooling. Cloning it and running the two commands below reproduces the shipped bundles exactly — they are built with the official WordPress tooling, @wordpress/scripts, with no custom webpack configuration:
npm ci && npm run build
src/index.js and src/components/* build to build/index.js — the block registration and the editor UI.src/admin/brand-import.js builds to build/brand-import.js — the settings screen helper.npm run plugin-zip produces the distributed package.No third-party libraries are bundled: React and the WordPress packages are provided by WordPress itself and are declared as dependencies in the generated build/*.asset.php files.