I am getting this error: “Error during inserting into BD … DB:Duplicate entry NN-NNNN-NN-NN 00:00:00 for key booking_id_dates. How to fix it ?

1) This issue can happens in Booking Calendar Business Small or higher versions, if this you have activated using "Check in/out times" (check more about this feature here) at the Booking > Settings General page and incorrectly configured "Check in/out times fields" (usually these fields are empty during this issue.
How to fix.

- You need to be sure that the check in time is older than check out time. For example: Check in: "14:00" and check out: "12:00"
- Or you can simply deactivate "Check in/out times" option, if you do not need to use change-over days.

2) Also this issue possible if you have incorrectly configured time(s) fields at the Booking > Settings > Form page.
You can try to remove any times fields from the Booking > Settings > Form page, or try to reset booking form to one default "Form templates" (you can select one predefined form template at the toolbar, and then click on "Both" button, its will reset your form. After this you can click on "Save changes" button to save these changes.
Otherwise, please use shortcode generator at the right side of the Booking > Settings > Fields page for the fast and correct creation of booking form fields.

3) Other workaround. We do not recommend todo this point, because dropping indexes (as in bellow instruction), will significant impact to speed of loading.
So for fixing this issue, please open the phpMyAdmin or similar tool for the working with DB
and execute this SQL command:

ALTER TABLE bookingdates DROP INDEX booking_id_dates

or this (depend from the prefix at your DB tables):
ALTER TABLE wp_bookingdates DROP INDEX booking_id_dates

Calendar is not visible, and I have Error: jQuery(…).datepick is not a function.

Issue
If you have the situation that calendar is not visible in your booking form but all other fields is visible.

And you are have JavaScript error, similar to this:

Error: jQuery("#calendar_booking" + bk_type).datepick is not a function

or this:
TypeError: jQuery(...).datepick is not a function

Reason
Reason of this issue is loading of jQuery library 2 times in your website.

The loading process is following:
1) Firstly is loaded the standard jQuery (ver 3.6) from WordPress (and its fine):

<script type='text/javascript' src='../wp-includes/js/jquery/jquery.js?ver=3.6.0' id='jquery-core-js'></script>

2) Then load the scripts of the Booking Calendar, where is defined all functions, including the datepick funcion.
3) Then your theme (or some other plugin) load the jQuery again.
<script type="text/javascript" src="..../wp-content/themes/my_custom_theme/js/jquery.min.js"></script>

This last load of the jQuery is overwrite all previously defined variables and we have this error.

Solution.
Please open the header.php (or footer.php) or functions.php file of your theme and comment the loading of the jQuery, to prevent load it for the second time.
Otherwise please contact support of your theme (or plugin) relative loading of jQuery library  in correct  way,  relative to  WordPress best  practice and not load it directly in the header or footer files.

Warning! Booking calendar for this booking resource are already at the page. Why doesn’t the booking calendar widget show on my page?

This issue is relative of showing the several booking calendars (booking forms) of the same booking resource at the same "visible" page. Its possible to show only one calendar (booking form) of the specific booking resource at one visible page. You will have no problems to show the calendars (booking forms) of the different booking resources at the same page.

At the Booking Calendar Free version is available only one default booking resource, so its mean that any calendars (booking forms) in this version is belong to the same booking resource. And thats why its not possible to show several booking calendars (booking forms) at the same visible page.

This info is relative to the several booking calendars (booking forms) inside of the content of the page or inside of the content of page and visible booking calendar widget (in this case you are need to deactivate the booking calendar widget, or add the exception of showing the widget at this page).

Calendar is not visible, but booking form fields are showing?

You can have this issue because of having some JavaScript error(s) at your website.
Probably some other plugin or actual theme generate JavaScript error. That's why the calendar do not show.

To recheck your page for JavaScript errors, open the browser console (usually to see JavaScript error(s) press Ctrl + Shift + J, check more here ).

If you will see the JavaScript error, you can see in description of the error, what plugin (or theme) generate this error. Otherwise you can check for some other known JavaScript errors in other other troubleshooting instructions.

You can also try to check about some conflict with some active plugin or actual theme.
Deactivate one by one all your active plugins at the WordPress > Plugins menu and test about the issue during each deactivation.
If its not help, please deactivate your active theme and active the default WordPress theme.

I can not make booking because booking request is sending for unlimited time and status bar show Ajax sending error. (Error: 500 Internal Server Error)?

Firstly you need to check access to the wpdev-booking.php file. If booking plugin is installed to the https://www.myserver.com/wp-content/booking/wpdev-booking.php so copy that link to your browser and check access. Its have to show this error: Fatal error: Call to undefined function get_option(). If you see something like:Error 500 Internal Server Error, so then you need to set access to the wpdev-booking.php file. In most case you just need to set atribute to that file as 755 using your FTP client, sometimes is needed editing .htaccess file. So contact your administrator or check .htaccess file by yourself.

Sometimes wp-content and/or wp-content/plugins and/or wp-content/plugins/booking directories and/or file wp-content/plugins/booking/wpdev-booking.php had permissions set to 777. So its also can make this issue. Please change permissions on those directories and file to 755 and it have to work.

I can not see captcha at the booking form. How to show a captcha ?

1) Go to the general booking settings page and check ON use CAPTCHA check box and save a page.
2) If you use Standard (free) version skip this step, otherwise go to the form fields customization page add captcha shortcode to the customization form:

<p>[captcha]</p>

3) Check write permission at the folder YOUR_WORDPRES_SERVER/wp-content/plugins/booking/js/captcha/tmp/. This folder have to be write-able.

4) Check that your server was configured for using 2.0 GD library.
Reason.
The cause is that you do not have the version 2.0 GD library loaded in PHP which defines this function, which is used for the captcha in this plugin.

Checking
Use this PHP code to view what extensions you have loaded on your hosting account.

print_r(get_loaded_extensions());
print_r(var_dump(gd_info()));

Just create a text file with the these lines above in your public_html folder (or wherever your web root is), name it with a .php extension like "test.php" and then run it by using your web browser like "https://www.yourdomain.com/test.php "

This does not write correct HTML but will show you the info you need. (Just do a View/Source on your browser if you want a nicer looking format.) Look for text like "[some number] => gd". If you don't see this, you do NOT have the GD library loaded.
Next you want to look for the version number. Something like: ["GD Version"]=> string(27) "bundled (2.0.28 compatible)"
This needs to say version 2.0 or later.

If you do not see GD version 2.0, you must get your hosting provider to install or upgrade your system.

LEARN MORE:
Learn more about the GD library:
https://www.php.net/manual/en/ref.image.php

Learn more about this function:
https://www.php.net/manual/en/function.imagecreatetruecolor.php

5) If you are using Cache plugin (like "WP Super Cache" ), please deactivate it or add the exception to the page with booking form to do not cache this page.

4) Finally, please try to deactivate one by one all your active plugins at the WordPress > Plugins menu. Then retest it again.
If its not help, please deactivate your active theme and active the default WordPress theme. And then retest it again. May be there exist some conflict with some active plugin or actual theme and just need to find the reason of that issue.

If you are still will have this issue, please recheck the error.log in your server configurations to be sure in a reason of that issue.

Kind Regards.

I am get ‘Error 500 Internal sever error’, when click on activate plugin link?

1) This error can be at some servers of 1&1 hosting, or may be at some other ones.
For fixing this issue, please add this line to their .htaccess file:

AddType x-mapp-php5 .php

2) Also please try to deactivate one by one all your active plugins at the WordPress > Plugins menu. Then retest it again.
If its not help, please deactivate your active theme and active the default WordPress theme. And then retest it again. May be there exist some conflict with some active plugin or actual theme and just need to find the reason of that issue.

3) If the previous solutions will not help, please recheck your error.log file from your server configuration (please contact your server administrator or support of the hosting company, if you will have troubles with searching of this file) to be sure in a reason of that issue.

Plugin not sending emails. How to fix it ?

  1. Check SPAM / JUNK folder in your mail system.
  2. Check that you have activated and configured the email templates at the Booking > Settings > Emails page.
    • For each email template (switch tabs at toolbar) recheck that you have correct email addresses.
    • Option "Enable / Disable" at the specific email template must be checked.
    • Field "From" at the specific email template must to have the same website DNS as your website

      Sometimes mail servers block emails, if the address "From" different from the domain of website, from where this email was sending. Please open the Booking > Settings > Emails page and recheck that field "From" have the same email as your website domain. For example: info@your-server.com and not like this your_email@gmail.com, where your-server.com it's your website domain.

    • If you are using paid versions of Booking Calendar, please be sure to configure the email field at the Booking > Settings > Form page, like this [email* email]. Its default primary email field for booking form! Please do not use other names for this email field. For example: Email (required):[email* email]
    • Optional. Try to set for field "To" in the "New (admin)" email template the same email that you was used in field "From" at this email template page.
  3. This is most common reason of not receiving emails!

    In most situations you will need to install  and configure some SMTP plugin.
    We can recommend to install and configure the WP Mail SMTP plugin, but you can  search  and install  any other SMTP plugin: https://wordpress.org/plugins/search/smtp/.

    Why you need to have SMTP plugin?
    SMTP plugins have to fix your email deliverability by reconfiguring WordPress to use a proper SMTP provider when sending emails.This is a problem for a lot of WordPress sites because by default, WordPress uses the PHP mail function to send emails generated by WordPress.The issue is that most WordPress hosting companies don’t have their servers properly configured for sending PHP emails. 
    The combination of two causes your WordPress emails to not get delivered.

    It also  can  be a reason why  your emails are marked as spam.
    Please check more here.

    I need help with SMTP plugin configuration.
    Because such plugins was developed by other companies and persons, please contact support of specific SMTP plugin about help in correct configuration of specific SMTP plugin.

  4. Please try to test sending of emails by creation of new bookings at front-end side of your website (do not test it from sending test emails at Booking > Settings > Emails page).
  5. Check that your PHP mail function is working correctly. You can open your login page and try to retry the password, then check if you received email.
  6. If the issue still will exist , please try reconfigure Subject and Content of the email template. Make it simpler. May be because of some server restrictions, you are having blocking of sending these emails.
  7. Otherwise you can try to use some other SMTP plugins:

    WP Mail SMTP (plugin support: https://wordpress.org/support/plugin/wp-mail-smtp/ )
    Post SMTP mailer (plugin support: https://wordpress.org/support/plugin/post-smtp/ )
    SMTP Mail (plugin support: https://wordpress.org/support/plugin/smtp-mail/ )

  8. Finally, please recheck your error.log and mail.log in your server configuration, about any relative errors.
    If you having troubles with checking these files, please contact support of your hosting company about this.

Search results don’t show any results – What’s the issue?

  1. Check Cache Plugins: Start by examining your cache plugins, such as "WP Super Cache" or "W3 Total Cache."
    If you're using any of these plugins, consider turning them off or ensuring they don't cache pages with booking forms.
    You can achieve this by adding an exception to the pages with booking forms, search forms, or search results.
    This step helps prevent caching-related problems.
  2. Review Shortcode Placement:
    Double-check where you've placed booking forms using the shortcode for booking form: [booking ...].
    Ensure that you've inserted these shortcodes into the content of posts or pages rather than in sidebars or widgets.
    Make sure you're using the correct shortcodes for either the (main) parent resource (the one with capacity) or single booking resources (where capacity = 1).
    If you've mistakenly used shortcodes for child resources, the associated bookings won't appear in search results.
    For detailed instructions on setting up booking resources, refer to this guide
    and explore the concept of capacity here.
  3. Clear Cache (Mandatory): Navigate to "Booking > Settings > Search" and click "Clear cache".
    This step is crucial. You should see the number of pages with booking forms.
    If you don't find any discovered pages with booking forms, it signals a configuration issue in the previous steps.
  4. Check Search Availability: Reassess how the search availability feature functions,
    taking into account different parameter settings.
    Learn more about this process here.

After completing these steps, proceed to test the search form on your website's front end.

You may also find it helpful to explore adding additional parameters to your search form.
Discover more about this feature here.

I am get the message similar to this “Error during adding new booking resource into DB” – “wp_bookingtypes doesnt exist “. What is wrong ?

This error is appear because of wrong installation of plugin.
1) Please, open the General Booking Settings page and set this option "Delete booking data during uninstall", as unchecked, at the right side of page, otherwise your exist booking data will be delete during deactivation of plugin.
2) Then open the Plugins menu and press Deactivate link of Booking Calendar. Wait, for the message about: "plugin is deactivated successfully".
3) Then press activate link. Wait, until message will show up that plugin is activated successfully.
Now, you can test it again.