Trip Support — Building the Booking Platform for a Canadian Online Travel Agency

Trip Support is a Canadian online travel agency that sells flights, hotels, vacation packages and travel insurance to customers in Canada and the US. From 2019 to 2022 I was its fractional CTO through my company, Momentaj. We designed and built its booking platform end to end. I also hired the in-house team that took it over.

At a glance

  • My role: Fractional CTO & Chief Architect, through Momentaj
  • Years: 2019–2022
  • Client: Trip Support, an online travel agency serving Canada and the US
  • Team: I started on my own and grew the team to 14 people across development and technical support
  • Products: flights, hotels, vacation packages, travel insurance, guided tours, and Buy Now, Pay Later
  • Markets: Canada and the US, in Canadian and US dollars, in English and French

The challenges

  • Competing on price with much larger players. The same flight or hotel room is for sale on every travel site, and margins are thin. Trip Support needed fares from several sources at once, and precise control over how each one was priced.
  • Fragmented supply. Flights, hotels, vacation packages and insurance each come from different suppliers. Each supplier has its own protocol, from Amadeus’s XML web services to modern REST APIs, and its own data and booking rules. The same hotel shows up under a different ID at every wholesaler.
  • Prices that change while the customer decides. Fares and room rates move by the minute. A price shown on the search page has to be checked again before the customer pays, and any change has to be shown plainly.
  • Two markets, two currencies, two languages. One platform had to serve Canadian and US customers, in Canadian and US dollars, in English and French.
  • Payments in a high-fraud category. Online travel bookings are a common target for card fraud. At the same time, customers wanted more flexible ways to pay for a big trip.
  • Selling by phone as well as online. Agents needed to search, book and service every product for customers, and to follow up with people who started a booking online but didn’t finish it.
  • Starting from zero. There was no technology team. The platform and the team had to be built at the same time, and later handed over without disrupting the business.

What we built

The platform is organized around its product lines: flights, hotels, vacations, insurance, and orders and payments. Customers book on it online, and agents use it from the back office.

  • Flights. Searches run in parallel across Amadeus, through GDS and consolidator offices in Canada and the US, and come back as one list of results. The flight side covers flexible-date fare calendars, fare rules, and a live price check before payment. It also handles booking, holds, ticketing and cancellations. Configurable pricing rules let the business adjust markups without a software release.
  • Hotels. Live rates come from Hotelbeds and RateHawk. Vervotech’s hotel mapping merges them, so each property appears once with its best offer first. Vervotech also supplies descriptions and photos, and TrustYou supplies guest reviews. Pages show a map, and prices are converted into the customer’s currency using official daily exchange rates.
  • Vacation packages. Through SoftVoyage, customers could book all-inclusive packages from tour operators that sell in Canada, including Sunwing, Air Canada Vacations, Transat, WestJet Vacations, Sunquest and Club Med. A best-price calendar and deposit options were part of the booking flow.
  • Travel insurance. Manulife travel insurance is quoted and sold alongside flights. Policy changes and refunds are handled in the platform.
  • Buy Now, Pay Later. We built an installment plan in-house. Customers could lock in a trip with a deposit and pay the rest in scheduled installments before departure. The platform takes each installment automatically, sends reminders and payment links, and flags overdue payments for the accounting team.
  • Payments. One payment layer serves every product in both currencies. It connects to Moneris and Stripe, and integrations were also built for Bambora and Global Payments. It supports 3-D Secure and saved cards, and it verifies that the customer owns the card to cut down on fraud.
  • Back office for agents and staff. Agents can search and book every product for a customer. They can also reprice and service existing bookings, and move an order onto a pay-later plan. Staff manage orders, PDF invoices, customer records, payments and reports, coupons and campaign codes, and email templates. Access is role-based, and every order keeps a full change history. Bookings that customers start online but don’t finish become leads for the sales team. New customers are added to Freshdesk automatically, so the support team works from the same records.
  • For customers. Every product can be booked and paid for online, and customers can see their bookings and payment schedules in their accounts. The in-house team I hired later added two things on top of the platform. One is a bilingual search box for flights, hotels, vacations and tours, packaged as a web component so it can be placed on any page of the marketing site. The other is a new customer booking site.

Tour packages & trip planning

Alongside the booking platform, we built a separate product for multi-day guided tours:

  • Tour catalog. Tours have day-by-day itineraries, highlights, inclusions, and the places travelers will see. Customers can filter them by travel style, physical rating, group size, guide type and language.
  • Departures and booking requests. Each tour lists its departure dates, with prices by room occupancy and choice of accommodation, and customers can send a booking request online.
  • A portal for tour operators. Operators log in to manage their own tours, itineraries and departures.
  • Tours from Bókun. Bókun tours sit alongside Trip Support’s own catalog and also appear in the main site’s search box.
  • “Tailor My Plan.” Customers describe the trip they have in mind, and the request goes straight to Trip Support’s travel team. A newsletter sign-up is part of the same product.

Integrations

  • Flights: Amadeus
  • Hotels: Hotelbeds (Bedsonline), RateHawk, Vervotech (hotel mapping and content), TrustYou (reviews)
  • Vacations: SoftVoyage, connecting a dozen tour operators
  • Tours: Bókun
  • Insurance: Manulife
  • Payments: Moneris, Stripe, Bambora, Global Payments
  • Customer support: Freshdesk
  • Email: Mailjet
  • Maps: Google Maps

My role

I was Trip Support’s fractional CTO from 2019 to 2022, through Momentaj, which developed the whole system. I owned its technology end to end: the platform’s architecture, every supplier and payment integration, and delivery.

I stayed hands-on the whole time. I wrote and reviewed code for flight booking and ticketing, payments and Buy Now, Pay Later, and the hotel integrations.

When I started, I was the only engineer, and I grew the team to 14 people across development and technical support. Along the way I hired Trip Support’s own in-house team and handed the platform over to them. That team kept building on it, starting with the search box and the new customer booking site described above.

Outcome

  • One platform for flights, hotels, vacation packages, travel insurance, guided tours and Buy Now, Pay Later, in two currencies and two languages
  • 15 third-party integrations, plus a dozen tour operators through SoftVoyage
  • A team built from one person to 14, and a handover to Trip Support’s own in-house team

Stack

C# · .NET / ASP.NET Core · MongoDB · REST and SOAP/XML web services · OpenAPI · TypeScript · Svelte · SvelteKit · Angular · Web Components (Angular Elements) · Bootstrap · Tabler · Tailwind CSS