-
Notifications
You must be signed in to change notification settings - Fork 0
Booking Flow
Book WaiveCar and Commence Rental.
-
user
navigates to FIND WAIVECARS -
on FIND WAIVECARS:
-
user
selects acar
:
1. `car` is available, goto 3
2. `car` is no longer available, show modal: `car is not available - OK`, goto 2.
-
on BOOK WAIVECAR:
-
user
selectsBOOK WAIVECAR
, goto 4. -
user
selectsX
, goto 2. -
Pre Booking:
-
if
user
has not verifiedphone
, includeVerify Phone
button and goto 5. -
if
user
has not verifiedemail
, includeVerify Email
button and goto 5. -
if
user
has not providedcredit card
, includeAdd Payment Method
button and goto 5. -
if
user
has not providedlicense
, includeAdd Driver's License
button and goto 5. -
if
user
has not verifiedlicense
, goto 6. -
if
user
haslicense
+credit card
+phone
+email
,
1. **`create booking with status : reserved`**,
2. start 15min timer (in API),
3. goto 8.
-
on MISSING INFORMATION:
-
user
selects VERIFY PHONE, goto TBD. -
user
selects VERIFY EMAIL, goto TBD. -
user
selects ADD DRIVER'S LICENSE, goto TBD. -
user
selects ADD PAYMENT METHOD, goto TBD. -
user
selects CANCEL BOOKING, goto 2. (NB. not actually cancelling anything) -
on DRIVER'S LICENSE VALIDATION:
-
user
selects VALIDATE LICENSE, goto 7 -
user
selects CANCEL BOOKING, goto 2. (NB. not actually cancelling anything) -
License Validation:
-
user
receives SMS: 'You're License has been verified, continue with WaiveCar', goto 2. -
user
receives SMS: 'You're License was not cleared for rental, please contact us on 555-5555 for more details.' end. -
on GET YOUR WAIVECAR:
-
user
selects GET DIRECTIONS, open default mapping app with address -
user
selects CANCEL, go to CANCL-BOOKING-CONFIRMATION,update booking { status : cancelled }
, goto 2. -
user
arrives at car, goto 9. -
user
takes more than 15 mins,
1. **`API automatically updates booking { status : cancelled }`**,
2. show modal: 'Booking has been cancelled due to 15mins elapsing. please re-book. OK',
3. goto 2.
-
on YOU'RE IN REACH:
-
user
selects UNLOCK, goto 10. -
user
selects CANCEL BOOKING,update booking { status : cancelled }
, goto 2. -
user
selects REPORT PROBLEM, goto TBD -
Car Automation:
-
API
update booking { status : started }
-
API remove 15min timer
-
API can unlock
car
, goto 11. -
API cannot unlock
car
, goto 14 (or a copy of 14 since it is re-used). -
on VIDEO:
-
user
selects SKIP, goto 12. -
on ARE YOU READY:
-
user
selects CONTINUE, goto 13. -
user
selects REPORT A PROBLEM, goto TBD -
Car Automation:
-
if API confirms key is out, unlock immobilzer, start timers, goto 15.
-
if API confirms key is in, show modal: 'Key is still in the Key Holder, OK', goto 12.
-
on CONNECTION FAILED:
update screen to show actual issue based on API response
-
user
selects CANCEL, goto TBD -
user
selects RETRY, goto 13. -
on DASHBOARD:
-
user
selects LOCK CAR, show modal / call API to confirm key placement? -
user
selects END RIDE, goto TBD -
user
selects (!), goto TBD -
user
selectslocation
(station, valet, or homebase), show location sub-view.
1. `user` selects SEE DETAILS, expand content area.
2. `user` selects HIDE DETAILS, collapse content area.
3. `user` clicks outside of content area, close location sub-view.