P-YLX: airport transport to Montréal-Trudeau
Personalized airport transport service operating in Montréal and the Laurentians. Pierre-Yves took every booking by phone — we shipped a bilingual platform, an operator dashboard, and automated confirmations.
P-YLX took every booking on the phone. A typical request ran about five hours of back-and-forth: callbacks, checking a driver's availability, sending a confirmation email, updating the calendar. For a 24/7 airport service, it didn't scale.
No internal tool tracked the state of a booking. Confirmations went out from a personal inbox. Cancellations got lost. From the customer's side, the only answer was "call us back tomorrow."
The breaking point: a customer was stranded at the airport because a booking slipped between two phone calls. Once is enough to learn that the phone, alone, doesn't hold the line.
We were spending our days confirming things that were already confirmed.
— PY Clément, owner
- 01Bilingual public site with booking formThree-step funnel (date · trip · confirmation). Address selection on Google Maps, client-side validation, email fallback. FR/EN switch without reload. Intro videos and client reviews on the landing page.
- 02Operator dashboardCalendar view + filterable submissions table. In-place editing. One-click confirm or cancel, with automated email to the customer. JWT auth, activity log, rate limiting on the public API.
- 03Automated confirmations and remindersTransactional email sent via Resend the moment a booking is confirmed. Hand-built HTML templates, FR or EN per customer. Verified domain, SPF/DKIM in place, no personal inbox in the chain.
- 04Google Calendar syncEvery confirmed booking creates an event in the assigned driver's shared calendar. Edits in the dashboard propagate automatically. The team on the road sees their runs in their phone — no extra step.
- 05Hosting and deploymentSite and dashboard deployed on Railway, managed MongoDB, automatic certificates. Multi-stage Docker pipeline. The p-ylx.com domain is wired with transactional email and a secure redirect.
At launch, the form became the main booking channel. The phone is still there for edge cases — by design. Average booking handle time dropped from hours to about ten minutes on the operator side.
Operations scaled from one driver to ten without hiring admin, because every new driver simply joins the shared calendar. Confirmations send themselves. Cancellations leave a trail. Nobody gets stranded at the airport anymore.
We got our Monday mornings back.
— PY Clément
- Ship the operator dashboard the same week as the public form — otherwise the team falls back to the phone out of habit.
- Transactional emails carry half of perceived quality on the customer side. Polishing them is free.
- Bilingual on day one, not in phase two. Reworking a UI for two languages costs twice as much after the fact.