Clictravel: integrating tour operators into a booking engine

Context

Clictravel sells holiday packages online. Its booking site needs package details, availability and prices from Italian tour operators including Alpitour, Eden, Ideal and Nicolaus.

The project covered two connected needs: automating daily imports of package information, availability and prices, and querying providers live when a customer searches.

The challenge

Each tour operator supplies data in a different format and uses its own access methods. The integration needed to turn those separate feeds into a consistent catalogue for the booking site.

We had to process large daily data volumes, keep information consistent between systems and maintain search performance. The architecture also needed to support additional providers without rebuilding the integration.

Approach

We reviewed the data flows and operational requirements with Clictravel’s technical team, then organised delivery into two workstreams.

Provider data integration. We built a .NET Windows application to download holiday packages daily. It stores raw data in MongoDB, then processes and normalises it through RabbitMQ events before writing it to the booking site’s SQL Server database. Automated tests check the data flows. This work involved two developers over four months.

Real-time booking engine. We built a .NET Web API that queries providers for availability and prices when a customer searches. Each provider has a dedicated gRPC service, keeping its connector and integration logic separate. This work involved two developers over two months.

We delivered the work in short Agile iterations with progressive releases alongside the existing production systems.

Solution and delivery

The architecture separates the daily data imports from live provider queries.

The main components:

  • .NET for both the integration application and the booking API.
  • MongoDB for temporary storage of raw provider data in document form.
  • RabbitMQ for asynchronous communication and distributed processing.
  • SQL Server as the central database for the booking site.
  • gRPC services for the per-provider connectors.
  • An integrated test suite for automated validation of the data flows.

The daily pipeline updates the catalogue automatically. The booking engine queries providers at search time for current availability and prices.

Results

  • Update times reduced from hours to minutes for the daily provider synchronisation.
  • 40% faster search and responses on the booking site.
  • Automated imports replaced manual package updates.
  • Live provider queries supply availability and pricing for online searches.
  • The connector structure supports adding more tour operators.

Clictravel moved from a semi-manual process to automated package updates and live provider queries. Separate connectors make individual provider integrations easier to maintain and extend.