Double or overlapping rentals

Find out why a double or overlapping rental is possible in some unique cases, and what can be done about it

Unfortunately, rentals for the same dates or with overlapping dates/buffers are possible in some unique cases.


Why is this possible?

In short, it is related to the timing at which a customer checks availability for an item and when they check-out.

Availability data is fetched when a customer visits one of your product pages. From there the customer can select from the available dates displayed and can add to their Cart.

If availability changes shortly after the availability data is fetched, there is a scenario where the customer is seeing something as available when in reality it no longer is. They can still select an available date and add to their Cart.


Can it be prevented?

There is no way to prevent this entirely.

To do that, firstly, the app would need to continuously check availability of items, which isn't feasible, and would put load on your website.

Secondly, even if that was done, there is still nothing that can be done once a customer enters Checkout. At this point in the process, apps lose the ability to execute code to check availability and take further action. The Shopify Checkout can only be customized in this way using a "Checkout Extension", which is new technology and is only available to merchants on the Shopify Plus plan, which is far too expensive for the majority merchants.

There are some things that PRP can already do, to reduce the likelihood of a double-rental, explained below.

PRP Cart Manager Extension

Firstly, if you haven't already, we recommend enabling the PRP Cart Manager extension, which becomes available in your theme editor if Product Rentals Pro is installed.

Enabling this means that items will automatically be removed from a customer's Cart after a set amount of time, meaning if they still wanted to rent it, they would need to go back to the Product page and check availability again.

For the removal to work, the customer must not have already entered Checkout, for reasons explained earlier.

For more information on the Cart Manager Extension, go to the page below.

Cart Manager

Automated availability data refresh

The PRP Rental Widget will automatically re-fetch availability data for a product if it has been more than 10 minutes since it was last fetched. This helps to ensure that customers aren't viewing an outdated calendar.

Imagine a situation where a customer visits your Product page, the availability data is fetched and shown in the calendar, but then the customer leaves the room and doesn't come back for a couple of hours, leaving the Product page open. The app will ensure that the data is refreshed at least every 10 minutes, so the availability they are looking at is no longer than 10 minutes old.

To clarify, the availability data is always refreshed if you visit the Product page again, the above scenario is only in relation to leaving the Product page open.

Automated alert upon Order placement

Whilst we can't prevent an order going through at the payment stage in your Checkout, we can check that items are still available straight after.

Product Rentals Pro now does this and will send you an email notification to alert you of the overlap, including details and direct links to the relevant product calendar, the order and the rental in your Shopify admin. From here you can take immediate action with the customer if you deem it necessary.


Abandoned Carts/Checkouts

Abandoned Cart/Checkout functionality could also be something making double-bookings more likely to occur, whether you're using Shopify's built-in features for this, or a 3rd-party app.

That's because the link included in the Abandoned Cart/Checkout email is typically a link directly to Checkout, with the Products the customer previously added to their Cart already loaded, including the line item properties, such as rental dates. As the customer is jumping straight to Checkout, where we aren't able to execute app code, there's no opportunity for Product Rentals Pro to re-check availability or clear items.

Shopify can keep a Checkout active for a long time (unknown exactly, but at least 30 days), so technically the customer could return to an Abandoned Cart/Checkout email received several weeks earlier, click the link in the email, and still complete Checkout for those Products and rental dates.


If double-rentals are still possible, how do I deal with it?

Given the above, double or overlapping rentals shouldn't happen very often, but are possible.

You need to pay close attention to upcoming rentals and take action with the relevant customers if you notice any rentals that are overlapping and can't be fulfilled for this reason.

There are some new things the Product Rentals Pro team are working on to help with the situation a lot (mentioned below). However, we believe this is a problem that can't be eliminated completely, regardless of which rental or booking app you use, purely because of the limitation with Shopify Checkout.


Planned features for Product Rentals Pro

Cart Reservations

This optional feature will "reserve" an item for a customer as soon as they add it to their Cart. That will mean that anyone else viewing the availability calendar for the Product will see those dates as unavailable, even though the first customer hasn't placed an Order yet.

After adding to Cart, a reservation widget will appear on the website, showing the customer how long the item is reserved for.

Whether this is a favourable solution for the merchant is up for debate. The question becomes whether you want to block someone who is ready to rent and pay, just because someone else has added something to their Cart. They might not be as serious about proceeding with the Order.

Additionally, once a customer realises that putting something in their Cart will reserve the item for them, they may start to use that to their advantage, adding items to their Cart that they are just considering, knowing that they are preventing others from being able to rent ahead of them.

They may even just start adding everything they like to their Cart, even though they only plan to Checkout with only one of them (or not at all).

We believe that it's best to just accept the Order, so at least you receive the funds, and then you can make the decision about any cancellations or refunds required later, with the Automated alert upon Order placement (section above) going a long way to helping you manage this.

However, we accept that some stores may favour less hassle over more rental Orders, which is why this feature is still planned, and why it will be optional for stores to turn it on.

A reminder that even with this, it will still be possible for double-rentals to occur (though far less likely), due to other timing issues and the Checkout issue.

Checking / Blocking Checkout

We've had some discussions with team members at Shopify and there's a possibility they will soon add a very small change which would allow us to properly block a Checkout if a Cart or Checkout is too "stale" (items added to Cart more than X minutes ago). We'll keep our fingers crossed this is added sooner rather than later, and if it does, we'll be right onto adding this feature into PRP!

If you have any other questions about this, feedback, or suggestions, please get in touch!

Last updated