Skip to content
GPLWP Guides

How to add video meetings to WordPress bookings

Booking & Events Time About 30 minutes 7 steps Updated 22 Oct 2026

BOOKING & EVENTS
The short answer

For occasional bookings, create a Zoom meeting and add its join link to your booking confirmation or service instructions. For regular or one-to-one appointments, connect a booking plugin to Zoom so confirmed bookings get their own meeting details automatically.

The route
  1. 01Choose shared or unique meetings
  2. 02Use the manual route first
  3. 03Prepare the Zoom connection
  4. 04Enable meetings for bookings
  5. 05Put the join link in notifications
  6. 06Test the complete booking flow
  7. 07Use an integration for regular bookings

What you need

  • A WordPress booking or appointment plugin
  • A Zoom account
  • WordPress administrator access
  • A booking confirmation email or customer notification you can edit

Choose shared or unique meetings

Decide whether every booking can use one recurring Zoom room or whether each appointment needs its own meeting. A shared room is fine for a small class with a fixed schedule. One-to-one consultations usually need unique links so a customer cannot enter another customer's appointment.

Also decide when the link should be released. Sending it only after approval or payment is safer than putting a permanent meeting link on a public service page.

Use the manual route first

For a low volume of bookings, create the meeting in Zoom, copy the participant join link, and add it to the booking confirmation email, calendar event, or appointment instructions. If your booking plugin supports a service-specific location or notification field, put the link there rather than editing every email by hand.

This route is genuinely fine for a few appointments each week. Its drawback is that you must create or assign the meeting yourself, keep the date and time correct, update the link if the appointment changes, and remember to remove access when a booking is cancelled. A recurring room also means the same link may be shared between customers.

Prepare the Zoom connection

For automatic meetings, your booking plugin normally needs permission to create Zoom meetings through your account. In BookingPress, install and activate the Zoom integration addon, then create a Zoom Server-to-Server OAuth app and copy its Account ID, Client ID, and Client Secret into the plugin's Zoom integration settings.

Grant only the meeting and user permissions required by the plugin's current documentation, then activate the Zoom app. Keep the credentials private; they provide access to meeting management rather than being a public join link. BookingPress documents this connection process and its required meeting scopes.

Enable meetings for bookings

Link the connected Zoom user to each staff member who will host online appointments. Then edit the services that should be online and enable Zoom for those services. Do not assume that connecting Zoom globally changes every service: the staff and service settings both need to match.

Some booking systems create meetings only after an appointment is approved. BookingPress shows the Zoom controls for approved appointments, so check your booking status rules before promising customers that a link will appear immediately after they submit a request.

Put the join link in notifications

Edit the confirmation and reminder messages used by your booking system and include the generated customer join link, appointment date, time zone, duration, and a short note about joining. If your system offers separate host and customer links, send the host link only to the staff member.

Also make the link available in the customer account or booking details page when possible. This gives customers somewhere to retrieve it if the email is filtered. The exact placeholder or notification label depends on your booking plugin, so use the plugin's available merge fields rather than guessing a shortcode.

Test the complete booking flow

Create a test online service and make a booking using a customer email address. Confirm that the meeting is created in Zoom, the booking status is the one that triggers creation, the customer receives the join link, and the host can start the meeting.

The common Friday failure is a booking that looks confirmed in WordPress but has no Zoom link because the staff account is not connected, Zoom is disabled for that service, the OAuth app lacks a required permission, or the notification template does not include the meeting field. Also test rescheduling and cancellation: an integration may update or remove the Zoom meeting, while a manually pasted link will not.

Use an integration for regular bookings

If you need one meeting per confirmed appointment, automatic notifications, staff-specific hosts, or fewer manual checks, use a booking plugin's Zoom integration. BookingPress Zoom Integration Addon is a suitable option because it can create Zoom meeting links for confirmed bookings, show meeting access in appointment records and customer details, and connect meetings to selected staff and services.

Choose the manual method when you run a small number of sessions and a shared or pre-created room is acceptable. Choose the addon when missed links, rescheduled appointments, or several staff members would make manual handling unreliable.

The fast route

Let BookingPress Zoom Integration Addon do it

Automatically creates and sends Zoom meeting links for confirmed bookings; ideal for turning scheduled services into virtual appointments.

Get BookingPress Zoom Integration Addon

Sources

  1. bookingpressplugin.com /documents/zoom-integration/

Questions

Can WordPress add a Zoom link to a booking without a plugin?
WordPress itself does not create Zoom meetings or connect them to booking statuses. You can still use a manual process: create a Zoom meeting, copy its join link, and place it in your booking email, appointment instructions, or calendar event. That works for low booking volumes, but automatic creation, updates, cancellation handling, and per-booking links require a booking integration or custom development.
Should every booking use the same Zoom link?
Use one recurring link only when the bookings are group sessions or you are comfortable with the same room being reused. For private consultations, create a unique meeting for each appointment so customers cannot enter another session. Automatic booking integrations are better for unique links because they can associate each meeting with the booking and selected staff member.
Why was no Zoom meeting created after a booking?
The usual causes are that the appointment is still pending, Zoom is not connected to the assigned staff member, Zoom is disabled for the service, or the Zoom app does not have the required permissions. Check the booking status first, then the staff and service integration settings. Also confirm that the WordPress site can communicate with Zoom and that the credentials have not expired.
How do customers receive the video meeting link?
Customers normally receive the join link through the booking confirmation or reminder email, and some booking plugins also show it in the customer account or appointment details. Add the plugin's customer meeting field to each relevant notification. Do not copy the host start link into a customer email, because it may let the recipient start the meeting as the host.
What happens when a video appointment is rescheduled or cancelled?
A manual Zoom link does not change when a booking is moved or cancelled, so you must update the customer and remove or replace the meeting yourself. An integration may update or delete the associated Zoom meeting, but this depends on the booking plugin and its status rules. Test both actions before relying on automation for paid or private appointments.