{"id":1119,"date":"2025-06-30T21:28:21","date_gmt":"2025-06-30T19:28:21","guid":{"rendered":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/?post_type=lsvr_kba&#038;p=1119"},"modified":"2025-07-04T14:06:00","modified_gmt":"2025-07-04T12:06:00","slug":"icalendars-synchronization-with-external-calendars","status":"publish","type":"lsvr_kba","link":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/knowledge-base\/icalendars-synchronization-with-external-calendars\/","title":{"rendered":"iCalendars &#8211; Synchronization with External Calendars"},"content":{"rendered":"<div class=\"tip\">\n<p><strong>Good to Know<\/strong><\/p>\n<p><a href=\"https:\/\/1.envato.market\/icalendars-addon-chauffeur-taxi-booking-system\">iCalendars<\/a> is a separate add-on that extends the capabilities of the Chauffeur Taxi Booking System for WordPress plugin. To start using the add-on, make sure you have the latest version of the Chauffeur Taxi Booking System installed on your WordPress site.<\/p>\n<\/div>\n<p>iCalendars (Add-on) allows you to synchronize your Chauffeur Booking System calendar with external calendar systems supporting .ics files, such as Google Calendar, Outlook, Apple Calendar, and other applications that accept public ICS feeds. This ensures that vehicle availability stays up-to-date across different systems, preventing double bookings and improving operational efficiency for transport and chauffeur services.<\/p>\n<h2>Accessing iCalendars<\/h2>\n<p>To configure synchronization, navigate to <mark>&#8216;Chauffeur Booking System&#8217;<\/mark> -&gt; <mark>&#8216;iCalendars&#8217;<\/mark> menu. Here, you will see a list of all existing calendar synchronizations. To add a new synchronization, click <mark>&#8216;Add New iCalendar&#8217;<\/mark>.<\/p>\n<h2>Creating a New Synchronization<\/h2>\n<p>On the synchronization setup page, enter a title in the <mark>&#8216;Add Title&#8217;<\/mark> field. Below, you will find several tabs to configure the synchronization.<\/p>\n<h2>&#8216;Main&#8217; Tab<\/h2>\n<h3>iCalendar ID<\/h3>\n<p>Displays the unique ID of the calendar.<\/p>\n<h3>Vehicle<\/h3>\n<p>Select the vehicle from the dropdown list to synchronize its calendar. The synchronization applies to the calendar of the selected vehicle.<\/p>\n<h2>&#8216;Import&#8217; Tab<\/h2>\n<p>The import section allows you to import data from external calendars. It offers two types of import &#8211; manual and scheduled.<\/p>\n<p><strong>Manual import<\/strong> lets you upload a .ics file from an external calendar. This method is useful for one-time updates or testing synchronization. You simply select the file, upload it, and import the booking data into the system.<\/p>\n<p><strong>Scheduled import<\/strong> automates the process using cron jobs, ensuring that vehicle availability stays updated without manual intervention. The system periodically fetches external .ics files and syncs reservations accordingly.<\/p>\n<h2>&#8216;Import&#8217; -&gt; &#8216;Manual&#8217; Tab<\/h2>\n<h3>Path to the File<\/h3>\n<p>Select a .ics file from an external calendar. Click <mark>&#8216;Browse&#8217;<\/mark> button, choose the file, and then click <mark>&#8216;Import&#8217;<\/mark> button to upload the data.<\/p>\n<h3>Source ID<\/h3>\n<p>A unique identifier for the imported data (e.g., \u201coutlook-calendar\u201d). The system assigns events to this ID. If event removal is enabled, previously imported events with this ID will be deleted before new ones are imported.<\/p>\n<h2>&#8216;Import&#8217; -&gt; &#8216;Scheduled&#8217; Tab<\/h2>\n<h3>Cron Job Command<\/h3>\n<p>The command that must be added to the cron table on the server (e.g., in cPanel). Example command:<\/p>\n<pre><code>* * 1 * * wget \"https:\/\/yourdomain.com\/chauffeur-booking-system\/?chbseic_run_code=AE625EBAA43ACFB2FCE6861293922C6E&amp;chbseic_cron_event=3\"<\/code><\/pre>\n<div class=\"tip\">\n<p><strong>How to Set Up Cron in cPanel<\/strong><\/p>\n<p>Log in to cPanel. Go to <mark>&#8216;Cron Jobs&#8217;<\/mark>. Add a new cron job and set the execution interval. Copy and paste the command provided in the plugin.<\/p>\n<\/div>\n<h3>Import URL Addresses<\/h3>\n<p>Add multiple URLs of external .ics files. The system will periodically fetch these files via cron and update vehicle availability.<\/p>\n<h2>&#8216;Import&#8217; -&gt; &#8216;Settings&#8217; Tab<\/h2>\n<h3>Remove Events<\/h3>\n<p>Enable\/disable removal of events with the same Source ID before importing new data.<\/p>\n<h3>Current\/Future Events<\/h3>\n<p>Enable\/disable importing only current and future events (ignoring past events).<\/p>\n<h2>&#8216;Export&#8217; Tab<\/h2>\n<p>The export section allows you to share vehicle availability data with external calendars. This can be done manually or via scheduled exports.<\/p>\n<h2>&#8216;Export&#8217; -&gt; &#8216;Manual&#8217; Tab<\/h2>\n<p>Click the <mark>&#8216;Export&#8217;<\/mark> button to download the .ics file of the vehicle\u2019s calendar. You can upload this file to other systems or calendar apps that support iCalendar synchronization.<\/p>\n<h2>&#8216;Export&#8217; -&gt; &#8216;Scheduled&#8217; Tab<\/h2>\n<p>The system generates an ICS file URL that can be copied and used in external calendar applications that support periodic ICS updates, such as Apple Calendar or Outlook.<\/p>\n<div class=\"tip\">\n<p><strong>How to Use the ICS File in Apple Calendar<\/strong><\/p>\n<p>Open Apple Calendar. Go to <mark>&#8216;File&#8217;<\/mark> -&gt; <mark>&#8216;New Calendar Subscription&#8217;<\/mark>, paste the ICS URL and confirm. The application will periodically fetch updates from this feed.<\/p>\n<p>For more details, please refer to Apple Calendar documentation.<\/p>\n<\/div>\n<h2>&#8216;Export&#8217; -&gt; &#8216;Settings&#8217; Tab<\/h2>\n<h3>Current\/Future Events<\/h3>\n<p>Enable\/disable exporting only current and future events.<\/p>\n<h3>Event summary and description<\/h3>\n<p>This section allows you to define a customized title (summary) and description for each exported event in the ICS file. These fields let you control how bookings from the Chauffeur Booking System will appear in external calendar applications. For example, you can include key booking details in the event name, making it easier to identify reservations directly from your calendar view.<\/p>\n<p>If either the summary or the description field is left empty, the system will use a default value instead.<\/p>\n<ul>\n<li><code>[chbs_pickup_location]<\/code> &#8211; pickup address<\/li>\n<li><code>[chbs_dropoff_location]<\/code> &#8211; drop-off address<\/li>\n<li><code>[chbs_pickup_date]<\/code> &#8211; date of pickup<\/li>\n<li><code>[chbs_pickup_time]<\/code> &#8211; time of pickup<\/li>\n<li><code>[chbs_vehicle_name]<\/code> &#8211; selected vehicle name<\/li>\n<li><code>[chbs_booking_sum_gross]<\/code> &#8211; total booking price<\/li>\n<li><code>[chbs_client_first_name]<\/code> &#8211; client\u2019s first name<\/li>\n<li><code>[chbs_client_last_name]<\/code> &#8211; client\u2019s last name<\/li>\n<li><code>[chbs_client_email_address]<\/code> &#8211; client\u2019s email<\/li>\n<li><code>[chbs_client_phone_number]<\/code> &#8211; client\u2019s phone number<\/li>\n<li><code>[chbs_comment]<\/code> &#8211; any comments from the client<\/li>\n<\/ul>\n<h2>&#8216;Events&#8217; Tab<\/h2>\n<p>This section displays a list of all imported events (blocked dates), with an option to manually remove them if needed.<\/p>\n<h2>&#8216;Logs&#8217; Tab<\/h2>\n<p>This section contains a record of system events, such as import\/export operations. The last 50 operations are displayed for review.<\/p>\n<div class=\"doc-version\">\n<p><strong>Summary<\/strong><\/p>\n<p>Document version: 1.0<br \/>\nLast updated: June 30, 2025<br \/>\nPlugin version: 8.7+<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Good to Know iCalendars is a separate add-on that extends the capabilities of the Chauffeur Taxi Booking System for WordPress plugin. To start using the add-on, make sure you have the latest version of the Chauffeur Taxi Booking System installed on your WordPress site. iCalendars (Add-on) allows you to synchronize your Chauffeur Booking System calendar [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"lsvr_kba_cat":[20],"lsvr_kba_tag":[],"_links":{"self":[{"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/lsvr_kba\/1119"}],"collection":[{"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/lsvr_kba"}],"about":[{"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/types\/lsvr_kba"}],"author":[{"embeddable":true,"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/comments?post=1119"}],"version-history":[{"count":7,"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/lsvr_kba\/1119\/revisions"}],"predecessor-version":[{"id":1159,"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/lsvr_kba\/1119\/revisions\/1159"}],"wp:attachment":[{"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/media?parent=1119"}],"wp:term":[{"taxonomy":"lsvr_kba_cat","embeddable":true,"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/lsvr_kba_cat?post=1119"},{"taxonomy":"lsvr_kba_tag","embeddable":true,"href":"https:\/\/quanticalabs.com\/docs\/chauffeur-booking-system\/wp-json\/wp\/v2\/lsvr_kba_tag?post=1119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}