Requirements
- A self-hosted WordPress site (version 6.0 or newer recommended).
- PHP 7.4 or newer.
- A Gnarly Host account — create a free account to download the plugin.
- A connected PMS (Guesty or Hospitable) to sync your listings.
1. Install the plugin
-
Download the plugin.
Log in to your Gnarly Host account and go to
My Account → Downloads.
Click Download to get the
wp-booking-engine.zip file. The plugin is free for all members.
-
Upload it to WordPress.
In your WordPress admin, go to Plugins → Add New → Upload Plugin, choose the
.zip file you downloaded, and click Install Now.
-
Activate the plugin.
After it installs, click Activate Plugin. You'll see a new
Gnarly Booking Engine menu in your WordPress sidebar.
Tip: If your upload fails with a size error, your host may limit upload size.
Increase upload_max_filesize / post_max_size, or upload the plugin via SFTP
into wp-content/plugins/ and activate it from the Plugins screen.
2. Activate your license
A license key connects the plugin to your subscription and sets how many listings you can publish.
-
Get your license key.
In your Gnarly Host account, open
My Account → License Keys.
If you don't have one yet, click + Add a key to choose a plan and subscribe.
Your key looks like
GNARLY-XXXX-XXXX-XXXX-XXXX.
-
Enter it in the plugin.
In WordPress, go to Gnarly Booking Engine → License, paste your key, and click
Activate License.
-
Confirm activation.
The screen will show your plan and listing limit. A license can be active on one site at a time —
to move it, deactivate it on the old site first (or contact support to reset it).
Free tier: You can run the plugin on the free tier without a paid key (up to the free
listing limit). Add a paid license anytime to publish more listings.
3. Set up & configure
-
Connect your PMS.
Go to Gnarly Booking Engine → Settings and choose your provider
(Guesty or Hospitable). Enter your API credentials / access token to connect.
-
Sync your listings.
Once connected, run a sync to import your properties, photos, pricing, and availability.
Re-sync anytime your listings change.
-
Choose your payment method.
Under Settings, pick how guests pay or book: Stripe, GuestyPay, or
Request to Book (for Hospitable). Enter the matching keys for your chosen method.
-
Set your branding.
Adjust colors, logo, and display options so the booking engine matches your site.
4. Add the booking engine to a page
Place the booking engine anywhere on your WordPress site using these blocks/shortcodes:
[hostapi_search_bar] — the destination + date search bar.
[hostapi_listing_results] — the searchable listings grid + map.
[hostapi_listing_details] — a single listing's detail + booking widget.
Create a page (e.g. Book Now), add the shortcode(s), and publish. Guests can now search,
view listings, and book directly on your site.
Troubleshooting
- "This link has expired" / license errors: Re-copy your key from My Account → License Keys and re-activate.
- Listings not showing: Confirm your PMS is connected and you've run a sync; check that listings are active in your PMS.
- License says "in use elsewhere": The key is active on another site. Deactivate it there, or contact support to reset.
- Availability looks wrong: Re-sync; availability reflects your PMS calendar at last sync.
Support
Need a hand? We're here to help.
Contact Support
Go to My Account