Relationship Between Bookings and Orders: Understanding the Connection

A fully formed booking with WooCommerce and WooCommerce Bookings consists of two pieces:

  • A booking entry visible or editable on your website dashboard under Bookings > All Bookings.
  • A corresponding order viewable or editable on your website dashboard under WooCommerce > Orders.

The relationship between bookings and orders is an important concept to understand in the context of managing bookings and transactions.

When a customer adds a booking product to their cart and checks out, it represents their intention to reserve a specific time slot or availability. The checkout process creates a booking entry in the system, capturing details such as the date, time, duration, and any additional requirements.

However, a booking alone does not complete the transaction. The shop manager also needs to create an order to confirm the customer’s reservation and finalize the process. The order represents the actual purchase or acquisition of the booked product or service.

The connection between bookings and orders is that a booking serves as a precursor to an order. Once a customer makes a booking, the system generates an order to formalize the transaction and complete the purchase. The association of the booking information with the corresponding order, creates a clear link between the reserved time slot and the confirmed purchase.

Finding the WooCommerce order for a Booking

↑ Back to top

You can find the corresponding order of a booking in the following locations:

  • On the list of Bookings under Bookings > All Bookings on the dashboard, in the “Order” column.
  • On the Edit Booking screen for a specific booking, as a link under the Booking Details header.
Linked orders on the “All Bookings” screen
Linked Order on the “Edit Booking” screen

For Bookings with the “In Cart” status, no corresponding order exists.

Finding the Booking for a WooCommerce order

↑ Back to top

The corresponding order links to the booking as the item purchased within the “Edit Order” screen.

For a booking to be considered paid, it is necessary for the payment associated with the linked order to be successfully processed.

Why do orders have a status of Processing and not Completed?

↑ Back to top

Once a customer pays for an order, WooCommerce only sets the status of the order to Completed if all products purchased in the order are both virtual and downloadable. If all the products in an order are physical and/or virtual without being downloadable, WooCommerce marks the order as Processing. This helps you manage the shipping of physical items.

Bookable products marked as virtual override the behavior of normal virtual products. As a result, when an order only contains a virtual bookable product, WooCommerce marks the order as Completed automatically, if the payment has gone through.

By contrast, when an order contains a bookable product that is not virtual, the system sets the order status to Processing.

If you need more control, you can use the Order Status Manager extension to manage the order statuses in more detail, regardless of product type.

Questions and Support

↑ Back to top

Something missing from this documentation? Do you still have questions and need assistance?

  • Have a question about a specific extension or theme you’d like to purchase? Click here.
  • Already purchased and need some assistance? Get in touch with a Happiness Engineer via the WooCommerce.com Support page and choose this extension name from the “I need help with” dropdown.
Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.