Checkout protection
Two customers can look at the same free day at once. DueBack makes sure only one of them gets it: dates are held when they go into the cart, and a check at checkout refuses dates that are full, invalid or missing their deposit.
Turn it on
The check is turned on for you when you save your first rental product. Its status is under Settings → Checkout protection, on the Rental date check card: On, Turned off or Not set up. Click Turn on or Set up now if it isn't on.
What it checks
At each checkout step, every rental line must have:
- dates chosen in the date picker, unchanged since they were added;
- a start date that still respects your minimum notice, and an end date inside Book up to;
- days that are not fully booked;
- your rental terms accepted;
- a deposit line with the same quantity, when the product has a deposit.
A deposit line without its rental is refused too.
What customers see
Checkout shows a message and the customer can't pay until they fix the cart, for example:
- Choose rental dates for Silk gown on its product page, then add it to the cart again.
- Silk gown is no longer available from 14 Nov to 16 Nov. Remove it and choose other dates.
- The deposit for Silk gown is missing. Remove it and add it again from its product page.
- Accept the rental terms for Silk gown on its product page, then add it to the cart again.
How it knows what's booked
Checkout can't call DueBack directly, so DueBack keeps a list of fully booked days on each rental product (in an app metafield). The list is refreshed within about a minute of every change, and every product is refreshed again at least twice a day. It covers the next 180 days or so.
The list counts bookings and blocked dates. Dates held in other carts aren't in it: those are protected by the 30-minute hold when the customer adds to cart.
If the check fails
If the check itself errors, Shopify lets the order through rather than stopping a sale. DueBack still books the order and flags any clash as a conflict on Home. See Bookings.
Orders that skip checkout
Orders from POS, draft orders and order edits don't go through the online checkout, so the check doesn't run. DueBack still books them; if their dates are full, the booking is marked as a conflict and you get an email.