-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathworkflow.txt
More file actions
43 lines (42 loc) · 3.67 KB
/
Copy pathworkflow.txt
File metadata and controls
43 lines (42 loc) · 3.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Reservation Workflow:
Rules:
.Even if guest account is not confirmed we are still holding the reservation for a predetermined time (e.g., 24 hours) to allow the guest to confirm their account and make the payment.
If the guest fails to confirm their account or make the payment within this time frame,
the system will automatically cancel the reservation and notify the customer via email.
.There is no way to reserve a room that is already reserved for the same date range, ensuring that double bookings are prevented.
.Reservation status is always pending if there is no payment, and it changes to confirmed only after successful payment.
Payments can be via stripe via website or via cash at the hotel, but in both cases, the reservation status will only change to confirmed after payment is received.
.Guest account is locked until the guest confirms their account via email, ensuring that only verified accounts can make reservations and payments.
.If reservation created by Admin or Receptionist Reservation isGuestVisible is set to false
until the guest confirms their account, and change their password
.Guest has to change their password if they had the account created by Admin or Receptionist via randomPasswordGenerator.
Receptionist / Admin -->
creates a new reservation using information of the customer -->
enters customer information (name, phone number, email) with proper validations -->
system creates a guest account for the customer using the firstname + "randomSymbols" and randomPasswordGenerator -->
isGuestVisible is set to false until the guest confirms their account and change their password -->
system sends an email to the customer with account details and reservation information -->
assigning reservation status to "pending" -->
sending a confirmation email to the customer with reservation details and account confirmation link -->
customer clicks on the confirmation link -->
system verifies the link and guest account is created -->
if guest makes the payment before predetermined time -->
stripe taking the payment and sends a confirmation email to the customer
with payment details and reservation confirmation -->
sends an email to the guest with reservation confirmation and payment details -->
create a corresponding payment record in the database with payment details and link it to the reservation -->
if guest doesn't make the payment before predetermined time-->
system automatically cancels the reservation and sends a cancellation email to the customer with cancellation details
Guest -->
registers an account on the website -->
receives a confirmation email with account details and activation link -->
clicks on the activation link -->
system verifies the link and activates the account -->
logs in to the account -->
if guest makes the payment before predetermined time -->
stripe taking the payment and sends a confirmation email to the customer
with payment details and reservation confirmation -->
sends an email to the guest with reservation confirmation and payment details -->
create a corresponding payment record in the database with payment details and link it to the reservation -->
if guest doesn't make the payment before predetermined time-->
system automatically cancels the reservation and sends a cancellation email to the customer with cancellation details