Troubleshoot bookable events
On this page
Use this topic when a bookable product does not behave as expected. Each section starts from what you or your customer sees. For how the booking records fit together, see bookable events and services.
The booking fields are missing from the product
Your Salesforce profile uses the standard Product Layout, which has no Booking Information section. Assign SC Product Layout to your profile as described in assigning page layouts. The fields then appear on every product record.
Salesforce will not save an Availability record
The error message names the problem.
| Error message | Fix |
|---|---|
| Select at least one day | Select at least one day in On these days. This is required even for a single date. |
| Start and End Time duration must be greater than or equal to the Product Booking Duration (including Product Booking Start and End Buffers) via Product Bookable Location. | Widen the window, or shorten the product’s booking duration. The window must be at least Booking Duration (mins) plus Booking Start Buffer (mins) plus Booking End Buffer (mins). For a 120-minute session with 10-minute buffers, the window needs 140 minutes. |
| End Time must be after Start Time | Set End Time later than Start Time. A window cannot run past midnight, so split an overnight session into two records. |
| If End Date is provided it must be on or after Start Date | Correct the dates, or leave End Date blank for no end date. |
| Start Date cannot be blank, Start Time cannot be blank, End Time cannot be blank | Fill in the field. |
Salesforce will not let you change a Bookable Event’s date or time
Once a Bookable Event exists, its Start Date, End Date, Start Time, End Time, Product Bookable Location, and Created From Availability are locked, because customers may already hold bookings for that time. Salesforce shows “Cannot update the following fields: Start Date, End Date, Start Time, End Time, Product Bookable Location, Created From Availability”.
To move a session, offer the new time as a new slot, stop selling the old one as described under “Stop selling one date without changing the others” below, and contact the customers booked on the old time. Their bookings are listed in the Bookings related list on the old Bookable Event.
No dates or times show on the product page
Work through these checks in order. Each one alone stops slots from showing.
- Booking Duration (mins) on the product has a value greater than 0. Without it, the product is not bookable.
- The product has a price in the store’s price book. Without a price, the product page shows no booking options.
- If the product has variants, the booking setup is on the variants. A master product with variants never shows the date picker itself, so set the booking fields and create the Product Bookable Locations on each variant, not the master.
- The product has a Product Bookable Location, and its Bookable Location has Active checked.
- The Bookable Location’s Store is the store you are viewing. A Bookable Location belongs to one store only. To sell the same venue in two stores, create a Bookable Location for each store.
- The Product Bookable Location has at least one Availability record that covers the dates you are looking at, on the days selected in On these days. A slot also shows if you created a Bookable Event for that date yourself.
- The availability window is still long enough. If you increased Booking Duration (mins) or a buffer after creating the Availability record, the window may no longer fit a slot. Salesforce only checks this when you save the Availability record, so no error appears. Edit the Availability record and widen the window.
- No Unavailable record covers the whole window. An Availability record with Unavailable checked removes the time it overlaps.
- The slots are in the future. Slots that have already started are never offered.
Changes made in Salesforce take a short time to reach the store, and the list of available slots is cached for about a minute. Wait a minute and reload the page before checking again.
The product shows “Sold out” before anyone has booked
On product listings, a bookable product shows “Sold out” whenever it cannot be added to the cart, whatever the reason. Check:
- Maximum Bookings on the Product Bookable Location is not
0. A value of 0 makes every slot full. Leave it blank for no limit. - The price is visible to the customer. If the store’s price book hides prices from visitors who are not logged in, those visitors see “Sold out”.
- Track Inventory is unchecked on the product. A tracked product with no stock cannot be added to the cart. See the next section.
Customers are told a session is out of stock
If Track Inventory is checked on the product, StoreConnect checks stock levels as well as booking places, and the customer sees a message such as “Wine tasting is out of stock”. Booking places come from Maximum Bookings, so most bookable products do not need inventory tracking. Uncheck Track Inventory, or add stock if you deliberately limit both.
Slots never sell out
Maximum Bookings on the Product Bookable Location is blank. A blank value means unlimited bookings, and the page shows no places-remaining count. Enter the number of bookings each slot can take.
Maximum Bookings counts bookings, not attendees. One booking covers up to Max Attendees Per Booking people, so a slot with Maximum Bookings of 20 and Max Attendees Per Booking of 4 can seat up to 80.
Checkout asks for shipping on a session
Check Virtual on the product. A bookable product that is not virtual is treated as a physical item, so checkout asks for a shipping address and charges shipping.
A session was removed from the cart, or its quantity changed
StoreConnect holds booked places while the session is in the cart, then rechecks the cart when it is next refreshed. The message tells you why.
| Message | Cause |
|---|---|
| The reservation period has expired for some items in your cart | The hold ran out before checkout. The hold lasts for the store’s Booking Hold Duration (mins), 15 minutes by default. Do not set it to 0, or every hold expires immediately. |
| Some items in your cart have passed the starting time and can no longer be booked | The session started while it was in the cart. |
| Some items in your cart had a higher quantity selected than is now available. The quantity has been reduced for these items | Other customers took places in the meantime. The cart keeps as many places as remain. |
| Some items in your cart are no longer available | The slot is full. |
Stop selling one date without changing the others
Maximum Bookings applies to every slot on a Product Bookable Location, so changing it affects all dates. To close one date or time instead, block it with an Unavailable record. This works for slots that come from Availability records. An Unavailable record has no effect on a slot you created as a Bookable Event.
- Open the Product Bookable Location record for the product and location.
- Select New in the Availabilities related list.
- Set Start Date and End Date to the date you want to close.
- Set Start Time and End Time to cover the slot, for example
7:00 PMto11:00 PM. - Select the date’s weekday in On these days.
- Select Unavailable.
- Select Save.
The slot no longer shows on the product page for that date. Bookings already made for that time are not affected.
To cancel a booking, set its Status to cancelled. A cancelled booking no longer counts against Maximum Bookings, so its place becomes available again.
Customers are not asked for attendee details
Check these points:
- Require Attendee Details for Bookings is checked on the product.
- The customer is looking in the right place. Attendee details are collected after checkout, not during it. A logged-in customer finds the form on the order in their account. A guest uses the order link from their order confirmation.
- The booking has room for more attendees. The form accepts up to Max Attendees Per Booking attendees for each booking, then hides the Add Attendee option. If Max Attendees Per Booking is blank, each booking takes 1 attendee.
If any session in an order requires attendee details, the form appears for every booking in that order.
An attendee has no contact record
This is expected. A Booking Attendee looks up a contact only when the customer selects themselves as the attendee. For anyone else, StoreConnect stores the name, email, and phone on the Booking Attendee record and creates no contact. To create or link contacts for other attendees, use Salesforce automation.
A paid order has no bookings in Salesforce
Check these causes:
- The customer requested a quote. If the session’s price book entry has Hide Price set, checkout submits a quote request instead of a payment, and no Booking or Bookable Event records are created. See Enable customers to request product quotes.
- The bookings failed to sync. Bookings are created on the store and then sync to Salesforce. A Salesforce flow or trigger on Booking, Bookable Event, or Booking Attendee that fails, for example a flow that sends an email with no recipient, stops the records from saving. Open the sync error tool and look for errors on those objects. Fix the automation, then select Re-sync on each failed record. If a Bookable Event failed, its Bookings and Booking Attendees fail too, so re-sync the Bookable Event first. For help with flow errors, see resolve flow and trigger sync errors.
Was this article helpful?
Thanks for your feedback! It helps us improve our docs.