Award Winning Appointment Booking Plugin For 3 Consecutive Years!
Documentation

Microsoft Teams Integration

Microsoft Teams Integration:

Note: Microsoft Teams required below licenses to use Team addon.

  • Microsoft 365 Business (Basic / Standard / Premium)
  • Microsoft 365 (E1 / E3 / E5)

First of all, you will need to get the “Client ID” and “Client Secret” for the Microsoft teams. You will be able to get the “Application (Client) Id” and “Client Secret” from Azure.

azure welcome page

Register Application:

Go to the Register page and Register the application shown as below image :

Add the Name field (required) and Redirect URL (optional) after then click on the register button shown as below image.

Register Application

Application id (Client id):

After then go to the application overview menu and then get the Client id (application id) and other details of the application shown below image:

Client id

Client Secret Value:

After then go to Application Dashboard -> Certificates & secrets and Get Secret Value shown as below image :

Note : Secret Value will be displayed only one time.

Client Secret Value

After that add application redirect URI

Authentication Preview
Add Redirect URI

After that you need to grant some permissions to access the required APIs.

Request API permissions
API Permissions

User.Read
OnlineMeetings.ReadWrite
offline_access
Calendars.ReadWrite
Calendars.ReadWrite.Shared
TeamSettings.Read.All
TeamSettings.ReadWrite.All

Make sure you updated the Teams policy from teams policy center. If not below are the steps to update the policy.

Using Microsoft Teams Admin Center

Metting Policies
Edit Policy details

URL: https://admin.teams.microsoft.com

Check Meeting Policies

Go to Meetings > Meeting policies.

Click on the policy assigned to the user (often “Global (Org-wide default)”)

Ensure the following settings are enabled:

  • Allow scheduling private meetings
  • Allow Meet Now
  • Allow channel meeting scheduling
  • Allow transcription, cloud recording (if needed)

💡 If this is disabled, users will get the “Organizer is not allowed to create private meeting” error.

Now, activate the Microsoft Teams Addon from BookingPress -> Addons.

Microsoft Teams Integration

After the addon is activated, you can configure the plugin by going to BookingPress -> Settings -> Integrations -> Microsoft Teams.

Enter the “Client ID” and “Client Secret”. You will be able to get the “Application (Client) Id” and “Client Secret” from Azure.

BookingPress Integration Tab

Event Settings:

Copy and Enter the title from placeholders from “Insert Placeholder” dropdowns to generate the Event Title dynamically according to your requirement.

Event Description:

Same way you will also be able to write a custom description on your own with the help of the placeholders.

Event Location:

Here you will be able to choose a field from the list of fields that are present in the “Customize Custom Fields” section. After selecting a field from the list, when the user will submit the form and the data will be mapped as a location in the Outlook Calendar event configured with the respective Staff Member.

Event Location

The details in the Outlook Calendar Event will be displayed in the location field

Calendar

Integrating with the Staff Member

To connect with a staff member, go to BookingPress > Staff Members > Integration > toggle on the Microsoft Teams Integration and Sign In With Microsoft Teams.

Once signed in, you will see all your calendar options in the Select Calendar dropdown menu. Choose the calendar where you want to add appointments.

Refresh Calendar List

To refresh the list of calendars from Calendar, simply click on the “Refresh Calendar List” button. This will update the list as shown in the screenshot.

Edit Staff Member

Enable from service:

After logged in with staff member, you need to enable Microsoft teams integration from particular service as well.

Edit Service

After booking an appoint it will display in enlarge mode of event you will see Microsoft teams meeting join link.

Event Page

Insert Placeholders:

You will be able to select different required placeholder from different sections:

  • Customer
  • Company
  • Service
  • Staff Member
  • Appointment

1. Customer:

Under customer section, you will be able to copy the following Placeholders:

  • %customer_email% : This placeholder will help to get the customer’s Email
  • %customer_first_name% : This placeholder will help to get the customer’s first name.
  • %customer_full_name% : This placeholder will help to get the customer’s full name.
  • %customer_last_name% : This placeholder will help to get the customer’s last name.
  • %customer_note% : This placeholder will help to get the customer’s note.
  • %customer_phone% : This placeholder will help to get the customer’s phone number.

2. Company:

Under company section, you will be able to copy the following Placeholders:

  • %company_address% : This placeholder will help to get the Company’s address.
  • %company_name% : This placeholder will help to get the Company’s name.
  • %company_phone% : This placeholder will help to get the Company’s contact number.
  • %company_website% : This placeholder will help to get the Company’s website.

3. Service:

-> Under service section, you will be able to copy the following placeholders:

  • %service_name% : This placeholder will help to get the Service’s name.
  • %service_duration% : This placeholder will help to get the Service’s time duration.

4. Staff Member:

Under Staff Member section you will be able to copy the following placeholders :

  • %staff_member_email% : This placeholder will help to get the Staff Member’s email address.
  • %staff_member_first_name% : This placeholder will help to get the Staff Member’s First Name.
  • %staff_member_full_name% : This placeholder will help to get the Staff Member’s Full Name.
  • %staff_member_last_name% : This placeholder will help to get the Staff Member’s Last Name.
  • %staff_member_phone% : This placeholder will help to get the Staff Member’s Contact Number.

5. Appointment:

Under Appointment section, you will be able to copy the following placeholders :

  • %appointment_date% : This placeholder will help to get the particular date of the booked appointment.
  • %appointment_date_time% : This placeholder will help to get the particular date and time of the booked appointment.
  • %appointment_duration% : This placeholder will help to get the particular duration of the booked appointment.
  • %appointment_start_time% : This placeholder will help to get the Starting Time of the booked appointment.
  • %appointment_end_time% : This placeholder will help to get the Ending Time of the booked appointment.
  • %appointment_amount% : This placeholder will help to get the particular Amount of the booked appointment.
  • %appointment_status% : This placeholder will help to get the Status(whether approved, pending, rejected, etc…)  of the booked appointment.
  • %teams_join_url% : This placeholder will help to you to display teams meeting join link.

FAQ’s

The appointment date and time do not match in Calendar.

Ensure that the timezone settings in Calendar match those of your WordPress site. To do this:

1. Check your Calendar Timezone and then head over to WordPress settings.
2. Locate the timezone settings by heading over to WordPress --> Settings --> General --> Scroll down to Timezone and set it to match the timezone of your Calendar.
3. Save the changes, and the appointment date and time should synchronize correctly.

We are unable to login with microsoft account.

Ensure that you have enabled all permissions listed above and granted for admin.

We are logged in and calendar selected but event/appointment not created.

Ensure you have enabled settings in meeting policies. You can check above description for enabling teams policies settings.