Booking
The Booking resource represents a booked timeslot, as described in the WooCommerce Bookings plugin. See the Bookings documentation for more details.
Please see the Product chapter for information about the Bookable product.
Please see the announcement post for some examples of how you could use WooCommerce Booking data in your Zaps.
Trigger Rules¶
The following trigger rules are available to trigger your Zaps when booking data in your WooCommerce store is added, changed or deleted.
Booking cancelled¶
Triggers when a booking is cancelled — by a customer, a store admin, or automatically if the associated order is not completed. Also fires Booking status changed to Cancelled, Booking status changed (any status), and Booking updated.
Booking created¶
Triggers when a booking is first created — as soon as a customer adds a bookable product to their cart, before checkout. Booking updated also fires at this point.
If you only want to trigger on paid bookings, use Booking ordered instead.
Booking deleted¶
Triggers when a booking is moved to the trash. Only this trigger fires on trash — Booking updated and Booking status changed stay silent. Permanently deleting from the trash fires nothing.
Due to limitations in how WooCommerce handles deleted events, only the ID of the deleted resource is sent to Zapier when using this trigger rule. No other data fields are available.
Booking ordered¶
Triggers when an order containing a booking is placed and the booking transitions out of In Cart status (to Paid, Confirmed, Pending Confirmation, or Complete).
Does not fire for status changes that happen after the booking has already left the In Cart status — for example, moving from Paid to Confirmed or Paid to Cancelled does not fire this trigger.
Booking restored¶
Triggers when a trashed booking is restored. Only this trigger fires on restore — Booking updated and Booking status changed stay silent.
Booking status changed¶
Triggers when an existing booking’s status changes. Does not fire when a booking is first created, trashed, or restored.
More details on the booking status lifecycle can be found in the WooCommerce Bookings documentation.
Booking status changed (any status) fires on every status change. Use a specific Booking status changed to … rule if you only care about one particular status. Both fire alongside Booking updated.
Below is a full list of Booking status changed trigger rules:
- Booking status changed (any status)
- Booking status changed to Cancelled
- Booking status changed to Complete
- Booking status changed to Confirmed
- Booking status changed to In Cart
- Booking status changed to Paid
- Booking status changed to Pending Confirmation
Booking updated¶
Triggers when an existing booking is updated, including any status change. Also fires when a booking is first created.
Actions and Searches¶
Not available for the Booking resource
Booking Data¶
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Id | integer | Unique identifier for the resource |
| All Day | boolean | A boolean describing if the booking is for an entire day. |
| Cost | string | Total booking cost. |
| Customer Id | integer | ID of customer that purchased the booking. |
| Date Created | date-time | The time the booking was created. |
| Date Modified | date-time | The time the booking was last updated. |
| Date End | date-time | The end time of the booking. |
| Google Calendar Event Id | string | A unique ID of a synced booking event to Google Calendar. |
| Order Id | integer | The order ID linked to the booking. |
| Order Item Id | integer | The unique order line item ID of the booking. |
| Parent Id | integer | The unique item ID of the parent post. |
| Person Counts | array | The number of persons by person type within the booking. |
| Product Id | integer | The unique product ID linked to the booking. |
| Resource Id | integer | The unique resource ID linked to the booking. |
| Date Start | date-time | The start time of the booking. |
| Status | string | The current status of the booking. |
| Local Timezone | string | The local timezone used when the booking was purchased. |
Data Fields May Differ in Your WooCommerce Store
Zapier Integration for WooCommerce utilises WooCommerce’s REST API. Data field names, descriptions, and values can vary from one WooCommerce store to another.
Your store’s data, fields, and trigger rules may differ from this documentation due to any of the following:
- WordPress versions and the locale/language used.
- Your WooCommerce versions and the features enabled.
- Your active WordPress plugins and WooCommerce extensions.
- Any custom code that overrides or changes how the WooCommerce/WordPress REST API operates.
Note: The field definitions are generated using the following settings:
- WordPress v6.9 with the
en_USlocale. - WooCommerce v10.4 with tax, coupon and cost of goods sold (COGS) features enabled.
- The latest versions of WooCommerce Bookings, WooCommerce Memberships, and WooCommerce Subscriptions plugins were active.