Valet65 iOS
Streamlined valet parking with an iOS app and QR code ticket.
Objective:
Create a brand and product that embodies Valet65's mission—transforming the user experience of car valet services for customers, valets, and valet businesses.
Design
Justin Alm
Dev:
Jeremy Chiang
Nigel Brooke
PM:
Allen Pike
Status:
Sunset
The customer’s problem
Valeting your car can be frustrating—even though it’s a luxury. You need cash to pay and tip your valet but society is increasingly cashless. Waiting is painful. Before queuing to pickup your car, you spend 5-10 minutes wrangling your kids and belongings. Then you wait outside for another 5-20 minutes in 30 degree heat. Hot climates help valet companies succeed.
The valet company’s problem
Managing a valet business is difficult. Often, valet companies operate on antiquated systems. I mean, cash only??? Too often payments and tips slip into the valet’s pocket instead of the company bank account. The company doesn’t have visibility into their locations to understand who’s working, the number of cars parked at a time, revenue collected, and tips shared.
The solution
We streamlined the management of valet parking and improved the experience for customers in two key ways: we allowed for payment on the user’s smartphone rather than in cash and we created a virtual line up system, where users can notify the valet a few minutes in advance of when their car is needed. For the system to work, we built these five elements:
An identity and brand to bring consistency across the system.
A consumer smartphone app for paying the valet and requesting your car.
A valet management app for valets to use.
A scannable printed ticket for the customer and valet to scan.
A hosted online service to tie the previously mentioned services together and provide the valet companies visibility into transactions.
Identity and brand
To kick off the project, I developed Valet65’s identity and brand. I presented 3 directions for Valet65 to choose from. They selected the first because it most closely aligned with the tastes of people who typically valet their car. This clear direction for Valet65’s identity paid off as we built out the system.
Architecture
Before starting in on any wireframing or visual design, I mapped actions and decisions a person would make to complete goals. This gave me an inventory of design needs. With this high-level architecture mapped out, I was then able to start wireframing screens. The following is a deep dive into the user experience for the consumer and company apps.
Consumer app
Scan ticket
The QR code scanner is the first thing you see when opening the app. You hover your phone over a QR code. When the scan is successfully, you are taken to the home view. If the QR code is invalid, an error is appears.
Request your car
To request your car, tap the “Request Your Car” button on the home view. Allow push notifications from Valet65 and select when you want your car. You’re then taken back to the home view where the “Request Your Car” button now displays an “Arrives in ...” countdown.
Payment
On the home view, tap the “Pay Your Valet” button. Then enter your credit card information and tap submit. You’ll see a summary with the total. After you “Confirm payment”, you’re taken back to the home view. The “Pay Your Valet” button updates to “Paid”. We used Stripe for security and to speed up future transactions with stored credit card info.
Notifications from the valet
You recieve notifications from the valet when your car is on the way or ready. This way you don’t have to open Valet65 again after you’ve paid and requested your car. The “Arrives in ...” button changes to “Arrived” when your car is ready for pickup.
On the way
Car’s ready
Scan a new ticket
The app resets to the QR code scanner after the valet closes out your transaction. You can scan another ticket any time by tapping the “Scan a new ticket” button on the home view.
Company facing app
For design of the company facing app, we used stock iOS 7 components because it isn’t customer facing.
Scan ticket
After logging into the Valet65 enterprise app, you see the “Cars In Queue”. To add a car to the queue, tap the “+” button and scan the QR code on the ticket. The “Add Details” view appears. Add a note with details about the car.
Photograph the car
Take a photo of the car to protect yourself from any liability issue.
Liability check and adding the car to the queue
After doing some beta testing with Skyline Valet—a Vancouver valet company—we added a “Liability Check” feature. This is a 1-tap way for the valet to be protected from any liability while the car is parked. Tap “Done” and the car is added to the “Cars In Queue”.
Notifications from customers
When a customer requests their car, you receive a push notification with the who, what, where, and ticket number of the car being requested. Tap “View Details” on the notification to see the car details in Valet65.
Car details and notifying customers
Tap on one of the “Cars In Queue” to see the car details. Tap “Car is on the way” or “Ready for pickup” to send a push notifications to the customer—letting them know you’re on the way or their car is ready.
Finding a car in a long queue
To find a car in a long queue, rescan the ticket by tapping the “Scan” button. When the scan completes, the car details appear.
Close out transactions
To clear completed cars from the “Cars In Queue”, tap the “Close Out” button in the car details. Confirm the “Close Out” on the action sheet.
Sharing a phone with another valet
Employees can log out when on a break or end of shift and share the phone with their coworker. The log in and log out data is also available to the company on the admin site.
Scannable printed ticket
Physical characteristics
I designed the tickets to be slightly oversized(2.75" x 7") so customers could easily find their stub burried deep in their purse. The ticket has 2 horizontal perforations for easy separation. The valet keeps the top half and customer keeps bottom half.
Structure of URL for QR codes
Valet tickets were printed using variable data printing. Big words, eh? Essentially, this means we could dynamically generate new QR codes for the tickets, which pointed to the “digital ticket” on the Valet65 servers.
The system for generating the QR codes had to scale along with the web service. Tickets were printed in batches for valet companies so the company ID number doesn’t change as often as the individual ticket number. Before the ticket number we inserted an random set of 8 numbers and characters. Without this a hacker could request someone’s car by generating a QR Code on the internet.