In a web application we have functionality that enables users to reschedule an appointment that they have previously booked, by clicking on a call to action/link on their summary page.
However, there are some business rules around this - we don't allow users to reschedule the appointment the day before their existing appointment after 12:00pm, so we need to inform the user they cannot change their appointment.
I see 3 options for handling error messages in this context:
- When the user clicks the link, then show an error message
- risks disappointing the user, as they expected to be able to change the appointment and now they can't
- Show the error message on page load, so the user knows they can't change the appointment, and disable the link
- risks annoying the user, as we are showing them a error message anticipating a journey which they didn't plan to do
- Hide the link when the business rules are met (ie past the 12:00 noon deadline) and the user can't do anything*
- user may be frustrated that they are unable to change appointment, and have no information to guide them as to why
Which approach, 1, 2 or 3 (or something else?) is the best user experience?
I am leaning towards option 2, but showing an 'error message' when only a proportion of users would be going to the page seems a bit counter-intuitive.