Google Calendar integration

Since version 1.10.0 of the WordPress appointment booking plugin, all employees can sync their site schedules with personal Google Calendars. This will allow employees to view their bookings without a need to log into your website.

To add Google Calendar integration to your site and the Appointment Booking plugin, you need to firstly create a dedicated app on the Google Developer Console, then sync each employee’s calendar to their profile on your site.

Keep in mind:

  • When an appointment is scheduled via your site, it’s automatically added to the employee’s Google calendar if it’s synced.
  • It’s a one-way sync process. Change the booking statuses or reschedule appointments on the site, not via the Google Calendar. Changes made to the appointment booking on the website are updated in the respective Google Calendar. For example, if you change the booking status to ‘Canceled’, it automatically disappears in the synced employee’s Google calendar. However, the changes you make to the booking in the Google Calendar don’t apply to employees’ working schedules on your WordPress site.

Create an app with the Google Developer Console

Register an app with the Google Developer Console and obtain your Client ID and Client Secret. credentials. For this, do the following.

  • Go to the Google Developers Console.
  • Choose “New project” or “Select a project” if you have got active ones.
  • Google Calendar API - open project in google console.

  • For a new project, fill in the fields like below and click ‘Create’.
  • Creating a new project in Google Cloud Console.

  • Wait to be redirected to the project dashboard.
  • Go to “Library” in the dashboard from the left.
  • Google Calendar in the Library.

  • Scroll down to find Google Calendar API and select it.
  • Google Calendar APi in the library.

  • Click ‘Enable’ if it’s disabled.
  • Enable API for Google Calendar.
    Or click ‘Manage’ if it’s enabled.
    Manage Google API.

  • Hit the ‘Create credentials’ button.
  • Creating credentials for Google Calendar API.

  • Set Google Calendar API as your credential type. Also select ‘user data’ and click ‘Next’.
  • Selecting user data.

  • Create an application name and provide your contact email addresses. Once done, click ‘Save and continue’.
  • Google Calendar API details.

  • Skip ‘Scope’ and click ‘Save and continue’ to go to the next step.
  • In the ‘OAuth client ID’ step, select ‘Web application’ and create a name for it.
  • Web app Google Calendar.

  • Scroll down to the ‘Authorized redirect URIs’, click ‘+Add URI’ and paste the URL from your Appointment Booking plugin dashboard. Then click ‘Create’.
    Create URIs.
    Where to get your redirect URI? Go to Appointment Booking plugin > > Settings > Integrations > Google Calendar sync > Step 5. > copy a link and paste to Google Console.
    Redirect URI in Appointment Booking.

  • Your credentials should be created – click ‘Done’.
  • Download your credentials.

  • Go to the ‘Audience’ menu (former ‘OAuth Consent Screen’) and click ‘Publish app’.

    Audience app in Google Console.

  • In the ‘Push to production?’ pop-up, click ‘Confirm’.
  • Push app to production.

  • The publishing status should change to ‘In production’.
  • Publishing status In production.

  • Navigate to Credentials and click on the newly created application.
  • Find credentials.

  • Find your Client ID and Client Secret key credentials and copy them.
  • Client ID and Client Secret.

  • Insert the generated credentials into the appropriate fields via Appointment Booking plugin > Settings > Integrations > Google Calendar sync. > save the changes.
  • client credentials appointment booking.

    Once this connection is established, sync employee’s profile to their Google Calendar (more below).

    Connect employee’s Google calendar to your site

    In order to connect a Google calendar, an employee must log into your site dashboard with their login details and go to Employee > Employee Google Calendar > Connect to Calendar.

    Connect employee to Google Calendar.

    By hitting on that button, they must be redirected to their Google account for confirmation.

    There are chances Google will mark this app as not verified. It’s fine, they just need to hit “Advance” and then “Go to <your domain>”. It’s still secure to log in this way since your employees know you and that your website is verified. They need to click ‘Continue’ to access your site.

    app safety

    Once the connection is successful, they’ll see that the status ‘Connected’ in their profile.

    Employee connected to Google Calendar.

    Employees will see all their bookings submitted via the site or added by hand via the site’s dashboard synced to their Google calendars.

    google calendar bookings appointment connect

    Employees might have different Google Calendar settings which can influence their interaction with the calendar and bookings.

Related Topics