Everything you need to go from the plugin zip to a first test booking: what your server needs, what activation sets up, a tour of the dashboard, a setup checklist in the right order, and how plans, licences and updates work.
Requirements
- WordPress 6.3 or newer (tested up to 6.8).
- PHP 8.0 or newer.
- HTTPS on the site. Card payments and the guest’s booking page need it.
- Any theme. Elementor is optional: JetBookIn has its own Elementor widgets, and every widget also exists as a shortcode for the block editor or any other page builder.
- Polylang or WPML if the site is in more than one language (optional). JetBookIn speaks English and Greek out of the box.
- Access to your hosting panel to add a server cron job on a live site (see step 11). It takes two minutes and keeps calendar imports, reminders and automatic charges on time.
Tip: install JetBookIn on a staging copy first if you have one. Pro features need a licence there too, the same as on the live site (see Local and staging sites).
Install and activate
- Download the plugin zip (
jetbookin-x.y.z.zip) from your jetbookin.com account. - In WordPress go to Plugins → Add New → Upload Plugin.
- Choose the zip, click Install Now, then Activate.
- A JetBookIn item appears in the WordPress admin menu, near the top. Click it to open the dashboard.
If you see the notice JetBookIn: dependencies are missing, the zip you uploaded is not a release build (for example a copy of the source code). Download the release zip again and upload that one.
What activation creates
Activating the plugin sets up everything it needs. You do not have to create any of this by hand.
- A “Booking confirmation” page, published, containing the shortcode
[jetbookin_confirmation]. Guests land here after paying, and the links in e-mails open the guest’s booking page here. Its ID is saved in Settings → General → Booking confirmation page ID. If that setting already points to an existing page (for example after reactivating), no second page is created. Keep this page published; you can rename it, translate it or design it with Elementor. - Its own database tables for availability, rates, bookings, payments and calendars. Properties and room types are normal WordPress content (so themes, SEO plugins and Elementor work with them); their public addresses start with
/property/and/room/. - Three user roles:
- Booking Manager: can use the JetBookIn dashboard and upload photos, without being a WordPress administrator. Give it to reception staff.
- Housekeeper: sees only the housekeeping list (Pro).
- Property Owner: sees only their own statements and occupancy calendar (Pro, Owners module).
Administrators get access to JetBookIn automatically.
- The calendar feed addresses that Booking.com, Airbnb and other platforms read (one per unit).
The booking pages your guests use (search, results, room booking box) are not created for you, because every site is designed differently. You add them in step 8 of the checklist.
A tour of the dashboard
The whole booking business lives on one screen, JetBookIn in the admin menu. Across the top are six groups; when a group has more than one screen, they appear as a second row of tabs underneath. The same six groups are listed under JetBookIn in the WordPress admin menu, so you can jump straight to them.

| Group | Screens | What you do there |
|---|---|---|
| Today | Home | Today’s arrivals and departures, guests in house, bookings this month, occupancy for the next 30 days, calendar sync health, the latest bookings, New reservation, and warnings such as possible double bookings or payments to check. |
| Calendar | Rates & Availability, Seasons, Channels | Prices, minimum stays and closed dates (the rates grid), the per-room calendar where you drag reservations, named seasons, and calendar sync with Booking.com, Airbnb and others. |
| Bookings | Reservations, Housekeeping, Reviews | Every booking with its guest, payments and messages. Housekeeping appears only while that module is on; Reviews is Pro. |
| Revenue | Promotions, Reports, Payments, Owners, Invoices | Promotions and extras (Pro), reports, the payments list. Owners and Invoices appear only while those modules are on. |
| Property | Property | Your properties, room types, units and rate plans, with photos, amenities, taxes and policies. |
| Settings | Settings, E-mails | General settings, payments, e-mails, calendar sync, modules, licence and system. E-mails holds the texts of every guest and staff e-mail. |
A few things work everywhere in the dashboard:
- Property switcher. With more than one property, a menu at the top left lets you choose one property or All properties. Screens then show only that property’s rooms. With one property its name is shown instead.
- View site ↗ at the top right opens your website in a new tab.
- Side panels. Adding or editing something (a room type, a rate plan, a season) opens a panel on the right. Nothing is saved until you click Save.
- Red and amber banners at the top tell you about things that stop guests from booking, for example Guests cannot book 2 rates online (a rate asks for a deposit but no payment method is set up), Background jobs are not running on time, or Guests can’t book far ahead (your prices run out soon).
- After an update, a dashboard left open in a browser tab says JetBookIn was updated to … Reload the page to use the new version. Click Reload.
Setup checklist: from first property to first test booking
Follow these steps in order. For a small property (a villa or two or three apartments) it takes about an hour; for a 20-room hotel with several room types and rates, plan an afternoon.
1. Check the currency
Open Settings → General and check Currency (ISO code). It is EUR by default. Change it before you enter any prices (for example GBP or CHF), then click Save settings. Bookings are always charged in this currency.
2. Add your property
Open Property and click + Add property. Fill in at least the name, phone, e-mail, address, country, check-in and check-out times and, if your country requires one, the registration number. Then check the Taxes & fees tab. Every field is explained in Property, rooms and units.
3. Add your room types
Click + Add room type once for each kind of room you sell: “Deluxe Sea View Suite”, “Two-bedroom apartment”, “Villa Elia”. Give each one its photos, amenities, beds, size and, on the Guests & fees tab, how many guests it takes. When you save a new room type, JetBookIn creates it with 1 unit and a standard rate, so it can be priced straight away.
4. Add one unit per real room
A unit is one physical room, apartment or villa that you sell. A hotel with eight identical double rooms has one room type (“Double room”) with eight units (“Room 101” … “Room 108”). Three different apartments are usually three room types with one unit each. On each room type’s card click + Add unit and rename the units to your room numbers. Availability and calendar sync are counted per unit.
5. Set up your rate plans
The automatic Standard rate is paid in full at booking and has no cancellation fee. Open it with Edit and give it your real cancellation policy and deposit. Add more rates if you want, for example a flexible rate with a 30% deposit and a cheaper non-refundable one. See Rate plans.
6. Put prices on the calendar
A room type is bookable only on dates that have a price. Open Calendar → Rates & Availability, click Bulk edit, choose your dates, rooms and rates, and enter the price per night and the minimum stay. Or create Calendar → Seasons (High season, Low season…) with their prices. Then switch on Settings → General → Keep the calendar open so dates never run out. See Rates & Availability.
7. Set up payments
Open Settings → Payments and set up the methods you use: Stripe, Viva Wallet, a Greek bank’s card gateway (Cardlink / Nexi / Worldline), PayPal, bank transfer or paying at the property. Leave them in Test / sandbox mode for now. See Payments.
Important: if a rate asks for a deposit and no payment method is set up, guests cannot book that rate online; the dashboard shows a red banner until you fix it.
8. Put the booking engine on your website
Create a page, for example Book, and add the search bar and the results to it: with Elementor drag the widgets from the JetBookIn category; with any other editor use the shortcodes [jetbookin_search] and [jetbookin_results]. Room pages get a booking box with a calendar. Then enter that page’s ID in Settings → General → Checkout page ID, so Reserve in a room’s booking box continues there. All widgets and options are in Shortcodes and widgets.
9. Connect your platforms
If you also sell on Booking.com, Airbnb, Vrbo or Expedia, open Calendar → Channels and connect each unit to each platform in both directions, so a booking anywhere closes the dates everywhere. See Calendar sync.
10. Check the e-mails
On the Settings screen, section E-mails, set the sender name and address and the header colour. Then open the E-mails screen (the second tab of the Settings group) and read through the guest e-mails. If e-mails do not arrive, send them through your mailbox under Outgoing mail (SMTP) in the same section. See E-mails.
11. Add the server cron job (live sites)
Calendar imports, reminders and automatic balance charges run in the background. WordPress only runs background tasks when somebody visits the site, so on a quiet night they can be late. Open Settings → System: the Background jobs card shows whether jobs run on time and the exact line to give your host, for example:
*/5 * * * * cd /path/to/wordpress && wp jetbookin run-jobs --quiet
Add it in your hosting panel’s cron jobs section, every 5 minutes. Without WP-CLI on the server, a cron job that opens your site’s wp-cron.php address every 5 minutes also works (the card shows that address too).
12. Activate your licence
If you bought Pro or the Greece pack, open Settings → License, paste the key and click Activate. See Activating your licence.
13. Make a test booking
- With payments still in test mode, open your site in a private browser window and book a room as a guest would. Use the payment provider’s test card.
- Check that the booking appears in Bookings → Reservations and on Today.
- Check that the guest’s confirmation e-mail and your New booking e-mail arrived.
- Check that the dates are closed in Calendar → Rates & Availability and, after the next sync, on your platforms.
- Cancel the test booking, then switch the payment methods to Live.
Plans: Core, Pro and the Greece pack
JetBookIn comes in two plans, with country packs on top of either.
Core
The free base. A site on Core takes direct bookings from start to finish: properties, room types, units and rate plans; the rates and availability grid, seasons, gap filling and the rolling calendar; two-way calendar sync; all payment methods with deposits; the room calendar and reservations; the guest search, results and booking widgets. These modules are part of Core:
- Guest booking management: guests view, pay and cancel their booking online.
- Cancellation policies: penalty rules per rate plan with automatic refund calculation.
- GDPR tools: consent, data export and erasure, automatic anonymisation.
- E-mail templates: editable guest and staff e-mails per language, reminders.
Pro
Everything in Core plus these modules:
| Module | What it adds |
|---|---|
| Tourist taxes | ΤΑΚΚ, city or tourist tax, VAT and the municipal fee calculated on every booking and shown in the price. |
| Promotions | Early bird, last minute, long stay, special offers and promo codes. |
| Extras | Bookable add-ons such as transfers, breakfast or late check-out. |
| Automatic balance collection | Save the card at booking and charge the balance before arrival. |
| Guest currencies | Guests see prices in their own currency (daily ECB rates); payment stays in yours. |
| Housekeeping | Room status, the daily cleaning list and a phone page for housekeepers. |
| Owners & statements | Owners, commissions, monthly statements and an owner page. |
| Platform reservations | Complete the dates-only stays that platform calendars send with the guest, what they paid, commission and payout. |
| Channels & commission | Reports per platform: nights, revenue, commission and what direct bookings saved you. |
| Calendar sync alerts | An e-mail when a platform calendar has not synced for some hours, and when it works again. |
| Guest reviews | Verified reviews after check-out, with moderation, replies and review stars for search engines. |
| Guest ID details | Guests fill in their nationality and ID or passport number (Greek guests: ΑΦΜ) for the tax office’s stay declaration. |
| Receipts & invoices | Numbered receipts, invoices and credit notes (off by default; not sent to myDATA). |
The card guarantee (the guest saves a card on Stripe when nothing is paid upfront) is also a Pro feature.
Greece pack Greece pack
Rules that apply in only one country come as a pack for that country, on top of either plan. The Greece pack adds:
- Greek compliance: the ΤΑΚΚ monthly report, accountant exports and the monthly e-mail to your accountant.
- myDATA (AADE) invoicing: issuing receipts, invoices and ΤΑΚΚ documents directly to AADE myDATA.
Both are off by default. Without the pack the ΤΑΚΚ is still added to guest prices (with Pro’s Tourist taxes) and registration numbers are still shown. See Greece.
A screen whose feature your licence does not include still appears in the menu with a Pro or Add-on badge. Opening it says This is a JetBookIn Pro feature, with See plans and Enter license key.
Switching modules on and off
Settings → Modules lists every feature grouped by area (Guests, Payments, Revenue, Operations, Compliance & tax, Country packs), each with what it does, its tier (Included, Pro or the country pack) and a switch. The line at the top says how many modules are on.

- Switch off what you do not use. Its screens and settings disappear; nothing is deleted. Switching it back on brings everything back.
- When a module is on, the button on its right takes you to where it is set up, for example Set up in Property → Rate plans for cancellation policies, or says Nothing to set up.
- A module your licence does not cover has a greyed-out switch and says Needs a Pro license or Needs the Greece pack on your license, with See plans.
- Country packs for countries where you have no property are hidden; Show packs for other countries lists them.
Activating your licence
Core works without a licence key. For Pro or a country pack:
- Open Settings → License. Only WordPress administrators can change the licence; Booking Managers see its status.
- Paste your key in License key (it looks like
XXXX-XXXX-XXXX) and click Activate. - The card shows the status (Active), the plan (Pro plan), the date until which you get updates and your add-ons (for example Add-ons: Greece pack).

Once a key is active the card offers:
- Check now: asks jetbookin.com for the licence’s current state (useful right after renewing or upgrading). The site also checks by itself once a day.
- Change key: activate a different key. The old key’s slot for this site is freed.
- Deactivate on this site: removes the licence from this site so you can use it on another one.
- Renew license and More sites or Pro: open the jetbookin.com shop with your key already filled in.
Possible messages when activating:
| Message | What to do |
|---|---|
| This license key is not valid. | Check for typos; copy the key again from your jetbookin.com account. |
| This license is already used on its maximum number of sites. | Deactivate it on a site you no longer use, or upgrade to more sites. |
| This license has been disabled. | Contact JetBookIn support. |
| Could not reach the license server. | Your server could not connect to jetbookin.com. Try again later; if it keeps happening, ask your host whether outgoing connections are blocked. |
| The license was activated for another address | The site moved to a new domain (or was copied). Activate the key again on the new address. |
When a licence expires
A licence runs for its paid period. What happens around the end date:
- 30 days before, the Today screen says Your JetBookIn license expires on …, in N days. Renew it to keep your Pro features and get updates.
- On the expiry date, updates stop. Pro features and add-ons keep working for a 14-day grace period, so a failed renewal payment does not break the site overnight. Today says Renew by …, or Pro features turn off and the site continues on the free Core.
- After the 14 days, Pro features and add-ons switch off and the site runs on Core. Bookings, the calendar, payments, calendar sync and the basic e-mails carry on. Nothing is deleted: your promotions, extras, tax settings and everything else are kept.
- Renewing (the Renew license button) turns everything back on at once. Click Check now on Settings → License if it does not happen within a few minutes.
Important: with Tourist taxes off, guests are no longer charged ΤΑΚΚ, VAT or other fees, but in Greece you still owe the ΤΑΚΚ for every night. Today shows a warning for Greek properties in that situation.
A licence that is disabled or refunded loses Pro features straight away, without the grace period.
If your server cannot reach jetbookin.com for a while (an outage, a firewall), nothing changes: the last confirmed licence stays valid for 45 days. Only after that does the status read Could not be verified for a long time and Pro features pause until the site can check in again.
Updates
- Updates arrive in WordPress like any other plugin’s: Dashboard → Updates or Plugins shows the new version and you click Update now (or switch on automatic updates for JetBookIn).
- They come from jetbookin.com and need a licence that is active and not past its expiry date. An expired licence keeps the version you have; it does not receive new ones.
- Database changes run by themselves the first time the new version loads. You do not need to deactivate or reactivate.
- Read what changed in the changelog before updating a busy site, and update outside the morning check-out rush.
Local and staging sites
A local or staging copy is a site like any other: the free Core works there without a key, and Pro features and add-ons need a licence, whatever the address (localhost, .local, staging. and so on). Two ways to test Pro on a copy:
- activate your key on the copy while you test, then Deactivate it there and activate it on the live site – a licence for one site can move as often as you need;
- use a plan with room for more than one site, so the copy and the live site are licensed at the same time.
Tip: when you copy a staging site to the live domain, the licence does not move with it automatically (it is tied to the address). Open Settings → License on the live site and activate the key there.
Deactivating and uninstalling
- Deactivating the plugin stops its background jobs and takes the booking widgets off your pages. All data stays; reactivating brings everything back.
- Deleting the plugin keeps your bookings, rates and calendars in the database unless you ticked Settings → System → Uninstall → Delete all JetBookIn data (bookings, rates, calendars) when the plugin is deleted. It is off by default. Tick it only when you really want everything gone, and export what you need first.
Next steps
- Property, rooms and units: every field of your property and room types.
- Rates and availability: rate plans, cancellation rules, the grid, seasons and promotions.
- Payments: Stripe, Viva Wallet, Greek bank gateways, PayPal, bank transfer, deposits and refunds.
- Calendar sync: Booking.com, Airbnb, Vrbo, Expedia and Google.
- Shortcodes and widgets: the booking engine on your pages.
- Bookings and guests: reservations, the room calendar and messaging guests.
- E-mails, Reports and tools, Settings and advanced.
- Greece: ΤΑΚΚ, ΑΜΑ, stay declarations and myDATA.
Questions
Do I need Elementor?
No. Every Elementor widget also exists as a shortcode, which works in the block editor and in other page builders.
Can I try Pro before buying?
Yes: every Pro feature is switched on in the demo hotel on jetbookin.com, where you can book, pay with Stripe test cards and look around the dashboard. On your own site Pro needs a licence, also on a local or staging copy (see Local and staging sites).
I deleted the Booking confirmation page by mistake. What now?
Create a new page with the shortcode [jetbookin_confirmation] (or the Booking Confirmation widget), publish it, and enter its ID in Settings → General → Booking confirmation page ID. You find a page’s ID in the address bar when you edit it (post=123).
Why does a new room type not appear in search results?
It has no prices yet, or its visibility is Draft. Add prices in Calendar → Rates & Availability and check Visibility on the room type’s Details tab.
Can my receptionist use the dashboard without being an administrator?
Yes. Give their WordPress user the Booking Manager role. They can work with bookings, rates and the property, but cannot change the licence or payment provider keys.
What happens to bookings if my licence expires?
Nothing. Bookings, payments, the calendar and calendar sync keep working on Core. Only Pro features switch off, 14 days after the expiry date, and they come back when you renew.
I moved the site to a new domain and Pro features stopped.
The licence is tied to the site’s address. Open Settings → License on the new address and activate the key again. If the old site still exists, deactivate it there first so it does not use one of your site slots.