It has taken some time, and was more difficult than I imagined, but I'm glad to say real-time availability is now working with BookThatApp. I thought I'd talk about how this works technically.

First, some background. BookThatApp captures bookings against a product (down to the variant level if needed) using an order webhook. At setup time, the shop owner imports the Shopify products they want to take bookings for, and they have the ability to define the product capacity. So now we have all the ingredients we need: what products to track, how many have been ordered at a certain time, and how many can be booked simultaneously.

We now need to make that information available in the storefront. We do that via a JSON web service that provides a booking summary for products. This service can be used with the jQuery UI datepicker (works with the timepicker as well), but don't worry about having to set that up because the auto-installed BookThatApp script can do it for you. You just need to give the input field a CSS class of "bta" (no prizes for guessing what that is short for) and we take care of the rest. Days when the product is booked-out (or blacked-out) will be grayed out and no longer selectable in the datepicker.

We are just in the final stages of testing, and will have the feature rolled out this week. If you are in the Beta program and would like to get this set up, please email me (Gavin). If you'd like to sign up for the Beta, please drop us a note via our contact page.