Booking cancellations

Created on 29 May 2024, 7 months ago
Updated 3 June 2024, 7 months ago

Problem/Motivation

When someone makes a booking, it happens from time to time that customers want to cancel it.
By implementing the following process, we would simplify booking cancellations, reduce manual intervention, and empower users to manage their reservations efficiently.

Proposed resolution

When a user makes a booking, the system automatically generates a simple unique hash.
This hash is associated with the booking details (e.g., submission ID, date, etc.).

Sending a Confirmation Email:

After a successful booking, the module sends the user a confirmation email.
The email includes the unique hash as part of the cancellation link.

Cancellation Process:

When a user wants to cancel their booking, they click on the cancellation link.
The link directs them to a specific URL (e.g., https://yourwebsite.com/cancel?hash=unique_hash).

Module Handling:

Upon accessing the cancellation link, a function extracts the hash from the URL and looks up the booking associated with that hash.
Relevant information (such as booking details) is displayed to the user.
A confirmation button for cancellation is provided.

Email Notification:

The system sends an email to the user to confirm the cancellation.
In this email, we need a link with a more complex Hash (e.g., using a secure hashing algorithm like SHA-256) This Link should have an expiration time for added security as well.

Cancellation Confirmation:

If the user confirms the cancellation, we mark or delete the booking from the submissions.
The booking slot becomes available for others to use.

Feature request
Status

Active

Version

1.0

Component

Code

Created by

🇩🇪Germany hewi1345 Flensburg

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @hewi1345
  • 🇩🇪Germany Sajara

    This feature is of very high importancy for me, too (busyness use). please put an eye on it.

  • 🇩🇰Denmark ressa Copenhagen

    @Sajara: Remember that Drupal is open source, and run by volunteers, offering their time and services for free.

    You and @hewi1345 could consider sponsoring @rfmarcelino to build this feature?

  • 🇵🇹Portugal rfmarcelino

    Dear @hewi1345 @Sajara
    Thank you for your feedback.
    There are several implications to consider.
    The email content usually needs to be customised and a generic solution may not work well for most use cases.
    The simplest approach, since Webform already allows to configure emails, would be to provide a token for the cancellation URL.
    That would allow to embed inside a custom confirmation email.
    A controller would get that cancellation request and remove the value from the submission.
    Currently, the cancellation is deleting the field content. In terms of auditing, it's not great. It would be probably better to have a hidden 'Canceled' status.

    As @ressa just mentioned, we are volunteering our time. We have a set of weekly contribution hours. If you need a specific feature within a specific timeframe, feel free to reach us.

Production build 0.71.5 2024