drupal availability calendar

How to Add a Drupal Availability Calendar for Property Booking Website

Looking to add a Drupal availability calendar with color-coded available and unavailable days, automatically synced to all your listings?

In this Drupal availability calendar tutorial, we’re going to tell you about an easy way to do that by connecting our BNBForms.

Even more so, in this guide, we’ll show you how to add a fully-featured, mobile-friendly booking widget to your hotel or vacation rental website on your Drupal, which will display availability calendars and enable clients to book accommodation directly through your website.

By the way, you might be on any Drupal hotel booking theme, our tutorial and solution will certainly work for your needs.

Note: this tutorial is not for hourly appointment bookings and availability calendars; it’s geared at short-term rental property owners who run a website on Drupal and want to automate bookings and display real-time accommodation availability in a property.

So how do you create a Drupal reservation system with BNBforms? Before we move on, you might want to know what BNBForms is and what benefits it can deliver.

About the BNBForms service

BNBForms is a web-based platform for short-term rentals, which enables property owners to list their homes or hotel rooms, turn on direct bookings, manage availability and pricing, connect to third-party online travel agents, keep records of clients and payments, and even more from one account.

The best use case of BNBForms is one property owner with any number of accommodations, no matter their type, inns, hotel rooms, trailers, campsites, etc.

We have customers who also run pet hotels using BNBForms!

Curious to read brief history of how we started BNBForms?

You can connect BNBForms to any existing domain and website, whether the latter is on Drupal, Wix, WordPress, or any other website builder.

The most attractive benefit of using BNBForms for property owners is the absence of any extra commissions.

No fees on the number of bookings taken, no fees on the number of properties, no fees imposed on clients. For using the service, you need to pay as little as $16 per month, whether you have a modest inn or an empire of luxurious homes!

And by the way, the first month of using BNBForms is free. No doubt, you’ll have plenty of time to test the waters, and chances are, you’ll get your first bookings during the trial period.

Basically, by signing up for BNBForms, you’ll get your own account with all the management tools. 


How does it deal with the most crucial settings for running property bookings on your Drupal hotel booking theme? 

How to get started with BNBForms

Create an account with BNBForms and start adding your accommodations with images, capacity, pricing, details, amenities, and more.

Then set up booking rules, payment methods, seasonal pricing variability, and more. Optionally set up a built-in channel manager to get all bookings in-sync with external platforms.

How to manage property rates

No problem, we provide the most possible flexible level for creating your pricing strategy.

You can base it on how long the guest is staying, the number of guests, amenities’ availability, and, moreover, enable the use of custom coupons.

Various types of taxes and fees can be added to the base rental property cost.

How the channel manager works

BNBForms supports the iCal file format that allows for the automatic real-time events exchange between different calendars, including those from OTAs.

It makes it easy to then connect and sync all your calendars and properties, simultaneously receiving bookings from various channels and calendar application (e.g. Google calendar, Apple calendar).

How can clients pay the rental cost via your Drupal website

Without any extra cost, you can enable PayPal, 2Checkout, Stripe, Braintree, Bambora, direct bank transfer, and payment on arrival methods. Moreover, you can enable deposit payments to allow guests to pay just a certain amount of money instead of the full cost.


How the booking widget generated by BNBForms will look on your website

It will be a one-page, mobile-friendly booking widget. It ships with the Book button, which in most cases is always visible on the website. When clicked, this button will load the booking widget with the standard property search filters, such as the number of adults/children, and the arrival/departure fields.

You can see it in action on the BNBForms demo page.

Is it difficult to connect Drupal to BNBforms?

Not at all, you simply need to copy and paste the code. For this code to be generated automatically, you need to set up the system, which takes button clicks.


What it takes to configure the booking settings in the BNBForms account, read in the BNBForms dashabord tutorial.

How you can tailor the look of the booking widget

To make it stand out or better meet your branding needs, you can customize all the colors and change or add the fields (custom search filters) in the booking widget for your Drupal website.

How to manage bookings

The BNBForms services provide you with several dashboards, where you’ll be able to look at your business performance at different angles.

  • View bookings in the dashboard availability calendar.
  • View all payments and customers.
  • Edit booking details.
  • Add bookings by hand.
  • Get and analyze the stats for your business performance based on your data within a certain period of time.

To work with the data you receive on your clients and bookings, BNBForms allows you to download all the reports in CSV formats to study with other handy tools.

How to set up email notifications

BNBForms supports all types of email notifications, namely, you can set all follow-up emails, such as booking confirmation or booking cancelation, to be sent automatically to your guests and staff.

How to add a Drupal availability calendar for your property booking website

After all the preferences are set, you can follow the guide in the BNBForms dashboard. You can be on any Drupal hotel theme.

So here are the steps to connect BNBForms to your Drupal website.

  1. Go to Manage > Structure > click Block Layout.

2. Navigate to Block Layout > choose Custom block library.

3. Custom block library > click Add custom block.


4. Add a custom block > click on Basic block.

5. Add the Basic block custom block > choose Full HTML in Text format > click Source in Body menu > paste code > click Save.

6. Go to Manage > Structure > Block Layout > choose a block area that will be displayed on all pages and located at the bottom.

In our example below it’s a Bottom area > click Place block > find by name your block > click Place.

7. Configure block > click Save block.

8. Select Block layout > click Save blocks at the bottom of the page.

That’s it! 

Go to your live website to see the Book Now button that should have already appeared.

bnbforms-drupal-10 book now button

Let’s now see how it works on your website, meaning, what it takes for your customers to book a property and pay online.

First of all, guests specify their search parameters. Remember that your widget might look different since you can customize colors and form fields.


Next, they browse available rooms and see their details.

bnbforms-drupal-14 booking details

By opening details of particular rooms, guests can see availability of each of them in a color-coded availability calendar.


Next, guests can choose rates and other details available for the property they have already chosen.

bnbforms-drupal-17 room rates

On the checkout page, it’s easy to view all the details of the booking and payment, including taxes and fees.

bnbforms-drupal-18 checkout page

Time to choose the payment method and make a payment online on your Drupal website!

bnbforms-drupal-20 final booking price

Voila! Upon a successful payment, the system records both the booking and payment, sending all the needed follow-ups.

As you can see, adding a Drupal availability calendar for your property booking or accommodation website is an easy thing to do with the BNBForms booking engine for any website. But don’t make sweeping conclusions, register a free trial with our service to get the idea of how it works.