Alerts & automation

Zapier + Microsoft Bookings via webhooks

Zapier's own Microsoft Bookings coverage is thin, and it cannot know which campaign produced a booking. With BookingsXP, every confirmed widget booking arrives in Zapier as structured JSON with the customer, service, time and attribution, ready for spreadsheets, CRMs, email tools and anything else in Zapier's catalogue.

Plan
Plan: ProNeeds Pro ($19 a month) or Business ($49 a month).
In short
Start a Zap on every website booking with Webhooks by Zapier → Catch Hook, then send it to any of Zapier's apps.
Microsoft Bookings
Stays your system of record. Bookings land in Outlook and Teams and Microsoft sends the invites and reminders.

How it works

What happens with Zapier

  • Zapier gives you a unique hooks.zapier.com URL from the Webhooks by Zapier trigger.
  • BookingsXP posts the booking.created envelope to it. Catch Hook parses the JSON, so nested fields such as data.booking.customer.email appear as mappable fields.
  • The request is signed, but Catch Hook does not check signatures. The URL is effectively the password, so keep it private.
  • If Zapier is unavailable, BookingsXP retries with backoff for about two hours.

Setup

Set up Zapier

5 steps. Names of menus and buttons are as they appear today; vendors rename things, so look for the closest match.
  1. Step 1: Turn on Store bookings

    Dashboard → widget → Data & access → "Store bookings in BookingsXP". Webhooks only fire for widgets that keep a copy.

  2. Step 2: Create the trigger in Zapier

    Create a Zap. For the trigger choose Webhooks by Zapier → Catch Hook. Leave "Pick off a child key" empty, continue, and copy the webhook URL.

    The URL looks like
    https://hooks.zapier.com/hooks/catch/1234567/abcdefg/
  3. Step 3: Add the endpoint in BookingsXP

    Dashboard → Integrations → Add an endpoint → Webhook (JSON). Paste the Zapier URL, name it, and choose the widgets it covers.

  4. Step 4: Send a real booking for sample data

    The Test button sends a ping with only a message field, which is not enough to map booking fields. Make a real test booking in the widget, then click Test trigger in Zapier and pick that request.

  5. Step 5: Filter and add actions

    Add a Filter step on Type exactly matches booking.created, then your actions: add a spreadsheet row, create or update a CRM contact, start an email sequence. Map fields such as Data Booking Customer Email and Data Attribution Campaign.

Outcomes and caveats

What you get

The result

  • Every widget booking in any app Zapier connects to, within seconds.
  • Attribution fields (source, medium, campaign, channel, click IDs) to store in your CRM next to the contact.
  • The BXP reference to match rows back to the appointment's notes in Microsoft Bookings.

Good to know

Limits and caveats

  • Webhooks by Zapier is a premium Zapier app, so it needs a paid Zapier plan.
  • BookingsXP Pro is needed for webhooks.
  • Catch Hook cannot verify the signature. If you need that, use Catch Raw Hook and verify in a Code by Zapier step, or verify on your own server first.
  • Only bookings made through the widget are sent; cancellations and staff-entered bookings are not.

FAQ

Zapier questions

Something not covered? Email hello@bookingsxp.com.

Start free, no card

Start on Free with the widget and GA4 events, then move to Pro when you want ad conversions, webhooks and chat alerts.