woocommerce / woocommerce-accommodation-bookings

An accommodations add-on for the WooCommerce Bookings extension.
91 stars 31 forks source link

Check in date availability #257

Closed Zaffy-S closed 1 year ago

Zaffy-S commented 4 years ago

Let's say I make a reservation from 1st to 3rd of August. That means arrival on 1st and depart on the 3rd. 2 nights stay, which means for the 1st and the 2nd the room is not available for booking. The calendar shows as red (fully booked) only the 2nd of August. The check-in date (1st) is still green and says partially booked which is not correct (you cannot book it anyway). I think this is confusing. Hotels book per night. I think the check-in day should be also red and not available for booking.

edited to add: I used the latest version for the accommodation plugin (1.1.18) and for the woocommerce booking plugin (1.15.23)

MCKLtech commented 4 years ago

You can have a check-out on the same day as a check-in. Usually, you check out by midday and someone can arrive at 3 pm. This is why the 1st shows partially booked, someone can leave that day.

I agree, there should be an option for this behaviour, but it's actually right for the majority of use cases.

Zaffy-S commented 4 years ago

Hello and thanks for your reply. I do not agree that is right for the majority of the cases. It is right when you book your room by the hour. It is not right when you book by night. In my example above, 1st of August is not available. Not in hotels that book per night. So having the day in the calendars shown as green/available is wrong. There must be an option if you book your hotel per night or per hour. For us this is not usable at all. Clients see it green but they cannot book it anyway and they get confused.

f you check any decent webhotelier booking mechanism you will see that the arrival day it is not bookable, it is red.

MCKLtech commented 4 years ago

I'll give you another example.

Client A books from the 10th to the 17th.

Client B can book from the 3rd to the 10th, as they checkout on the morning of 10th and the Client A checks in during the afternoon of the 10th. Showing the 10th as available is correct as otherwise, Client B would have to check out on the 9th (As the 10th would be shown as 'fully booked' and not clickable) and I would lose the night of the 9th/10th.

Client C can book from the 17th to the 20th as Client A will checkout the morning of the 17th. Showing the 17th as available is correct or I would lose the night of the 17th.

I don't understand why, in your example, you would show the 1st as fully booked, and hence not selectable, when a client could check out that morning. You'd be losing a night every time you had a booking. The only time this makes sense is if you don't allow check-ins on the same days you checkout.

This is a live calendar from our system as it may highlight it better.

https://imgur.com/L0wce3j

There is checkout out the morning of the 11th and a check in the afternoon of the 15th. Therefore the 11th and 15th are selectable.

Zaffy-S commented 4 years ago

We are always talking about hotels that book per night and not per hour. ok?

You make a reservation from 1st to 3rd. You arrive on the 1st you leave on the 3rd. That means you you will stay the nights of the 1st and 2nd and you will depart before noon on the 3rd. That means that 1st and 2nd are not available for booking. But the 3rd is available because you leave before noon. This is how hotels work. And I know because I have worked in a hotel. The arrival day is always considered not available. The departure day is considered available for the next guest.

MCKLtech commented 4 years ago

"the 3rd is available because you leave before noon."

Why is the 1st not available then?

The 1st is available as a checkout day. It should be selectable as the last day of someone's holiday. If you block the 1st entirely, that means the booking prior must checkout on the 30th/31st. You're losing a night of business.

And yes, I'm talking about rooms/apartments that book per night. We've used this system for over 4 years.

Zaffy-S commented 4 years ago

I really cannot explain it otherwise... You have booked a room from 1st to 3rd. You arrive on the 1st, at noon. ok? you stay there for the rest of the day and night. How this room is available for another customer for the same day?

Zaffy-S commented 4 years ago

ok I get what you mean, someone to select the 1st as his check out day. Then maybe the whole booking thing should be about booking nights cause otherwise is just confusing.

MCKLtech commented 4 years ago

It is confusing, we have this conversation with clients a lot so I completely understand.

I see we both talked about this here a while ago: https://github.com/woocommerce/woocommerce-accommodation-bookings/issues/201

I think a key difference is that my clients deal with apartments so each apartment has its own calendar.

Zaffy-S commented 4 years ago

We have deactivated the accommodation bookings plugin and we just use the bookings one, but we do point to guests that they book nights and they do not choose arrival and departure day. At least this way the availability looks correct in the calendar.

cogno commented 3 years ago

I've been thinking about this issue quite a bit because the functionality doesn't work for us our our guests either, and it's really fustrating because it's so close... but I get what everyone is saying about the challenge. I'm not a coder, so I don't know how practical the solution would be, but what if the datepicker calendar only showed days available to check-in until the check-in date was selected, and then used a little js magic to swap the styling to only show available check-out days? Rather than awkward iconography like the triangle marked days, it would be really clear... you can check in on green marked days and then you can also only check out on green marked days (after the styling swap). Just my two cents... wish I had the skills to help code a solution.

ankitguptaindia commented 1 year ago

This issue is fixed by PR https://github.com/woocommerce/woocommerce-accommodation-bookings/pull/303 (WIP)